11月8日
软件开发工程师笔试题
//神州数码网络公司
第一部分选择:
1-下列总线接口哪个不是PC的外围扩展总线
a、ISA总线上
b、CPU局部总线上
c、PCI总线上
d、EISA总线上
2-哪一种情况适用现行链表的链式存储
a、大量数据,大量随机读
b、大量数据,大量插入和删除
c、大量数据,大量的随机写入
3-数组Q[1——m]表示的环形队列,f为当前队头在数组中的位置,r为队尾的后一
位置 顺时针,则队列的元素个数为:
a、r-f
b、m+r-f mod m
c、m-r+f mod m
d、m-r-f mod m
4-CMM模型软件成熟度5级排序。
CMM1 初始级
CMM2 可重复级
CMM3 已定义级
CMM4 已管理级
CMM5 优化级
5-二分法查找11顺序表{3 6 8 10 12 15 16 18 21 25 30},需要进行几次关键值比
较
a、2 b、3 c、4 d、 5
第二部分简答:
1、在多任务操作系统中,进程的状态ready, run, pend, zombie的含义和相互的
迁移条件。
2、VC++中,如何调用操作系统的函数。
3、TCP/IP模型中,画出分层协议并解释。ARP是什么作用。
4、双向循环链表,删除两个链表data值相同的结点。写程序。
5、不改变其他位的值,写一段程序分别将char型变量a的bit3置位和复位。
第三部分编程:
1、改错
char *string_test()
{
char *a="1234567890";
char c[10];
int *b;
b=malloc(sizeof(a));
strcpy(b,a);
strncpy(&c,a,10);
printf("%s/n",c);
return b;
}
main()
{
char *b=string_test();
printf("%s/n",b);
return;
}
参考答案:
char *string_test()
{
char *a="1234567890";
char c[11];
char *b;
b=(char *)malloc(strlen(a)+1)