• 回答数

    3

  • 浏览数

    246

爱吃烤鸭的小猫
首页 > 考试培训 > c语言二级考试题库

3个回答 默认排序
  • 默认排序
  • 按时间排序

二哥不二1993

已采纳

有40个单选题跟三道操作题,其中1-10题为二级公共基础知识,11-40题是c语言的内容,操作题包括程序填空,改错跟编程题各一题。

c语言二级考试题库

140 评论(11)

真理在朕

全国计算机二级C语言程序设计包括40个单选题(每题一分)和三道操作题(60分)。单选题中1~10题为二级公共基础知识,单选题的11~40题是C语言的内容。操作题包括程序填空(18分)、程序改错(18分)和编程题(24分)各一题。程序填空是将一个完整的程序,扣掉两到三处,让考生将它填写完整。由于每位考生具体抽到的题目不同,程序填空有2到3个空要填。

程序改错也是一个完整的程序,其中有2~3处错误要求考生将他们改正。编程题是要求考生编写一个程序,然后运行出题干要求的结果。题目中主函数main()会完整给出,在主函数中将调用fun()函数,fun函数由考生自己编写。编程题以运行结果给分,所编写完成后必须运行,否则没分。二级C语言程序设计考试涉及公共基础知识和C语言两块。公共基础知识内容包括数据结构与算法、程序设计基础、软件工程基础、数据库设计基础四部分。考10个单选每个1分。

C语言有基础知识(C语言概述、常量与变量、数据类型、运算符和表达式),编程三大结构(顺序结构、选择结构、循环结构),数组、函数和指针,其他内容(预处理命令、结构体和共用体、位运算、文件)四大部分内容。重点是第二、三部分。

342 评论(13)

咣咣中奖

