2023年9月二级C笔试试题及答案.doc

上传人:知****量 文档编号:58414745 上传时间:2022-11-07 格式:DOC 页数:21 大小:30.54KB
返回 下载 相关 举报
2023年9月二级C笔试试题及答案.doc_第1页
第1页 / 共21页
2023年9月二级C笔试试题及答案.doc_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《2023年9月二级C笔试试题及答案.doc》由会员分享,可在线阅读,更多相关《2023年9月二级C笔试试题及答案.doc(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、一、选择题(1)(40)每题1分,(41)(50)每题2分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是对的的,请将对的选项涂写在答题卡相应位置上,答在试卷上不得分。(1) 在32位计算机中,一个字长所占的字节数为A) 1B) 2C) 4D) 8(2) 与十进制数511等值的十六进制数为A) 1FFB) 2FFC) 1FED) 2FE(3) 能将高级语言编写的源程序转换成目的程序的是A) 编程程序 B) 编译程序 C) 解释程序D) 链接程序(4) 在计算机系统中,存储一个汉字的国标码所需要的字节数为A) 1B) 2C) 3D) 4(5) 下列带有通配符的文献名中,能表达

2、文献ABC.TXT的是A) *BC.? B) A?.*C) ?BC.* D) ?.?(6) 在多媒体计算机系统中,不能用以存储多媒体信息的是A) 光缆 B) 软盘 C) 硬盘 D) 光盘(7) DOS命令“COPY/?”的功能是A) 将当前盘当前目录中的所有文献复制到当前盘的根目录下B) 将当前盘当前目录中所有以单个字符命名的文献复制到当前盘的根目录下C) 以提醒方式复制文献D) 显示COPY命令的帮助信息(8) 在Windows环境下,若要将当前活动窗口存入剪贴板,则可以按A) Ctrl+PrintScreen键 B) Ctrl+PrintScreen键C) Shift+PrintScree

3、n键 D) PrintScreen键(9) 在Windows环境下,单击当前应用程序窗口中的“关闭”按钮,其功能是A) 将当前应用程序转为后台运营 B) 退出Windows后再关机C) 退出Windows后重新启动计算机D) 终止当前应用程序的运营(10) 在Windows环境中,粘贴按钮是A) B) C) D) (11) 以下叙述中对的的是A) 构成C程序的基本单位是函数B) 可以在一个函数中定义另一个函数C) main()函数必须放在其它函数之前D) 所有被调用的函数一定要在调用之前进行定义(12) 以下选项中合法的实型常数是A) 5E2.0 B) E-3 C) .2E0 D) 1.3E(

4、13) 以下选项中合法的用户标记符是A) long B) _2Test C) 3Dmax D) A.dat(14) 已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表达的字符常量101是A) 字符A B)字符a C)字符e D)非法的常量(15) 以下非法的赋值语句是A) n=(i=2,+i); B)j+; C) +(i+1); D)x=j0;(16) 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是A)6.500000 B)6 C) 5.500000 D) 6.000000(17) 已知i、j、k为int型变量,若从

5、键盘输入:1,2,3,使i的值为1、j的值为2、k的值为3,以下选项中对的的输入语句是A) scanf(“%2d%2d%2d”,&i,&j,&k);B) scanf(“%d %d %d”,&i,&j,&k);C) scanf(“%d,%d,%d”,&i,&j,&k);D) scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);(18) 与数学式子 相应的C语言表达式是A) 3*xn(2*x-1) B) 3*x*n(2*x-1)C) 3*pow(x,n)*(1/(2*x-1) D) 3*pow(n,x)/(2*x-1)(19) 设有定义:long x=-123456L;,则以下可以对

6、的输出变量x值的语句是A)printf(“x=%dn”,x); B) printf(“x=%1dn”,x);C)printf(“x=%8dLn”,x); D)printf(“x=%LDn”,x);(20) 若有以下程序:main() int k=2,i=2,m;m=(k+=i*=k);printf(“%d,%dn”,m,i);执行后的输出结果是A) 8,6 B) 8,3 C) 6,4 D) 7,4(21) 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 & y+z/2的值是A) B) C) D) (22) 有一函数, ,以下程序段中不能根据值对的计算出值的是A) if

