synopsys笔试题

来源:百度文库 编辑:神马文学网 时间:2024/04/27 15:45:44
, 给出指针的数据类型
a,float (**p)[10]
b, double *(*p)[10]
c, 记不清了,大概是 char *(*p)()之类的
d, int  *((*p)[10])
2,给出进程间通信的方法
3,给出程序执行结果
a void func(char **p, int num)
{
*p = malloc(num);
}
main()
{
char *p=NULL;
func(&p, 100);
strcpy(p,"blabla");
printf("%s",p);
free(p);
}
b  main()
{
char *p=NULL;
p = malloc(100);
strcpy(p,"blabla");
free(p);
printf("%s",p);
}
4,a,一个正整数序列,值最大不超过K,没有重复项,给出排序算法
b,如果有重复项,需要对排序算法做何改动
c,证明算法最坏情况下复杂度为O(N)
d,给出算法的空间复杂度
5,给出二叉树中序遍历算法,包括数据结构和函数实现
6,设计一个model,满足下列条件
a,分为test group 和develop group两部分
b,develop group是test group的3倍
c,要求能够并行处理,比如develop 2nd的时候,可以test 1st
d,任何形式的设计都可以
7,描述多线程程序的并行处理
8,dy/dx=y  y(0)=1 求 x=0.4
a h=0.2 h=0.1 分别计算y(0.4)
b 根据误差和h成正比的公式,计算出h=0时的y(0.4)
c 要达到和b同等精度,需要迭代计算多少次(?)
9 比较两套程序写法哪个好,为什么
a
(1)   for(i=1;i{
a = i + b + c * j;
printf("%d",a);
}
(2)  a = b + c * j;
for(i=1;i{
printf("%d",a+i);
}
b   char a
(1)   if(a==‘A‘) ....
(2)   if(‘A‘==a) ....
10,给出表达式的树结构表示 black=red+green×7+blue