【计算机类职业资格】二级C语言模拟647及答案解析.doc
《【计算机类职业资格】二级C语言模拟647及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言模拟647及答案解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言模拟 647 及答案解析(总分:128.50,做题时间:90 分钟)一、选择题(总题数:40,分数:62.50)1.以下不能输出字符 A 的语句是_(注:字符 A 的 ASCII 码值为 65,字符 a 的 ASCII 码值为 97)。(分数:1.00)A.printf(“%c/n“,65);B.printf(“%c/n“,“a“-32);C.printf(“%d/n“,“A“);D.printf(“%c/n“,“B“-1);2.有以下程序 #includestdio.h struct S int a,b;data2=10,100,20,200; main() struct S
2、p=data1; printf(“%d/n“,+(p.a); 程序运行后的输出结果是_。(分数:2.00)A.21B.11C.20D.103.下列叙述中正确的是_。(分数:1.00)A.有一个以上根结点的数据结构不一定是非线性结构B.只有一个根结点的数据结构不一定是线性结构C.循环链表是非线性结构D.双向链表是非线性结构4.下面不能作为软件设计工具的是_。(分数:1.00)A.PAD 图B.程序流程图C.数据流程图(DFD 图)D.总体结构图5.有以下程序: #includestdio.h main() int a=2, b=-1, c=2; if(ab) if(b0)c=0; else c+
3、=1; printf(“%d/n“, c); 程序的输出结果是_。(分数:2.50)A.0B.1C.2D.36.有以下程序段 # include stdio.h main() while(getchar()!=“/n“); (分数:1.00)A.此 while 语句将无限循环B.getchar()不可以出现在 while 语句的条件表达式中C.当执行此 while 语句时,只有按回车键程序才能继续执行D.当执行此 while 语句时,按任意键程序就能继续执行7.有以下程序: #includestdio.h main() int a5=1, 2, 3, 4, 5, b5=0, 2, 1, 3,
4、0, i, s=0; for(i=0; i5; i+) s=s+abi; printf(“%d/n“, s); 程序运行后的输出结果是_。(分数:1.00)A.6B.10C.11D.158.已知:int a=6;,则执行 a+=a-=a*a;语句后,a 的值为_。(分数:2.00)A.36B.0C.-24D.-609.函数 ftell(fp)的作用是_。(分数:2.00)A.得到 fp 所指向文件的当前读写位置B.初始化文件的位置指针C.移动文件的位置指针D.以上答案均正确10.有以下程序: #includestdio.h main() int aa33=2, 4, 6, i, *p= for
5、(i=0; i2; i+) if(i=0)aaii+1=*p+1; else+p; printf(“%d“, *p); printf(“/n“); 程序的输出结果是(分数:1.00)A.23B.26C.33D.3611.公司的开发人员可以同时参加多个项目的开发,则实体开发人员和实体项目间的联系是_。(分数:1.00)A.一对一B.一对多C.多对一D.多对多12.有以下程序 main() int i,j,x=0; for(i=0;i2;i+) x+; for(j=0;j=3;j+) if(j%2)continue; x+; x+; printf(“x=%d/n“,x); 程序执行后的输出结果是(
6、分数:2.00)A.x=4B.x=8C.x=6D.x=1213.有三个关系 R、S 和 T 如下: (分数:1.00)A.自然连接B交C除D并14.有以下程序 #includestdio.h struct ord int x,y;dt2=1,2,3,4; main() struct ord*p=dt; printf(“%d,“,+(p-x); printf(“%d/n“,+(p-y); 程序运行后的输出结果是_。(分数:2.00)A.2,3B.4,1C.3,4D.1,215.有以下程序: #includestdio.h struct ttint x;struct tt*y;*p; struct
7、 tt a4=20,a+1,15,a+2,30,a+3,17,a; main() int i; p=a; for(i=1;i=2;i+) printf(“%d,“,p-x); p=p-y; 程序的运行结果是_。(分数:2.00)A.20,30,B.30,17C.15,30,D.20,15,16.若 ch 为 char 型变量,k 为 int 型变量(已知字符 a 的 ASCII 码是 97),则执行下列语句后输出的结果为 _ 。 ch=“b“; k=10; printf(“%x,%o,“,ch,ch,k); printf(“k=%d/n“,k);(分数:2.00)A.因变量类型与格式描述符的类
8、型不匹配,输出无定值B.输出项与格式描述符个数不符,输出为 0 值或不定值C.62,142,k=%dD.62,142,k=%1017.有以下程序: #include stdio.h main( ) char c25=“6934“,“8254“,*p2; int i,j,s=0; for(i=0;i2;i+)pi=ci; for(i=0;i2;i+) for(j=0;pij0 j+=2) s=10*s+pij-“0“; printf(“%d/n“,s); 程序的输出结果是_。(分数:1.00)A.693825B.69825C.63825D.638518.当执行以下程序时,如果输入 ABC,则输出
9、结果是_。 #include stdio.h #include string.h main() char ss10=“1,2,3,4,5“; gets(ss); strcat(ss, “6789“); printf(“% s/n“, ss); (分数:1.00)A.ABC6789B.ABC67C.12345ABC6D.ABCA5678919.软件设计中划分模块的一个准则是_。(分数:2.50)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合20.在 C 语言中,函数调用时_。(分数:2.00)A.实参和形参各占独立的存储单元B.实参和形参共用存储单元C.由系统自动确定实参和形参
10、是否共用存储单元D.由用户指定实参和形参是否共用存储单元21.有以下程序: #includestdio.h main() int c; while(c=getchar _ )!=“/n“) switch(c-“2“) case 0: case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); case 4:putchar(c+3);break; printf(“/n“); 从第一列开始输入以下数据,代表一个回车符。 27 43 程序的输出结果是 _ 。(分数:2.00)A.66877B.678966C.6677877
11、D.668876622.已知小写母 a 的 ASCII 码为 97,大写字母 A 的 ASCII 码为 65,以下程序的结果是_。 main() unsigned int a=32,b=66; printf(“%c/n“,a|B) ; (分数:1.00)A.66B.98CbDB23.以下选项中,能用作用户标识符的是_。(分数:1.00)A._0_B.8_8C.voidD.unsigned24.当用户要求输入的字符串中含有空格时,应使用的输入函数是 _ 。(分数:2.00)A.scanf()B.getchar()C.gets()D.getc()25.以下叙述中正确的是_。(分数:2.00)A.i
12、nt * p1; int * * p2; int *p3;都是合法的定义指针变量的语句B.指针变量只能通过求地址运算符(与 p=/0;是等价的语句D.语句 p=NULL;执行后,指针 p 指向地址为 0 的存储单元26.下列叙述中正确的是_。(分数:1.00)A.有一个以上根结点的数据结构不一定是非线性结构B.只有一个根结点的数据结构不一定是线性结构C.循环链表是非线性结构D.双向链表是非线性结构27.有以下程序: #include stdio.h #include string.h typedef struct char name9; char sex; int score2; STU; S
13、TU f(STU a) STU b=“Zhao“,“m“,85,90; int i; strcpy(a.name, b.name); a.sex=b.sex; for (i=0; i2; i+) a.scorei=b.scorei; return a; main( ) STU c=“Qian“,“f“,95,92,d; d=f(c); printf(“%s,%c,%d,%d,“,d.name,d.sex, d.score0, d.score1); printf(“%s,%c,%d,%d/n“, c.name,c.sex, c.score0, c.score1); 程序运行后的输出结果是_。(分
14、数:2.00)A.Zhao,m,85,90, Qian,f,95,92B.Zhao,m,85,90, Zhao,m,85,90C.Qian,f,95,92, Qian,f,95,92D.Qian,f,95,92, Zhao,m,85,9028.若有以下程序: #include stdio.h main( ) int i,j; for(i=1; i4; i + +) for(j=i; j4; j + +) pfinff(“%d*%d=%d“,i,j,i*j); printf(“/n“); 则程序运行后的输出结果是_。(分数:2.50)A.1*1=1 1*2=2 1*3=32*2=4 2*3=63
15、*3=9B.1*1=1 1*2=2 1*3=32*1=2 2*2=43*1=3C.1*1=11*2=2 2*2=41*3=3 2*3=6 3*3=9D.1*1=12*1=2 2*2=43*1=3 3*2=6 3*3=929.有下列函数: int fun(char*s) char*t=s; while(*t+); return(t-s); 该函数的功能是 _ 。(分数:2.00)A.比较两个字符串的大小B.计算 s 所指字符串占用内存字节的个数C.计算 s 所指字符串的长度D.将 s 所指字符串复制到字符串 t 中30.以下选项中不合法的用户标识符是(分数:2.00)A.abc.cB.fileC
16、.MainD.PRINTF31.下列叙述中错误的是(分数:2.00)A.在程序中凡是以“#”开始的语句行都是预处理命令行B.预处理命令行的最后不能以分号表示结束C.#define MAX 是合法的宏定义命令行D.C 程序对预处理命令行的处理是在程序执行的过程中进行的32.有以下程序 #includestdio.h int fun(int(*s)4, int n, int k) int m, i; m=s0k; for(i=1; in; i+) if(sikm) m=sik; return m; main() int a44=1, 2, 3, 4, 11, 12, 13, 14, 21, 22,
17、 23, 24, 31, 32, 33, 34; printf(“%d/n“, fun(a, 4, 0); 程序的运行结果是_。(分数:2.00)A.31B.34C.4D.3233.设有以下定义: int a=0;double b=1.25;char c=“A“; #define d 2 则下面语句中错误的是 _ 。(分数:2.00)A.a+;B.b+;C.c+;D.d+;34.有以下程序: #includestdio.h int a5=7,10,3; int n=3; int *p=a; void main() int i; int a2=1,0; for(i=0;ai;i+) printf
18、(“%4d“,ai); for(i=0;ai;i+) int a3=100,200,300; printf(“%4d“,ai); printf(“/n“); 程序的运行结果是_。(分数:1.00)A.1 100B.1 0 100 200 300C.1 100 200 300D.1 100 20035.以下叙述中错误的是_。(分数:1.00)A.C 语言编写的函数源程序,其文件名后缀可以是 CB.C 语言编写的函数都可以作为一个独立的源程序文件C.C 语言编写的每个函数都可以进行独立的编译并执行D.一个 C 语言程序只能有一个主函数36.函数 rewind(fp)的作用是_。(分数:1.00)A
19、.函数 rewind(fp)的作用是使文件读写指针指向文件开始位置B.使文件位置指针指向文件的末尾C.使文件位置指针移至前一个字符的位置D.使文件位置指针移至下一个字符的位置37.经下列语句定义后,sizeof(x)、sizeof(y)、sizeof(a)、sizeof(b)在 IBM-PC 机上的值分别为_。 char x=65; float y=7.3; int a=100; double b=4.5;(分数:2.00)A.2,2,2,4B.1,2,2,4C.1,4,2,8D.2,4,2,838.有以下程序 #includestdio.h main() int i,j,m=55; for(
20、i=1;i=3;i+) for(j=3;j=i;j+)m=m%j; printf(“%d/n“,m); 程序的运行结果是_。(分数:1.00)A.0B.1C.2D.339.以下选项中叙述正确的是_。(分数:1.00)A.char c1,c2,*c3,c440j;是合法的变量定义语句B.数组说明符的一对方括号中只能使用整型常量,而不能使用表达式C.数组下标的下限可以是负值D.若有数组定义 float array4;则语句 printf(“%f“,array3.12);是合法的40.算法时间复杂度的度量方法是_。(分数:1.00)A.算法程序的长度B.执行算法所需要的基本运算次数C.执行算法所需要
21、的所有运算次数D.执行算法所需要的时间二、程序填空题(总题数:1,分数:18.00)41.请补充函数 proc(),其功能是:计算并输出给定 10 个数的方差。 例如,给定的 10 个数为 12.0,9.0,26.0,5.0,6.0,31.0,9.0,3.0,8.0,18.0,输出为s=8.877500。 注意:部分源程序给出如下。 请勿改动 main()函数和其他函数中的任何内容,仅在函数 proc()的横线上填入所编写的若干表达式或语句。 试题程序: #includestdio.h #includemath.h double proc(double x10) int i; double a
22、vg=0.0; double sum=0.0; double abs=0.0; double sd; for(i-0; i10; i+) 1; avg=sum/10; for(i=0; i10; i+) 2; sd= 3; return sd; void main() double s, str10=12.0, 9.0, 26.0, 5.0, 6.0, 31.0, 9.0, 3.0, 8.0, 18.0; int i; printf(“/nThe original data is: /n“); for(i=0; i10; i+) printf(“%6.1f“, stri); printf(“/
23、n/n“); s=proc(str); printf(“s=%f/n/n“, s); (分数:18.00)三、程序修改题(总题数:1,分数:18.00)42.下列给定程序中函数 fun 的功能是:将 P 所指字符串中的所有字符复制到 b 中,要求每复制三个字符之后插入一个空格。 例如,若给 a 输入字串:ABCDEFGHIJK,调用函数后,字符数组 b 中的内容为:ABC DEF GHI JK。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件 MODI1.C 中,不得增行或删行,也不得更改程序的结构! #includestdio.h void fun(char *p,cha
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 模拟 647 答案 解析 DOC