7、(x0) y=1; B) y=0;else if(x=0) y=0; if(x0) y=1;else y=-1; else if(x=0)if(x=0); if(x0) y=1;if(x0) y=1 ; else y=0;else y=-1; else y=-1;(23) 以下选项中,与k=n+完全等价的表达式是A) k=n,n=n+1 B) n=n+1,k=n C) k=+n D) k+=n+1(24) 以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main() int n,k;float score ,sum,ave;sum=0.0;for(

8、n=1;n=10;n+) for(k=1;k=4;k+) scanf(“%f”,&score); sum+=score;ave=sum/4.0;printf(“NO%d:%fn”,n,ave);上述程序运营后结果不对的,调试中发现有一条语句出现在程序中的位置不对的。这条语句是A) sum=0.0; B) sum+=score;C) ave=sun/4.0; D) printf(“NO%d:%fn”,n,ave);(25) 有以下程序段int n=0,p;doscanf(“%d”,&p);n+;while(p!=12345 &n3);此处dowhile循环的结束条件是A) P的值不等于12345

9、并且n的值小于3B) P的值等于12345并且n的值大于等于3C) P的值不等于12345或者n的值小于3D) P的值等于12345或者n的值大于等于3(26) 有以下程序main() int a=15,b=21,m=0;switch(a%3) case 0:m+;break;case 1:m+;switch(b%2) default:m+;case 0:m+;break;printf(“%dn”,m);程序运营后的输出结果是A) 1 B) 2 C) 3 D) 4(27) C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是A) void B) int C) float D) doubl

10、e(28) 若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是A) p=q; B) *p=*q; C) n=*q; D) p=n;(29) 有以下程序float fun(int x,int y) return(x+y); main() int a=2,b=5,c=8;printf(“%3.0fn”,fun(int)fun(a+c,b),a-c);程序运营后的输出结果是A) 编译犯错 B) 9 C) 21 D) 9.0(30) 有以下程序void fun(char *c,int d) *c=*c+1;d=d+1;printf(“%c,%c,”,*c,d);main() ch

11、ar a=A,b=a;fun(&b,a); printf(“%c,%cn”,a,b);程序运营后的输出结果是A)B,a,B,a B) a,B,a,B C) A,b,A,b D) b,B,A,b(31) 以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序void sort(int a,int n) int i,j,t;for(i=0;iN-1;I+for(j=i+1,jN;J+)if(aimain() int aa10=1,2,3,4,5,6,7,8,9,10,i;sort(&aa3,5);for(i=o;i10;i+) print(“%d,”,aai);printf(n”);

12、程序运营后的输出结果是A)1,2,3,4,5,6,7,8,9,10 B) 10,9,8,7,6,5,4,3,2,1,C) 1,2,3,8,7.6.5.4.9,10 D) 1,2,10,9,8,7,6,5,4,3(32) 有以下程序int f(int n) if (n=1) return 1;else return f(n-1)+1;main() int i,j=0;for(i=i;i3;i+) j+=f(i);printf(“%dn”,j);程序运营后的输出结果是A) 4 B) 3 C) 2 D) 1(33) 有以下程序main() char a =a,b,c,d, e, f, g,h,0;

13、int i,j;i=sizeof(a); j=strlen(a);printf(“%d,%db”i,j);程序运营后的输出结果是A)9,9 B)8,9 C)1,8 D)9,8(34) 以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。void reverse(int a ,int n) int i,t;for(i=0;i t=ai; ai=an-1-i;an-1-i=t;main() int b10=1,2,3,4,5,6,7,8,9,10; int i,s=0;reverse(b,8);for(i=6;i10;i+) s+=bi;printf(“%dn”,s);程序运营后的输

14、出结果是A) 22 B) 10 C) 34 D) 30(35) 有以下程序main() int aa44=1,2,3,4,5,6,7,8,3,9,10,2,4,2,9,6;int i,s=0for(i=0;i4;i+) s+=aai1;printf(“%dn”,s);程序运营后的输出结果是A) 11 B) 19 C) 13 D) 20(36) 有以下程序#include main() char *p=“abcdeOfghjik0”;printf(“%dn”,strlen(p);程序运营后的输出结果是A) 12 B) 15 C) 6 D) 5(37) 程序中头文献typel.h 的内容是:#de

