【计算机类职业资格】二级C语言分类模拟题560及答案解析.doc
《【计算机类职业资格】二级C语言分类模拟题560及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言分类模拟题560及答案解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言分类模拟题 560及答案解析(总分:58.50,做题时间:90 分钟)一、选择题(总题数:40,分数:58.50)1.有以下程序: # include stdio.h struct STU char name9; char sex; int score2; void f(struct STU a) struct STU b=“Zhao“,“m“,85,90; a1=b; main() struct STU c2=“Qian“,“f“,95,92,“Sun“,“m“,98,99; f(c); printf(“%s,%c,%d,%d,“,c0.name,c0.sex,c0.score0
2、,c0.score1); printf(“%s,%c,%d,%d/n“,c1.name,c1.sex,c1.score0,c1.score1); 程序运行后的输出结果是_。(分数:1.00)A.2hao,m,85,90,Sun,m,98,99B.2hao,m,85,90,Qian,f,95,92C.Qian,f,95,92,Sun,m,98,99D.Qian,f,95,92,Zhao,m,85,902.以下选项中可用作 C语言中合法用户标识符的是_。(分数:1.00)A._123B.voidC.-abcD.2a3.有以下程序段: int x; for(x=3; x6; x+) printf(x
3、%2)?(“*%d“):(“#%d/n“), x); 程序段的输出结果是_。(分数:2.50)A.*3#4*5B.#3*4#5C.#3*4#5D.*3#4*54.在黑盒测试方法中,设计测试用例的主要根据是_。(分数:1.00)A.程序内部逻辑B.程序外部功能C.程序数据结构D.程序流程图5.有以下程序: #includestdio.h main() int k,j,s; for(k=2;k6;k+,k+) s=1; for(j=k;j6;j+)s+=j; printf(“%d/n“,s); 程序运行后的输出结果是_。(分数:1.00)A.6B.10C.24D.406.若有说明 int a34;
4、则 a数组元素的非法引用是_。(分数:2.50)A.a02*1B.a13C.a4-20D.a047.有以下程序 #includestdio.h void fun(int x) if(x/21) fun(x/2); printf(“%d“, x); main() fun(7); printf(“n“); 程序运行后的输出结果是_。(分数:1.00)A.1 3 7B.7 3 1C.7 3D.3 78.以下选项中,能正确进行字符串赋值的是_。(分数:1.00)A.char*s=“ABCDE“;B.char s5=“A“,“B“,“C“,“D“,“E“;C.char s45=“ABCDE“;D.cha
5、r*8;gets(s);9.某棵树中共有 25个结点,且只有度为 3的结点和叶子结点,其中叶子结点有 7个,则该树中度为 3的结点数为_。(分数:1.00)A.不存在这样的树B.7C.8D.610.软件开发的结构化生命周期方法将软件生命周期划分成 _(分数:1.00)A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计11.if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是_。(分数:2.50)A.必须是逻辑值B.必须是整数值C.必须是正数D.可以是任意合法的数值12.有以下程序: #include
6、 stdio.h #define SQR(X) X*X main( ) int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf(“%d/n“,a); 程序的输出结果是_。(分数:1.00)A.0B.1C.9D.1013.当用户要求输入的字符串中含有空格时,应使用的输入函数是 _ 。(分数:2.00)A.scanf()B.getchar()C.gets()D.getc()14.若有以下函数: int fun(char *a, char *b) int bk=0; while(*a!=“/0“)break; a+; b+; bk=1; return bk; 此
7、函数的功能是_。(分数:1.00)A.判断 a和 b两个字符串是否相等B.将字符串 a改名为字符串 bC.将字符串变量 a的值赋给字符串变量 bD.检查字符串 a和 b中是否有“/0“15.设有定义: int x23; 则以下关于二维数组 x的叙述错误的是_。(分数:2.00)A.可以用 x0=0;的形式为数组所有元素赋初值 0B.数组 x可以看作是由 x0和 x1两个元素组成的一维数组C.元素 x0可看作是由 3个整型元素组成的一维数组D.x0和 x1是数组名,分别代表一个地址常量16.以下叙述中正确的是_。(分数:1.00)A.字符变量在定义时不能赋初值B.字符常量可以参与任何整数运算C.
8、同一英文字母的大写和小写形式代表的是同一个字符常量D.转义字符用符号开头17.以下程序的输出结果是_。 a=1; b=2; c=2; while(abc) t=a; a=b; b=t; c-; printf(“% d, % d, % d“, a, b, c);(分数:2.50)A.1,2,0B.2,1,0C.1,2,1D.2,1,118.若有以下程序: #include stdio.h void fun(int *s, int n1, int n2) int i,j,t; i=n1; j=n2; while(ij) t=si; si=sj; sj=t; i+ +; j-; main( ) in
9、t a10=1,2,3,4,5,6,7,8,9,0,k; fun(a,0,3); fun(a,4,9); fun(a,0,9); for(k=0;k10;k+ +) printf(“%d“,ak); printf(“/n“); 则程序的运行结果是_。(分数:2.50)A.4321098765B.5678901234C.0987654321D.098765123419.设有两行定义语句: int scanf; float case; 则以下叙述正确的是_。(分数:1.00)A.两行定义语句都不合法B.两行定义语句都合法C.第 1行语句不合法D.第 2行语句不合法20.有如下程序: #includ
10、e stdio.h struct person char name10; int age; main() struct person room4=“Zhang“,19,“Li“,20,“Wang“,17,“Zhao“,18; printf(“%s;%d/n“,(room+2)-name,room-age); 程序运行后的输出结果是_。(分数:1.00)A.Wang:19B.Wang:17C.Li:20D.Li:1921.有如下程序: #include stdio.h main() if(“/0“ = 0) putehar(“X“); if(“0“ = 0) putehar(“Y“); if(“
11、a“b“) putchar(“Z“). printf(“/n“); 程序运行后的输出结果是_。(分数:1.00)AXB.XYZC.YZDY22.下列叙述中正确的是_。(分数:1.00)A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数由队头指针和队尾指针共同决定23.下面选项中关于“文件指针”概念的叙述正确的是_。(分数:1.00)A.文件指针是程序中用 FILE定义的指针变量B.文件指针就是文件位置指针,表示当前读写数据的位置C.文
12、件指针指向文件在计算机中的存储位置D.把文件指针传给 fscanf函数,就可以向文本文件中写入任意的字符24.有以下定义: struct personchar name9; int age; ; struct person class10=“Johu“, 17, “Paul“, 19, “Mary“, 18, “Adam“, 16,; 则下面能输出字母 M的语句是(分数:2.00)A.printf(“%c/n“, class3.name);B.printf(“%c/n“, class3.name1);C.prinff(“%c/n“, class2.name1);D.printf(“%c/n“,
13、 class2.name0);25.下列叙述中错误的是_。(分数:2.00)A.一个 C语言程序只能实现一种算法B.C程序可以由多个程序文件组成C.C程序可以由一个或多个函数组成D.一个 C函数可以单独作为一个 C程序文件存在26.执行以下语句段后,xy 的值是_。 int*pt,xy; xy=200; pt= xy=*pt+30;(分数:2.00)A.200B.170C.260D.23027.if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是_。(分数:2.00)A.必须是正数B.必须是整数值C.可以是任意合法的数值D.必须是逻辑值28.阅读下列程序,则运行结果为
14、 #include “stdio.h“ fun() static int x=3; x+; return x; main() int i,x; for(i=0;i3;i+) x=fun(); printf(“%d/n“,x);(分数:1.00)A.3B.4C.5D.629.有以下程序: #includestdio.h main() FILE *fp; int i,a6=1,2,3,4,5,6,k; fp=fopen(“data.dat“,“w+“); for(i=0;i6;i+) fprintf(fp,“%d/n“,a5-i); rewind(fp); for(i=0;i6;i+) fscan
15、f(fp,“%d“, printf(“%d,“,k); fclose(fp); 程序运行后的输出结果是_。(分数:1.00)A.6,5,4,3,2,1,B.1,2,3,4,5,6,C.1,1,1,1,1,1D.6,6,6,6,6,6,30.以下叙述中正确的是_。(分数:2.00)A.在 scanf函数的格式串中,必须有与输入项一一对应的格式转换说明符B.只能在 printf函数中指定输入数据的宽度,而不能在 scanf函数中指定输入数据占的宽度C.scanf函数中的字符串是提示程序员的,输入数据时不必管它D.复合语句也被称为语句块,它至少要包含两条语句31.有以下程序: #include st
16、dio.h #include stdlib.h void fun(int*p1, int *s) int *t; t=(int *)malloc(2 * sizeof(int); *t=*p1 + *p1 +; *(t+1)=*p1+ *p1; s=t; main() int a2=1,2,b2=0; fun(a,b); printf(“%d,%d/n“,b0,b1); 程序运行后的输出结果是_。(分数:1.00)A.2,6B.0,0C.2,4D.1,232.以下四个程序中不能对两个整型值进行交换的是_。(分数:2.50)A.#includestdio.hvoid swap(int *p, i
17、nt *q) int*t, a;t= *t=*p; *p=*q; *q=*t;main() int a=10, b=20;swap( printf(“%d%d/n“, a, b);B.#includestdio.hvoid swap(int *p, int *q) int t;t=*p; *p=*q; *q=t;main() int a=10, b=20;swap( printf(“%d%d/n“, a, b);C.#includestdio.hvoid swap(int*p, int*q) int t;t=*p; *p=*q; *q=t;main() int*a, *b;*a=10, *b=
18、20;swap(a, b); printf(“%d%d/n“, *a, *b);D.#includestdio.hvoid swap(int*p, int*q) int t;t=*p; *p=*q; *q=t;main()int a=10, b=20, *x=swap(x,y); printf(“%d%d/n“, a, b);33.有以下程序: #includestdio.h void fun(int*s, int n1, int n2) int i, j, t; i=n1; j=n2; while (ij) t=*(s+i); *(s+i)=*(s+j); *(s+j)=t; i+; j-;
19、 main() int a10=1, 2, 3, 4, 5, 6, 7, 8, 9, 0, i, *p=a; fun(p, 0, 3); fun(p, 4, 9); fun(p, 0, 9); for(i=0; i10; i+) printf(“%d“, *(a+i); 程序的输出结果是(分数:1.00)A.0987654321B.4321098765C.5678901234D.098765123434.软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是_。(分数:1.00)A.测试B.设计C.可行性研究D.实现35.有以下程序(说明:字母 A的 ASCII码值是 65
20、): #includestdio.h void fun(char*s) while(*s) if(*s%2) printf(“%c“, *s); s+; main() char a=“BYTE“; Fun(a); printf(“n“); 程序运行后的输出结果是_。(分数:1.00)A.BYB.BTC.YTD.YE36.有以下程序 struct Sint n;int a20; void f(int *a,int n ) int i; for(i=0;iN-1;i+)NBSP;AI+=I; main() int i;struct S s10,2,3,1,6,8,7,5,4,10,9; f(s.a
21、,s.n); for(i=0;iS.N;i+)NBSP;PRINTF(“%D“,S.AI); 程序运行后的输出结果是_。(分数:2.00)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,37.C语言程序中,运算对象必须是整型数的运算符是_。(分数:1.00)A. main() int a=3,b=4,c=5,d; d=f(f(a,b),f(a,c); printf(“%d/n“,d); 程序运行后的输出结果是_。(分数:1.00)A.7B.10C.8
22、D.939.两次运行下面的程序,如果从键盘上分别输入 3和 2,则输出结果是_。 #includestdio.h main() int x; scanf(“%d“, if(x+2) printf(“%d“,x); else printf(“%d/n“,x-); (分数:2.50)A.4和 3B.4和 2C.4和 1D.3和 240.有以下程序: #includestdio.h main() int y=10; while(y-); printf(“y=%d/n“, y); 程序执行后的输出结果是_。(分数:1.00)A.y=0B.y=-1C.y=1D.while构成无限循环二级 C语言分类模拟
23、题 560答案解析(总分:58.50,做题时间:90 分钟)一、选择题(总题数:40,分数:58.50)1.有以下程序: # include stdio.h struct STU char name9; char sex; int score2; void f(struct STU a) struct STU b=“Zhao“,“m“,85,90; a1=b; main() struct STU c2=“Qian“,“f“,95,92,“Sun“,“m“,98,99; f(c); printf(“%s,%c,%d,%d,“,c0.name,c0.sex,c0.score0,c0.score1)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 分类 模拟 560 答案 解析 DOC
