首页 > 编程资源分享区 > C/C++测试题 > 全国2006年4月高教自考计算机基础与程序设计试题(二)
2006
11-10

全国2006年4月高教自考计算机基础与程序设计试题(二)

二、多项选择题(本大题共5小题,每小题2分,共10分)
在每小题列出的五个备选项中有二至五个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。


21. 总线是连接微机CPU、内存和外设之间传送信号的公共通道,微机的总线包括有
(      )
A. 电源线     B. 数据线
C. 地址线     D. 控制线
E. 网络线


22. 若定义 char c[11]; 可将字符串″I am a boy″ 赋给数组c,下面正确的选项有
(      ) 
A. c=″I am a boy″;     B. getchar(c);
C. gets(c);     D. scanf(″%s″,c);
E. for(i=0;i<10;i++) scanf(″%c″,&c[i];c[10])=\’\\0\’;


23. 若有如下定义和语句,则能正确表示数组a首元素地址的表达式有(      )
int  a[10], *p;
p=a;
A. a[0]     B. a
C. p+1     D. p
E. *p


24. 设有说明:int  x=1, y=3; 下面表达式的值为2的有(      )
A. y&~x     B. x^y
C. x|y     D. y|x>>1
E. x<<1|y>>2


25. 在C语言中,关于符号FILE下面说法正确的有(      )
A. FILE是C的关键字
B. FILE表示一种关于文件参数的结构体类型
C. FILE表示一种关于文件参数的结构体变量
D. FILE*可以用来说明文件指针
E. 文件指针指向的变量的数据类型是FILE


三、简答题(本大题共4小题,每小题4分,共16分)


26.C语言中如何表示”真”和”假”?系统如何判断一个量的”真”和”假”?


27.什么是”直接递归调用”?什么是”间接递归调用”?


28.判断下面两程序段正确与否,并说明原因。
(1)char  str[12];  str=″program″;
(2)char *str;  str=″program″;


29.设有说明:
struct language {long spearer; char country[20];} chinese;
试写出对chinese的成员spearer和country分别赋值1250000000和”China”的C语句。


四、阅读分析题(本大题共6小题,每小题5分,共30分)


30.阅读下面程序,写出运行结果(已知A的ASCII码为65,a的ASCII码为97)。
#include ″stdio. h″
main( )
{  int k=100;char m;
m=k; putchar(m);
printf(″,%d,%c,%o, ″k,m-32,m);
}


31.阅读下面程序,并回答问题:
main()
{  int x, y, z, c;
   scanf(″%d%d%d″,&x, &y, &z);
   if(x<z){c=y; y=z; z=c;}
   if(x<z){c=x; x=z; z=c;}
   if(x<y){c=x; x=y; y=c;}
   printf(″%d, %d, %d″, x, y, z);
}
(1)若程序运行时,输入3、2和5,则输出结果是什么?
(2)写出程序所实现的功能。


32.阅读下面程序,并回答问题:
main( )
{  int  m, n;
m=65;
n=14;
while(m!=n)
{  while(m>n)m-=n;
   while(n>m)n-=m;
}
printf(″m=%d\\n″, m);
}
(1)程序输出结果是多少?
(2)外循环执行完一次时,m和n的值分别是多少?
(3)将while(n>m)n-=m;语句删除后,程序运行情况如何?


33.阅读下面程序,并回答问题:
gcd(int x, int y)
{  int  temp;
   while (y){temp=x%y; x=y; y=temp;}
   return x;
}
main()
{  int  a, b, y;
   scanf(″%d, %d″, &a, &b);
   y=gcd(a,b);
   printf(″最大公约数是:%d″, y);
}
(1)gcd函数的返回值类型是什么?
(2)若将return x写成return y会得到什么样的结果?


34.阅读下面程序,写出运行结果。
mian( )
{  char * str[ ]={″Pascal″, ″C Language″, ″Dbase″, ″Cobol″};
   int k;
   for(k=0; k<4;k++)
   printf(″%s\\n″, str[k]);
}


35.阅读下面程序段,写出输出结果。
struct num
{  float f1;
   int j;
}u={5.6,8},*p=&u;
printf(″%.2f,%d\\n″,u.f1, u.j);
printf(″%.2f,%d\\n″, (*p).f1,p->j);


五、程序设计题(本大题共2小题,每小题12分,共24分)


36.若有n行n列数组,试编写一程序,分别求出两条对角线元素之和。(从键盘输入n*n个整型数,n≤20)


37.若在c:\\tclt路径下有一个名为zz.dat的文本文件,它包括10个按升序排列的整数,且每两个数之间用逗号隔开,现要插入一个整数使该序列仍保持升序,并把新序列写入到c:\\tclt路径下名为zzz.dat的文本文件中。


全国2006年4月高教自考计算机基础与程序设计试题(二)》有 2 条评论

  1. hiroki 说:

    各种硬件啊

留下一个回复