集合。所以,类是对象的抽象,它描述了属于该对象类型的所有对象的性质,而一个对象则是其对应类的一个实例。
(3)诊断和改正程序中错误的工作通常称为___【3】___.
答案:【3】程序调试
评析:程序调试的任务是诊断和改正程序中的错误。它与软件测试不同,软件测试是尽可能多地发现软件中的错误。先要发现软件的错误,然后借助于一定的调试工具去找出软件错误的具体位置。软件测试贯穿整个软件生命期,调试主要再开发阶段。
(4)在关系数据库中,把数据表示成二维表,每一个二维表称为___【4】___。
答案:【4】关系
评析:在关系数据库中,把数据表示成二维表,而一个二维表就是一个关系。
(5)问题处理方案的正确而完整的描述称为___【5】___。
答案:【5】算法
评析:所谓算法是指解题方案的准确而完整的描述。
(6)以下程序运行时,若从键盘输入:10 20 30,输出的结果是___【6】___. #include main()
{ int i=0,j=0,k=0;
scanf(―%d%*d%d‖,&i,&j,&k);
printf(―%d%d%d\n‖I,j,k); }
答案:【6】10300
评析:在scanf格式控制符中,如果在%后有一个―*‖附加说明符,表示跳过它指定的列数。本题中――%d%*d%d‖‖表示将10赋给i,%+d表示读入整数但不赋给任何变量,然后再读入整数30赋给变量j,那么变量k并没有重新赋值,仍为初始值0。所以输出的结果为10300。
(7)以下程序运行后的输出结果是___【7】___。
#define S(x)4*x*x+l main()
{ inti=6,j=8;
printf(―%d\11″,S(i+j)); }
答案:【7】81
评析;带参数的宏定义是按#define命令行中指定的字符串从左到右进行转换。本题中替换的式子为:4*i+j*i+j+l,代入i,j的值得81。
(8)以下程序运行后的输出结果是___【8】___。 main()
{ int a=3,b=4,c=5,t=99;
if(b
if(a printf(―%d%d%d\n‖,a,b,C); } 答案:【8】4 5 99 评析:本题需特别注意的是―;‖的问题,不能把―t=a;a=c;c=t;‖误认为是第一个if的语句,实际上,只有―t=a;‖才是第一个if的语句。 (9)以下程序运行后的输出结果是___【9】___。 main() { int a,b,c; a=10;b=20;c=(a%b1); printf(―%d %d %d\\n‖,a,b,C); } 答案:【9】10 20 0 评析:本题中―(a%b1)‖的运算顺序为先算括号→算术运算符→关系运算符→逻辑运算符。其中a%b=10,a/b=0,所以a%bl值也是0,故整个表达式的结果为0,所以输出的a,b,c的值为10 20 0。 (10)以下程序运行后的输出结果是___【10】___。 main() {char c1,c2; for(c1=‘0‘,c2=‘9‘;c1 printf(―\n‖); } 答案:【10】0918273645 评析:本题程序的作用是通过for循环将0-9这10个数字从前向后,同时也从后向前依次输出。 (11)已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33, 则输出结果是_____。 #include main() {chara,b; a=getchar();scanf(―%dt‖,&b); a=a-‘a‘+‘O‘;b=b*2; printf(―%c%c\n‖,a,b); } 答案:【11】1 B 评析:c语言使字符型数据和整型数据之间可以通用。题中执行―a=getchar();‖后,a的值B,在内存中的表现形式为ASCII码66;执行―scanf(―%d‖&b);‖后,b在内存中的表现形式为33,然后经过―a=a-?A‘+?0‘;b=b*2;‖运算,得出a的值为字符?1‘,b的值为ASCII码66,最后以字符型输出为l B。 (12)以下程序中,fun函数的功能是求3行4列二维数组每行元素中的最大值。请填空。 void fun(int, int, int(*)[4],int *); main() { int a[a][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i; fun(3,4,a,b); for(i=O;i<3;i++) printf(―M‖,b [i]); printf(―\\n‖); } void fun(int m,int n, int ar[][4],int *br) { int i,j,x; for(i=O;i ( x=ar[i][0]; For(j=O;j