阿摩線上測驗
登入
首頁
>
计算机等级考试— 二级—《C语言 》
> 96年 - 2007年4月计算机等级考试— 二级—《C语言 》#13779
96年 - 2007年4月计算机等级考试— 二级—《C语言 》#13779
科目:
计算机等级考试— 二级—《C语言 》 |
年份:
96年 |
選擇題數:
50 |
申論題數:
0
試卷資訊
所屬科目:
计算机等级考试— 二级—《C语言 》
選擇題 (50)
1)下列叙述中正确的是(A)算法的效率只与问题的规模有关,而与数据的存储结构无关 (B)算法的时间复杂度是指执行算法所需要的计算工作量 (C)数据的逻辑结构与存储结构是一一对应的(D)算法的时间复杂度与空间复杂度一定相关
2)在结构化程序设计中,模块划分的原则是(A)各模块应包括尽量多的功能 (B)各模块的规模应尽量大(C)各模块之间的联系应尽量紧密(D)模块内具有高内聚度、模块间具有低耦合度
3)下列叙述中正确的是(A)软件测试的主要目的是发现程序中的错误 (B)软件测试的主要目的是确定程序中错误的位置 (C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作(D)软件测试是证明软件没有错误
4)下面选项中不属于面向对象程序设计特征的是(A)继承性(B)多态性(C)类比性(D)封闭性
5)下列对列的叙述正确的是 (A)队列属于非线性表(B)队列按“先进后出”原则组织数据(C)队列在队尾删除数据(D)队列按“先进先出”原则组织数据
6)对下列二叉树进行前序遍历的结果为(A)DYBEAFCZX(B)YDEBFZXCA(C)ABDYECFXZ(D)ABCDEFXYZ
7)某二叉树中有n个度为2的结点,则该二叉树中的叶子结点为(A)n+1(B)n-1(C)2n(D)n/2
8)在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是(A)并(B)交(C)投影(D)笛卡儿乘积
9)在E-R图中,用来表示实体之间联系的图形是(A)矩形(B)椭圆形(C)菱形(D)平行四边形
10)下列叙述中错误的是 (A)在数据库系统中,数据的物理结构必须与逻辑结构一致(B)数据库技术的根本目标是要解决数据的共享问题 (C)数据库设计是指在已有数据库管理系统的基础上建立数据库(D)数据库系统需要操作系统的支持
11)算法中,对需要执行的每一步操作,必须给出清楚、严格的规定,这属于算法的 (A)正当性(B)可行性(C)确定性(D)有穷性
12)下列叙述中错误的是(A)计算机不能直接执行用C语言编写的源程序 (B)C程序经C编译后,生成后缀为.obj的文件是一个二进制文件(C)后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件(D)后缀为.obj和.exe的二进制文件都可以直接运行
13)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是 (A)大写字母(B)连接符(C)数字字符(D)下划线
14)以下叙述中错误的是 (A)C语言是一种结构化程序设计语言(B)结构化程序有顺序、分支、循环三种基本结构组成 (C)使用三种基本结构构成的程序只能解决简单问题(D)结构化程序设计提倡模块化的设计方法
15)对于一个正常运行的C程序,以下叙述中正确的是(A)程序的执行总是从main函数开始,在main函数结束(B)程序的执行总是从程序的第一个函数开始,在main函数结束(C)程序的执行总是从main函数开始,在程序的最后一个函数中结束(D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束
16)设变量均已正确定义,若要通过scanf“%d%c%d%c”,&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式正确的是注:□代表空格字符) (A)10□X□20□Y〈回车〉(B)10□X20□Y〈回车〉(C)10□X〈回车〉(D)10X〈回车〉20□Y〈回车〉20Y〈回车〉
17)若有代数式其中e仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C语言表达式是 (A)sqrtabsn^x+e^x))(B)sqrtfabspown,x)+powx,e))) (C)sqrtfabspown,x)+expx,e)))(D)sqrtfabspowx,nn)+expx)))
18)设有定义:intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是 (A)k++(B)k+=1(C)++k(D)k+1
19)有以下程序,其中%u表示按无唿号整数输出 Main) {unsignedintx=0xFFFF;/*x的初值为十六进制数*/ Printf“%u ”,x);}程序运行后的输出结果是(A)-1(B)65535(C)32767(D)0XFFFF
20)设变量x和y均已正确定义并赋值,以下if语句中,在编译时将产生错误信息的是 (A)ifx++)(B)ifx>y&y!=0);(C)ifx>y)x--(D)ify<0){;}elsey++:elsex++;
21)以下选项中,当x为大于1的奇数时,值为0的表达式(A)x%2==1(B)x/2(C)x%2!=0(D)x%2==0
22)以下叙述中正确的是 (A)break语句只能用于switch语句题中(B)continue语句的作用是:使程序的执行流程跳出包含它的所有循环 (C)break语句只能用在循环体内和switch语句体内(D)在循环体内使用break语句和continue语句的作用相同
23)有以下程序 Main) {intk=5,n=0; do {switchk) {case1:case3:n+=1;break; Default;n=0;k--; Case2:case4:n+=2;k--;break;} Printf“%d”,n); }whilek>0&&n<5);}程序运行后的输出结果是(A)235(B)0235(C)02356(D)2356
24)有以下程序 mian) {inti,j; fori=1;i<4;i++) {forj=i;j<4;j++)printf“%d*%d=%d“,i,j,i*j); Printf“ ”);}}程序运行后的输出结果是 *p=&n; Printf“Inputn:”);scanf“%d”,&p);printf“outputn:”);printf“%d ”,p);} 该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是 (A)intn,*p=NULL;(B)*p=&n;(C)scanf“%d”,&p)(D)printf“%d ”,p);
25)以下合法的字符型常量是 (A)””(B)”8”(C)”65”(D)” ”
26)在C语言中,函数返回值的类型最终取决于 (A)函数定义时在函数首部所说明的函数类型(B)return语句中表达式值的类型(C)调用函数时主函数所传递的实参类型(D)函数定义时形参的类型
27)已知大写字母A的ASCII码是65,小写字母aASCII码是97,以下不能将变量c中大写字母转换为对应小写字母的语句是 (A)c=(c-a&+‟a‟(B)c=c+32(C)c=c-„A‟+‟a‟(D)c=(„A‟+c&-„a‟
28)有以下函数intfun(char*s){char*t=s;while(*t++);return(t-s);}该函数的功能是 (A)比较两个字符的大小(B)计算s所指字符串占用内存字节的个数(C)计算s所指字符串的长度(D)将s所指字符串复制到字符串t中
29)设已有定义:floatx;则以下对指针变量p进行定义且赋初值的语句中正确的是 (A)float*p=1024;(B)int*p=(floatx);(C)floatp=&x;(D)float*P=&x;
30)有以下程序#includemain(){intn,*p=NULL;*p=&n;printf(“Inputn:”);scanf(“%d”,&p);printf(“outputn:”);printf(“%d ”,p);}该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是 (A)intn,*p=NULL;(B)*p=&n;(C)scanf(“%d”,&p)(D)printf(“%d ”,p);
31)以下程序中函数f的功能是:当flag为4时,进行有小到大排序;当flag为0时,进行由大到小排序。 voidfintb[],intn,intflag) {inti,j,t; fori=0;iforj=i+1;jifflag?b[i]>b[j]:b[i]} main) {inta[10]={5,4,3,2,1,6,7,8,9,10},I; f&a[2],5,0);fa,5,1); fori=0;i<10;i++)printf“%d,”a[i]);}程序运行后的输出结果是 (A)1,2,3,4,5,6,7,8,9,10,(B)3,4,5,6,7,2,1,8,9,10, (C)5,4,3,2,1,6,7,8,9,10,(D)10,9,8,7,6,5,4,3,2,1,
32)有以下程序 voidfintb[]) {intI; fori=2;i<6;i++)b[i]*=2;} main) {inta[10]={1,2,3,4,5,6,7,8,9,10},i; fori=0;i<10;i++) printf“%d,”,a[i]);}程序运行后的输出结果是 (A)1,2,3,4,5,6,7,8,9,10,(B)1,2,6,8,10,12,7,8,9,10 (C)1,2,3,4,10,12,14,16,9,10,(D)1,2,6,8,10,12,14,16,9,10,
33)有以下程序 typedefstruct{intb,p;}A; voidfAc/*注意:c是结构变量名*/ {intj; c.b+=1;c.p+=2;} main){inti;Aa={1,2}; fprintf“%d,%d ”,a.b,a.p);}程序运行后的输出结果是 (A)2,3(B)2,4(C)1,4(D)1,2
34)有以下程序 main) {inta[4][4]={{1,4,3,2,},{8,6,5,7,},{3,7,2,5,},{4,8,6,1,}},i,j,k,t; fori=0;i<4;i++) forj=0;j<3;j++) fork=j+1;k<4;k++) ifa[j][i]>a[k][i]){t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}/*按列排序*/ fori=0;i<4;i++)printf“%d,”,a[i][j]);}程序运行后的输出结果是 (A)1,6,5,7,(B)8,7,3,1,(C)4,7,5,2,(D)1,6,2,1,
35)有以下程序 main) {inta[4][4]={{1,4,3,2,},{8,6,5,7,},{3,7,2,5,},{4,8,6,1,}},i,k,t; fori=0;i<3;i++) fork=i+i;k<4;k++)ifa[i][i]fori=0;i<4;i++)printf“%d,”,a[0][i]);}程序运行后的输出结果是 (A)6,2,1,1,(B)6,4,3,2,(C)1,1,2,6,(D)2,3,4,6,
36)有以下程序 voidfint*q) {inti=0; fori<5;i++)*q)++;} main) {inta[5]={1,2,3,4,5},i; fori=0;i<5;i++)printf“%d,”,a[i]);}程序运行后的输出结果是(A)2,2,3,4,5,(B)6,2,3,4,5,(C)2,3,4,5,6,
37)有以下程序 #include main) {charp[20]={‘a’,’b’,’c’,’d’},q[]=”abc”,r[]=”abcde”; Strcpyp+strlenq),r);strcatp,q); Printf“%d%d ”,sizeofp),strlenp));}程序运行后的输出结果是(A)209(B)99(C)2011(D)1111
38)有以下程序 #include main) {charp[20]={‘a’,’b’,’c’,’d’},q[]=”abc”,r[]=”abcde” strcatp,r);Strcpyp+strlenq),q); Printf“%d ”,sizeofp));}程序运行后的输出结果是(A)9(B)6(C)11(D)7
39)有以下程序#includemain()voidf(charp[][10],intn)/*字符串从小到大排序*/{chart[10];inti,j;for(i=0;ifor(j=i+1;jif(strcmp(p[i],p[j])>0){strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[i],t);}}main(){charp[5][10]={“abc”,”aabdfg”,”abbd”,”dcdbe”,”cd”};f(p,5);printf(“%d ”,strlen(p[0]));}程序运行后的输出结果是 (A)2(B)4(C)6(D)3
40)有以下程序voidf(intn,int*r){intr1=0;if(n%3==0)r1=n/3;elseif(n%5==0)r1=n/5;elsef(--n,&r1);*r=r1;}main(){intm=7,r;f(m,&r);printf(“%d ,r”);}程序运行后的输出结果是 (A)2(B)1(C)3(D)0
41)有以下程序main(intargc,char*argv[]){intn=0,i;for(i=1;in=n*10+*argv[i]-„0‟;printf(“%d ”,n);}编译连接后生成可执行文件tt.exe,若运行时输入以下命令行tt12345678程序运行后的输出结果是 (A)12(B)12345(C)12345678(D)136
42)有以下程序inta=4;intf(intn){intt=0;staticinta=5;if(n%2){inta=6;t+=a++;}else{inta=7;t+=a++;}returnt+a++;}main(){ints=a,i=0;for(;i〈2;i++)s+=f(i);printf(“%d ”,s);}程序运行后的输出结果是 (A)24(B)28(C)32(D)36
43)有一个名为init.txt的文件,内容如下: #defineHDYA,bA/B #definePRINTY)Printf“y=%d .,Y) 有以下程序 #include“init.txt” main) {inta=1,b=2,c=3,d=4,k; K=HDYa+c,b+d; PRINTK);}下面针对该程序的叙述正确的是(A)编译有错(B)运行出错(C)运行结果为y=0(D)运行结果为y=6
44)有以下程序 Main) {charch[]=“uvwxyz”,*pc; Pc=ch;printf“%c ”,*pc+5));}程序运行后的输出结果是(A)z(B)0(C)元素ch[5]地址(D)字符y的地址
45)有以下程序 structS{intn;inta[20];}; voidfstructS*P) {inti,j,t; fori=0;in-1;i++) forj=j+1;jn-1;j++)程序运行后的输出结果是(A)3(B)4(C)5(D)6
46)有以下程序structS{intn;inta[20];};voidf(int*a,intn){inti;for(i=0;ia[i]+=i;}main(){inti;structSs={10,{2,3,1,6,8,7,5,4,10,9}};f(s.a,s.n);for(i=0;iprintf(“%d”,s.a[i]);}程序运行后的输出结果 是(A)2,4,3,9,12,12,11,11,18,9,(B)3,4,2,7,9,8,6,5,11,10,(C)2,3,1,6,8,7,5,4,10,9,(D)1,2,3,6,8,7,5,4,10,9,
47)有以下程序段typedefstructnode{intdata;structnode*next;}*NODE;NODEp;以下叙述正确的是(A)p是指向structnode结构变量的指针的指针(B)NODEp;语句出错(C)p是指向structnode结构变量的指针(D)p是structnode结构变量
48)有以下程序main(){unsignedchara=2,b=4,c=5,d;d=a|b;d&=c;printf(“%d ”,d;}程序运行后的输出结果是(A)3(B)4(C)5(D)6
49)有以下程序 #include Main) {FILE*fp;intI,a[6]={1,2,3,4,5,6}; fp=fopen“d2.dat”,”w”); fprintffp,”%d%d ”,a[0],a[1],a[2]);fprintffp,“%d%d ”,a[3],a[4],a[5]); fclosefp); fp=fopen“d2.dat”,”r”); fscanffp,”“%d%d ”,&k,&n);printf“%d%d ”,k,n); fclosefp);}程序运行后的输出结果是(A)12(B)14(C)1234(D)123456
50)有以下程序 #include main) {fILE*fp;intI,a[6]={1,2,3,4,5,6k}; fp=fopen“d3.dat”,”w+b”); fwritea,sizeint),6,fp); fseekfp,sizeofint)*3,SEEKSET);/*该语句使读文件的位置指针从文件头向后移动3个int型数据*/ freada,sizeofint),3,fp);fclosefp); fori=0;i<6;i++)printf“%d,”,a[i]);}程序运行后的输出结果是 (A)4,5,6,4,5,6,(B)1,2,3,4,5,6,(C)4,5,6,1,2,3,(D)6,5,4,3,2,1,
申論題 (0)