-> -> ->
2010年全国计算机等级考试标准预测试卷(三)二级公共基础知识和C语言程序设计(四)
时间:2011-02-16 21:54:09
微信搜索关注"91考试网"公众号,领30元,获取事业编教师公务员等考试资料40G
,a=a+2=13,a=a+3=16,当i=4时,执行default,a=a+3=19,结束循环。----------------------------------------20、有以下程序:main(){int x,i;for(i=l;i<=50;i++){x=i:if(x%2=0)if(x%3=0)if(x%7=10)print{("%d",i);}}输出结果是( )。 A.28B.27C.42D.41 参考答案: C 只有当3个if条件同时成立,即能够同时被2、3、7整除时,才输出i的值,而从0到50能够同时被2、3、7整除的数只有42,故选择C选项。----------------------------------------21、以下程序的输出结果是()。main(){int a[3][3]={{1,2},{3,4),{5,6}),i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%d\n",s); A.18B.19C.20 D.21 参考答案: A 循环的作用是求行下标从1到2列下标从0到i的元素之和,即s=a[1][o]+a[1][1]+a[2][o]+a[2][1]+a[2][2]=3+4+5+6+0=18。----------------------------------------22、有下列程序main(){int k=5;while(--k) printf("%d",k=3);printf("\n");}执行后的输出结果是( )。 A.1 B.2 C.4 D.死循环 参考答案: A 在程序语句中,k的初始值为5,进行第1次while循环后,k自减1为4,非0,执行循环体里的printf语句,输出i,此时k的值变为1。程序执行第2次循环时,k自减1交为0,为假,退出while循环语句。所以程序的最后结果为1。----------------------------------------23、若有定义:“int a[2][3];"则对a数组的第i行第j列元素的正确引用为( )。 A.+(*(a+i)+j)B.(a+i)[j]C.*(a+i+i)D.*(a+i)+j 参考答案: A 通过地址来引用数组元素的方法有下列5种:(1)a[i][j];(2)*(a[i]+j);(3)*(*(a+j)+j);(4)*(a[i][j]);(5)(&a[0][0]+3*i+j)。故A正确。----------------------------------------24、下列能正确进行字符串赋值的是( )。 A.char s[s]={“ABCDE};B.char s[5]={’A’,’B‘,‘C’,’D’,’E’);C.char*s;s=ABCDE;D.char*s;printf(%s,s); 参考答案: C 选项A、B的空间不够;字符串存储要有结束符“O”且要占用一个空间,print{用来输出字符,不能输入字符串。----------------------------------------25、现有以下结构体说明和变量定义,如图所示,指针P、q、r分别指定一个链表中连续的3个结点。struct node{har data;truct node*next;)*P,*q,*r;现要将q和r所指结点交换前后位置,同时要保持链表的连志,下列不能完成此操作的语句是( )。 A.q->next=r
微信搜索关注"91考试网"公众号,领30元,获取公务员事业编教师考试资料40G