2009年4月,全国计算机等级二级C考试你准备好了没?考全国计算机等级二级C语言考试的朋友可以多关注一下考试大为大家整理的2009年4月,全国计算机等级二级考试C语言考前练习!希望对大家的备考有好的帮助!考试大祝各位考个好成绩!大家每天都来练习哦!不断的加强巩固!每天都有更新哦!考试大提示:每十道题的难度不同!继续上一篇... 1.若有以下说明和定义 typedefint*INTEGER; INTEGERp,*q; 以下叙述正确的是() A)p是int型变量 B)p是基类型为int的指针变量 C)q是基类型为int的指针变量 D)程序中可用INTEGER代替int类型名
2.若指针ps已正确定义,要使ps指向能够存储8个字符的动态存储单元,以下不正确的语句是() A)ps=(char*)malloc(8); B)ps=(char*)malloc(sizeof(char)*8); C)ps=(char*)calloc(8,sizeof(char)); D)ps=8*(char*)malloc(sizeof(char));
3.设下面程序段中调用fun函数传送实参a和b, main() { char a[10],b[10]; … fun (a,b); … } 则在fun函数首部中,对形参错误的定义是() A)fun(char a[10],b[10]){ …} B)fun(char a1[],char a2[]){ …} C)fun(char p[10],char q[10]){ …} D)fun(char*s1,char*s2){ …}
4.C语言规定,程序中各函数之间() A)既允许直接递归调用也允许间接递归调用 B)不允许直接递归调用也不允许间接递归调用 C)允许直接递归调用不允许间接递归调用 D)不允许直接递归调用允许间接递归调用
5.下列程序 voidfunc1(int i); voidfunc2(int i); char st[ ]="hello,friend!"; void func1(int i) {printf("%c",st[i]); if(i<3){i+=2;func2(i);} } void func2(int i) {printf("%c",st[i]); if(i<3){i+=2;func1(i);} } main() {inti=0;func1(i);printf("\n");} 执行后的输出结果是() A)hello B)hel C)hlo D)hlrn
6.以下对结构体类型变量的定义中,不正确的是() A)typedef struct aa {int n; float m; }AA; AA tdl; C)struct {int n; float m; }aa; struct aa tdl;B)#define AA struct aa AA{int n; float m; }tdl; D)struct {int n; float m; }tdl;
7.有以下程序 main() {inta[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)18 B)19 C)20 D)21
8.请选出以下程序的输出结果() #include <stdio.h> sub(x,y,z) int x,y,*z; {*z=y-x;} main() { int a,b,c; sub(10,5,&a);sub(7,a,&b);sub(a,b,&c); printf("%d,%d,%d\n",a,b,c); } A)5,2,3B)-5,-12,-7 C)-5,-12,-17D)5,-2,-749.若有如下定义: unionaa {int n;char c[9];float x;}a,b,c;
9.则下列叙述中不正确的是() A)union aa是定义的共用体类型 B)a,b,c 是定义的共用体类型名 C)n、c[9]和x是共用体的成员名 D)a,b,c 是定义的共用体变量名
10.在下列定义中的共用体所占内存字节数是() Union {char k[6]; struct {int m;float f; }a; double d; }b; A)8 B)14 C)18 D)10
答案:1.B 42.D 43.A 44.A 45.C 46.C 47.A 48.B 49.B 50.A |