第一部分,不定向选择
第二部分,填空题
1. 什么是uml?分哪两类?
2. os一般的两种进程调度策略
3. 进程间的四种通讯方式
4. 一棵二叉树的前序,中序,后序遍历结果
第三部分,问答题
1. 通常递归所采用的数据结构?递归和循环的区别?
2. 将一个单链表逆序。
3. a,b,c,d四个进程,a向一个缓冲区写数据,b,c,d从该缓冲区读数据,a要等到b,c,d都已经读好才能写下一个。用p,v操作实现通讯。
4. c 程序写运行结果。
class a
{
public:
void f1()
{
printf("a::f1\r\n");
}
virtual void f2()
{
printf("a::f2\r\n");
}
void callfunc()
{
printf("a::callfunc\r\n");
f1();
f2();
}
};
class b :public a
{
public:
void f1()
{
printf("b::f1\r\n");
}
void f2()
{
printf("b::f2\r\n");
}
void callfunc()
{
printf("b::callfunc\r\n");
f1();
f2();
}
};
int main()
{
b *pb=new b;
pb->callfunc();
a *pa=pb;
pa->callfunc();
return 0;
}