15、fine N 5#define M1 N*3程序如下:#define “type1.h”#define M2 N*2main() int i;i=M1+M2; printf(“%dn”,i);程序编译后运营的输出结果是:A) 10 B) 20 C) 25 D) 30(38) 有以下程序#include main() FILE *fp; int i=20,j=30,k,n;fp=fopen(“d1.dat”“w”);fprintf(fp,“%dn”,i);fprintf(fp,“%dn”j);fclose(fp);fp=fopen(“d1.dat”, “r”);fp=fscanf(fp,“%d%

16、d”,&k,&n); printf(“%d%dn”,k,n);fclose(fp);程序运营后的输出结果是A) 20 30 B) 20 50 C) 30 50 D) 30 20(39) 以下叙述中错误的是A) 二进制文献打开后可以先读文献的末尾,而顺序文献不可以B) 在程序结束时,应当用fclose函数关闭已打开的文献C) 在运用fread函数从二进制文献中读数据时,可以用数组名给数组中所有元素读入数据D) 不可以用FILE定义指向二进制文献的文献指针(40) 有以下程序#include main(int argc,char *argv) int i,len=0;for(i=1;iprintf

17、(“%dn”,len);程序编译连接后生成的可执行文献是ex1.exe,若运营时输入带参数的命令行是:ex1 abcd efg 10则运营的结果是:A) 22 B) 17 C) 12 D) 9(41) 有以下程序int fa(int x) return x*x; int fb(int x) return x*x*x; int f(int (*f1)(),int (*f2)(),int x) return f2(x)-f1(x); main() int i;i=f(fa,fb,2); printf(“%dn”,i);程序运营后的输出结果是A) -4 B) 1 C) 4 D) 8(42) 有以下程

18、序int a=3;main() int s=0; int a=5; s+=a+; s+=a+;printf(“%dn”,s);程序运营后的输出结果是A) 8 B) 10 C) 7 D) 11(43) 有以下程序void ss(char *s,char t) while(*s) if(*s=t) *s=t-a+A;s+;main() char str1100=“abcddfefdbd”,c=d;ss(str1,c); printf(“%sn”,str1);程序运营后的输出结果是A) ABCDDEFEDBD B) abcDDfefDbDC) abcAAfefAbA D) Abcddfefdbd(4

19、4) 有以下程序struct STU char num10; float score3; ;main() struct stu s3=“20231”,90,95,85,“20232”,95,80,75,“20233”,100,95,90,*p=s;int i; float sum=0;for(i=0;iscorei;printf(“%6.2fn”,sum);程序运营后的输出结果是A) 260.00 B) 270.00 C) 280.00 D) 285.00(45) 设有如下定义:struck sk int a;float b;data;int *p;若要使P指向data中的a域,对的的赋值语句

20、是A) p=&a; B) p=data.a; C) p=&data.a; D) *p=data.a;(46) 有以下程序#include struct NODE int num; struct NODE *next; ;main() struct NODE *p,*Q,*R;p=(struct NODE*)malloc(sizeof(struct NODE);q=(struct NODE*)malloc(sizeof(struct NODE);r=(struct NODE*)malloc(sizeof(struct NODE);p-num=10; q-num=20; r-num=30;p-ne

21、xt=q;q-next=r;printf(“%dn”,p-num+q-next-num);程序运营后的输出结果是A) 10 B) 20 C) 30 D) 40(47) 若有以下说明和定义typedef int *INTEGER;INTEGER p,*q;以下叙述对的的是A) P是int型变量 B) p是基类型为int的指针变量C) q是基类型为int的指针变量 D) 程序中可用INTEGER代替int类型名(48) 有以下程序main() unsigned char a,b,c;a=0x3; b=a|0x8; c=b1;printf(“%d%dn”,b,c);程序运营后的输出结果是A) 11

