- 博客(0)
- 资源 (5)
- 收藏
- 关注
基于VC的示波器动态仿真软件设计
实现了对信号发生器和双踪示波器的动态仿真,
实现了四种波形(正弦波、方波和两种锯齿波)的产生和显示。借助仿真信号发
生器旋钮动态连续改变波形的三种参数,可以仿真示波器上进行显示;还可以用
量程旋钮跳跃改变波形的量程以及显示。本设计实现了两种仪器主要功能的仿真,
其中波形的无闪烁变化,控件之间的数据传递问题和一些旋钮动态效果的实现,
是本文较为重要的研究开发内容。
2012-05-31
#include
#include
#include
#include
#include
typedef struct matrix
{
int row;
int col;
} matrix;
typedef struct minCost
{
int cost;
int mid;
} minCost;
minCost** func(matrix* mt, ssize_t count)
{
int i, j, step, min, temp, mid;
minCost **rows;
rows = (minCost **)malloc(count*(sizeof(minCost*)));
for(i=0;i<count;i++)
rows[i] = (minCost *)malloc((count-i)*sizeof(minCost));
for(i=0;i<count;i++)
{
rows[i][0].cost=0;
rows[i][0].mid=-1;
}
for(step=1;step<count;step++)
for(j=0;j<count-step;j++)
{
min=mt[j].row*mt[j].col*mt[j+step].col
+rows[j][0].cost+rows[j+1][step-1].cost;//__page_break__
mid=j;
for(i=1;itemp)
{
min=temp;
mid=j+i;
}
}
rows[j][step].cost=min;
rows[j][step].mid=mid;
}
printf("%d, %d\n", rows[0][count-1].cost, rows[0][count-1].mid);
return rows;
}
int rel(minCost **mc, ssize_t count)
{
int i;
for(i=0;i<count;i++)
free(mc[i]);
free(mc);
}
int main(int argc, char *argv[])
{
minCost **temp;
matrix ma[]={{30,35},{35,15},{15,5},{5,10},{10,20},{20,25}};
temp=func(ma, sizeof(ma)/sizeof(ma[0]));
rel(temp, sizeof(ma)/sizeof(ma[0]));
}
2009-06-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人