全国计算机二级考试试题题库(附答案)下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题卡相应位置上涂黑,答在试卷上不得分。(1) 应用软件是指A) 所有能够使用的软件 B) 能被各应用单位共同使用的某种软件C) 所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件(2) 下列述叙中错误的是A) 计算机要经常使用不要长期闲置不用B) 为了延长计算机的寿命,应避免频繁开关计算机C) 在计算机附近应避免磁场干扰D) 计算机用几小时后,应关机一会儿再用(3) 下列字符中,ASCII码值最小的是A) A B) a C) Z D) x(4) 用晶体管作为电子器件制成的计算机属于A) 第一代 B) 第二代 C) 第三代 D) 第四代(5) 下列各不同进制的四个无符号数中,最小的数是A) ()2 B) (37)8 C) (75)10 D) (2A)16(6) 二进制数转换成十六进制数是A) B) C) D)(7) 下列各无符号十进制数中,能用八位二进制表示的是A) 296 B) 333 C) 256 D) 199(8) 计算机的软件系统可分类为A) 程序与数据 B) 系统软件与应用软件D) 操作系统与语言处理程序 D) 程序、数据与文档(9) 486机中的CPU同时能处理的二进制位数为A) 8 B) 16 C) 32 D) 64(10) 在使用计算机的过程中,需要重新启动DOS,则要A) 按Ctrl+Break键 B) 按^C键 C) 按Ctrl+Alt+Del键 D) 按^H键(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机电源;②将该软盘插入A驱动器;③关好A驱动器门。则冷启动的操作顺序应为A) ①→②→③ B) ③→②→① C) ②→①→③ D) ②→③→①(12) 设当前盘中某一文件路径为\A\C\B\,当前目录为\A。下列命令中错误的是A) CD.. B) RD \A\C\BC) TYPE \A\C\B\ D) TYPE C\B\(13) 设当前盘中的根目录下有一子目录AB,在子目录AB下有一文件。现要查看文件的内容,应使用命令A) TYPE \AB B) TYPE \AB\C) TYPE \ D) DIR \AB\(14) 自动批处理文件必须放在A) C盘根目录中 B) A盘根目录中C) 启动盘的任一个目录中 D) 启动盘的根目录中(15) 设当前盘当前目录为C:\USER\XY\P,且当前盘当前目录为空,则下列命令中能正确执行的是A) RD C:\USER\XY\P B) RD USER\XY\PC) MD \USER\XY\P\USER D) MD \USER\XY\P\X\Y(16) 下列DOS命令中,合法的是A) DISKCOMP B) TYPE >>C) COMP A: B: D) COMP A: A:(17) 设当前盘为C盘,所用的所有软盘已格式化,且容量相同,则下列DOS命令中错误的是A) DISKCOPY A: A: B) COPY A:*.* C) COPY *.* D) COPY A:*.* C:(18) 下列DOS命令中错误的是A) TYPE >PRN B) TYPE PRNC) COPY *.TXT PRN D) COPY CON PRN(19) 下列四组DOS命令中,互相等价的一组是A) COPY A:*.* B:与DISKCOPY A: B:B) COPY +与TYPE >>C) COPY + 与COPY +D) TYPE *.FOR>CON与COPY *.FOR CON(20) 设C盘目录结构如下:且C盘根目录下文件的内容为CD FORTRANCD \TC如果在A驱动器中插入一张根目录中只有扩展名为.C的若干文件(即A盘中无DOS系统文件)的软盘片,则由C盘启动DOS系统后,第一次键入下列命令中,正确的是A) COPY A:\*.C B) COPY A:\*.C TCC) COPY A:\*.C FORTRAN D) CD USER(21) C语言提供的合法的数据类型关键字是A) Double B) short C) integer D) Char(22) 在C语言中,合法的长整型常数是A) 0L B) 4962710 C) D)(23) 表达式:10!=9的值是A) true B) 非零值 C) 0 D) 1(24) 合法的C语言中,合法的长整型常数是A) '\t' B) "A" C) 65 D) A(25) 若有说明和语句:int a=5;a++;此处表达式a++的值是A) 7 B) 6 C) 5 D) 4(26) 在下列选项中,不正确的赋值语句是A) ++t; B) n1=(n2=(n3=0)); C) k=i==j; D) a=b+c=1;(27) 若有说明:int i,j=7, *p=&i;,则与i=j;等价的语句是A) I= *P; B) *P=*&J; C) i=&j; D) i=* *p;(28) 不能把字符串:Hello!赋给数组b的语句是A) char b[10]={'H','e','l','l','o','!'};B) char b[10];b="Hello!";C) char b[10];strcpy(b,"Hello!");D) char b[10]="Hello!";(29) 若有以下说明:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4的表达式是A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c](30) 若有以下说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为6的表达式是A) *p+6 B) *(p+6) C) *p+=5 D) p+5(31) 若有以下说明:int w[3][4]o={{0,1},{2,4},{5,8}};int(*p)[4]=w;则数值为4的表达式是A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1](32) 若程序中有下面的说明和定义struct abc{int x;char y;}struct abc s1,s2;则会发生的情况是A) 编译进错 B) 程序将顺利编译`连接`执行C) 能顺利通过编译`连接`但不能执行 D) 能顺利通过编译`但连接出错(33) 能正确表示a≥10或a≤0的关系表达式是A)a>=10 or a<=0 B)a>=10│a<=0C)a>=10││a<=0 D)a>=10 ││a<=0(34) 下面程序的输出是main(){ int x=3,y=6,a=0;while(x++!=(y+=o1)){ a+o=1;if(y#includemain(){ char ss[10]="12345";strcat(ss,"6789");gets(ss);printf("%s\n",ss);}A) ABC B) ABC9 C) 123456ABC D) ABC456789(35) 下面程序的输出是main(){ char *a="";int v1=0,v2=0,v3=0,v4=0,k;for(k=0;s[k];k++)switch(s[k]){ default:v4++;case '1': v1++;case '3': v3++;case '2': v2++; }printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); }A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8(36) 下面程序的输出是main(){int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A)k=11,k=12,k=11 B)k=11,k=13,k=13 C)k=11,k=013,k=0xb D)k=11,k=13,k=b(37) 若有以下程序段,w和k都是整型变量:┆w=k;LB: if(w==0) go to LE;w--;printf("*");goto LB;LE: ┆则不能与上面程序段等价的循环语句是A)for(w=k;w!=0;w--) printf("*"); B)for(w=k;w;--w)printf("*");C)w=k; D)w=k;while(w--!=0)printf("*");w++; do{ w--;printf("*");}while(w!=0);(38) 若有说明,double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是A)*p=&a; scanf("%lf",p); B)p=(double *)malloc(8);scanf("%f",p);C) p=&a;scanf("%lf",a); D)p=&a; scanf("%le",p);(39) 当执行下面程序且输入:ABC时,输出的结果是#include#includemain(){ char ss[10]="12345";gets(ss);printf("%s\n",ss); }A) ABC B) ABC9 C) 123456ABC D) ABC456789(40) 若有以下的说明和语句:main(){int t[3][2], *pt[3],k;fpr(k=o; k<3;k++)pt[k]=t[k];}则以一选项中能正确表示t数组元素地址的表达式是A) &t[3][2] B) *pt[0] C) *(pt+1) D) &pt[2](41) 下面程序输出数组中的最大值,由s指针指向该元素.main(){ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s;flr(p=a, s=a; p-a<10; p++)if(---?---)s=p;printf("The max:%d",*s):}则在if语句中的判断表达式应该是A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s(42) 下面程序的输出是#includemain(){ char*a="abcdefgh";fun(a);puts(a); }fun (char * s){ int x=0,y;char c;for(y=strlen(s)-1;xA)abcdefgh B)hgfdecba C)dcbahgfe D)hgfedcba(43) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是A)3 B)4 C)5 D)6(44) 下面程序的输出是main(){ int t=1; fun(fun(t));}fun(int h){ static int a[3]={1,2,3};int k;for(k=0;k<3;k++) a[k]+=a[k]-h;for(k=1;k<3;k++) printf("%d",a[k]);printf("\n"); return(a[h]);}A)1,2,3, B)1,3,5, C) 1,3,5, D) 1,3,5,1,5,9, 1,3,5, 0,4,8, -1,3,7,(45) C语言中,函数的隐含存储类别是A)auto B)static C)extern D)无存储类别(46) 下面程序的输出是int w=3;main(){ int w=10; printf("%d\n",fun(5)*w); }

149 评论(11)

相关问答