22、12 B) 6 13 C) 12 24 D) 11 22(49) 有以下程序#include main() char *p,*q;p=(char*)malloc(sizeof(char)*20); q=p;scanf(“%s%s”,p,q); printf(“%s%sn”,p,q); 若从键盘输入:abc def,则输出结果是:A) def def B) abc def C) abc d D) d d(50) 以下程序中函数f的功能是将n个字符串按由大到小的顺序进行排序。#include void f(char p10,int n) char t20; int i,j;for(i=0;iN-1

23、;I+)for(j=i+1;jN;J+if(strcmp(pi,pj)10 & x50) x+;if(x/3)x+;break;else continue;printf(“%dn”,x);9、有以下程序:#include main() char c;while(c=getchar( )!=?) putchar(-c);程序运营时,假如从键盘输入:Y?N?,则输出结果为 10 。10、以下程序运营后的输出结果是 11 。void fun(int x,int y) x=x+y;y=x-y;x=x-y;printf(“%d,%d,”,x,y); main() int x=2,y=3;fun(x,y)

24、;printf(“%d,%dn”,x,y);11、以下函数的功能是计算s=1+ + + ,请填空。double fun(int n) double s=0.0,fac=1.0; int i;for(i=1,i=n;i+) fac=fac 12 ;s=s+fac;return s;12 fun函数的功能是:一方面对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数值返回。请填空。#include #define N 100int fun(int(*a)N) int row,col,max,min;for(row=0;rowN;ROW+) for(max=aro

25、w0,col=1;colN;COL+)if( 13 )max=arowcol;if( row=0)min=max;else if( 14 )min=max;return min; 13、函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。#include int sstrcmp(char *s,char *t) while(*s&*t& *s= 15 ) s+;t+;return 16 ;14、下面程序的运营

26、结果是 17 。#define N 10#define s(x) x*x#define f(x) (x*x)main() int i1,i2;i1=1000/s(N); i2=1000/f(N);printf(“%d %dn”,i1,i2);15、下面程序的运营结果是: 18 。void swap(int *a,int *b) int *t;t=a; a=b; b=t;main() int x=3,y=5,*p=&x,*q=&y;swap(p,q);printf(“%d%dn”,*p,*q); 16、下面程序的运营结果是: 19 。typedef union student char name

27、10;long sno;char sex;float score4;STU;main() STU a5;printf(“%dn”,sizeof(a);17、若fp已对的定义为一个文献指针,d1.dat为二进制文献,请填空,以便为“读”而打开此文献:fp=fopen( 20 );。一、选择题(-(40)题每题1分,(41)-(50)题每题2分,其60分)(1) C (2)A (3)B (4)B (5) C(6) A (7) D (8) D (9) D (10) D(11) A (12) D (13) B (14) A (15) C(16) D (17) C (18) C (19) B (20)

28、C(21) D (22) C (23) A (24) A (25) D(26) A (27) B (28) D (29) B (30) D(31) C (32) B (33) D (34) A (35) B(36) D (37) C (38) A (39) D (40) D(41) C (42) A (43) B (44) B (45) C(46) D (47) B (48) D (49) A (50) C二、填空题答案(每空2分,共40分)(1) 【1】 系统软件(2) 【2】 CON 或 CON:(3) 【3】 TCP/IP 或者 传输控制协议/网际协议(4) 【4】 EXIT 或者 ex

29、it(5) 【5】 二百万 或者 两百万 或者 2百万 或者 200万 或者 2023000 或者 2,000,000(6) 【6】 20,0(7) 【7】 17(8) 【8】 X(9) 【9】 3,2,2,3(10)【10】 /i 或者 *1.0/i 或者 *1/i 或者 *(1.0/i) 或者 /(double)i(11)【11】 1000 10(12)【12】 3 5(13)【13】 80(14)【14】 d1.dat,rb#d1.dat,r+b#d1.dat,rb+(15)【15】 k(16)【16】 *k(17)【17】 maxmax 或者 arowcol=max(18)【18】 maxmax 或者 min=max(19)【19】 *t 或者 t0(20)【20】 *s-*t 或者 *s-t0 或者 s0-*t 或者 s0-t0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