【计算机类职业资格】二级C语言模拟641及答案解析.doc
《【计算机类职业资格】二级C语言模拟641及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言模拟641及答案解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言模拟 641及答案解析(总分:170.00,做题时间:90 分钟)一、选择题(总题数:40,分数:60.00)1.有以下程序 #include stdio.h void main() int a=1,b=0; printf(%d,“,b=(a+)+(a+); printf(“%d/n“,a+b); 程序运行后的输出结果是_。(分数:2.50)A.4,6B.2,5C.3,5D.2,62.有以下程序: #includestdio.h main() int a34=1,3,5,7,9,11,13,15,17,19,21,23,(*p)4=a,i,j,k=0; for(i=0;i3;i+)
2、 for(j=0;j2;j+)k=k+*(*(p+i)+j); printf(“%d/n“,k); 程序运行后的输出结果是_。(分数:1.00)A.108B.68C.99D.603.有以下程序: #includestdio.h main() char X=“A“; x=(x=“A“ printf(“%c/n“, x); 程序的输出结果是_。(分数:2.50)AABaCZDz4.若有正确定义语句: double x=5.16894; 语句 printf(“%f/n“, (int)(x*1000+0.5)/(double)1000);的输出结果是(分数:2.00)A.输出格式说明与输出项不匹配,输
3、出无定值B.5.170000C.5.168000D.5.1690005.有以下程序: #includestdio.h main() int x=1, y=0; if(!x)y+; else if(x=0) if(x)y+=2; else y+=3; printf(“%d/n“, y); 程序运行后的输出结果是_。(分数:1.00)A.3B.2C.1D.06.有三个关系 R、S 和 T如下: R A B C a 1 2 b 2 1 c 3 1 S A D c 4 T A B C D c 3 1 4 则由关系 R和 S得到关系 T的操作是_。(分数:1.00)A.自然连接B交C.投影D并7.有以下
4、程序: #includestdio.h main() int c=0, k; for(k=1; k3; k+) switch(k) default: c+=k; case2: c+; break; case4: c+=2; break; printf(“%d/n“, c); 程序运行后的输出结果是_。(分数:1.00)A.3B.5C.7D.98.有以下程序: #includesdtio.h #includestring.h main() int i,len; char b=“Welcome you to Beijing!“; len=strlen(b); for(i=0;ilen;i+) if
5、(bi=“) strcpy(b,b+i+1); i=0; printf(“%s/n“,b); 程序运行后的输出结果是_。(分数:1.00)A.Beijing!B.toBeijing!C.WelcomeyoutoBeijing!D.youtoBeijing!9.下列选项中不属于结构化程序设计原则的是_。(分数:1.00)A.可封装B.自顶向下C.模块化D.逐步求精10.已定义以下函数: int fun(int *p) return *p; fun函数返回值是_。(分数:2.50)A.一个整数B.不确定的值C.形参 p中存放的值D.形参 p的地址值11.下列叙述中正确的是_。(分数:1.00)A.
6、栈是“先进先出”的线性表B.队列是“先进后出”的线性表C.循环队列是非线性结构D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构12.有以下程序: #includestdio.h int f(int n); main() int a=3, s; s=f(a); s=s+f(a); printf(“%d/n“, s); int f(int n) static int a=1; n+=a+; return n; 程序运行后的输出结果是_。(分数:1.00)A.7B.8C.9D.1013.以下选项中,能用作用户标识符的是_。(分数:2.00)A._0_B.8_8C.voidD.unsign
7、ed14.运算符内的数据类型只能是_。(分数:1.00)A.int和 charB.floatC.doubleD.char15.在数据库系统的内部结构体系中,索引属于_。(分数:2.50)A.模式B.内模式C.外模式D.概念模式16.有以下程序: #includestdio.h main() int m=1,n=2,*p= r=p; p=q; q=r; printf(“%d,%d,%d,%d/n“,m,n,*p,*q); 程序的运行结果是_。(分数:2.00)A.2,1,1,2B.1,2,1,2C.2,1,2,1D.1,2,2,117.若 a=3,b=4,c=5,d=6,则条件表达式 ab?a:
8、cd?c:d 的值是_。(分数:2.00)A.4B.3C.2D.118.数据库管理系统中负责数据模式定义的语言是_。(分数:1.00)A.数据定义语言B.数据管理语言C.模式描述语言D.数据控制语言19.下列说法不正确的是 _ 。(分数:2.00)A.调用函数时,实参可以是表达式B.调用函数时,实参与形参可以共用内存单元C.调用函数时,将实参的值复制给形参,使实参变量和形参变量在数值上相等D.调用函数时,实参与形参的类型必须一致20.以下叙述中正确的是_。(分数:1.00)A.只能在函数体内定义变量,其他地方不允许定义变量B.常量的类型不能从字面形式上区分,需要根据类型名来决定C.预定义的标识
9、符是 C语言关键字的一种,不能另作他用D.整型常量和实型常量都是数值型常量21.设 x=015,则 x=x017的值是_。(分数:2.50)A.00001111B.11111101C.00000010D.1100000022.对图书进行编目时,图书有如下属性:ISBN 书号,书名,作者,出版社,出版日期。能作为关键字的是_。(分数:1.00)A.ISBN书号B.书名C.作者,出版社D.出版社,出版日期23.数据库系统的三级模式不包括_。(分数:1.00)A.概念模式B.内模式C.外模式D.数据模式24.若有定义: float x=1.5; int a=1, b=3, c=2; 则正确的 swi
10、tch语句是_。(分数:1.00)A.switch(a+b)case 1:printf(“*/n“);case 2+1:printf(“*/n“);B.switch(int)x);case 1:printf(“*/n“);case 2:printf(“*/n“);C.switch(x)case 1.0:printf(“*/n“);case 2.0:printf(“*/n“);D.switch(a+b)case 1:printf(“*/n“);case c:printf(“*/n“);25.若变量已正确定义,在 if(W)printf(“%d/n“,k);中,以下不可替代 W的是_。(分数:1.
11、00)A.ab+cB.ch=getchar()C.a=b+cD.a+26.下列叙述中错误的是_。(分数:1.00)A.在数据库系统中,数据的物理结构必须与逻辑结构一致B.数据库技术的根本目标是要解决数据的共享问题C.数据库设计是指在已有数据库管理系统的基础上建立数据库D.数据库系统需要操作系统的支持27.下面程序的运行结果是_。 y=5;x=14;y=(x=3*y,x+6),x-1); print f(“x=%d,y=%d“,x,y);(分数:2.50)A.x=27,y=27B.x=12,y=13C.x=15,y=14D.x=y=2728.有以下结构体说明、变量定义和赋值语句 struct S
12、TD char name10; int age; char sex; s5,*ps; ps= 则以下 scanf函数调用语句有错误的是_。(分数:1.00)A.scantf(“%s“, s0.name);B.scanf(“%d“, C.scanf(“%c“, D.scanf(“%d“, ps-age);29.下面描述中错误的是_。(分数:1.50)A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据结构与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具30.有以下程序: #include studio. h #define F(X, Y
13、) (X)*(Y) main ( ) int a=3, b=4; printf(“%d/n“, F(a+, b+); (分数:1.00)A.12B.15C.16D.2031.以下叙述中错误的是_。(分数:1.00)A.用户定义的函数中可以没有 return语句B.用户定义的函数中可以有多个 return语句,以便可以调用一次返回多个函数值C.用户定义的函数中若没有 return语句,则应当定义函数为 void类型D.函数的 return语句中可以没有表达式32.下述程序执行的输出结果是_。 # includestdio.h main() char a24; strcpy(a, “are“);
14、strcpy(a1,“you“); a03=“; printf(“%s/n“,a); (分数:1.00)A.areyouB.youC.areD.33.以下程序的输出结果是_。 typedef unionlong a1; int b3; char c10; S; S t; main() printf(“%d/n“,sizeof(t);(分数:2.00)A.32B.16C.10D.2034.若有定义语句 char c=“/101“; 则变量 c在内存中占_。(分数:2.50)A.2个字节B.1个字节C.3个字节D.4个字节35.以下选项中有语法错误的是_。(分数:1.00)A.char*str=“
15、guest“;B.char str10=“guest“;C.char*str3; strt=“guest“;D.char str310; str1=“guest“;36.若有定义语句:int a=3,b=2,c=1;,以下选项中错误的赋值表达式是_。(分数:2.50)A.a=(b=4)=3;B.a=b=c+1;C.a=(b=4)+c;D.a=1+(b=c=4);37.有以下程序 #includestdio.h main() int a1,a2;char c1,c2; scanf(“%d%c%d%c“, printf(“%d,%c,%d,%c“,a1,c1,a2,c2); 若想通过键盘输入,使得
16、 a1的值为 12,a2 的值为 34,c1 的值为字符 a,c2 的值为字符 b,程序输出结果是:12,a,34,b 则正确的输入格式是_。 A B12a34bCR C12,a,34,bCR D (分数:1.00)A.B.C.D.38.下列叙述中错误的是_。(分数:2.50)A.C程序可以由多个程序文件组成B.一个 C语言程序只能实现一种算法C.C程序可以由一个或多个函数组成D.一个 C函数可以单独作为一个 C程序文件存在39.下列叙述中正确的是_。(分数:1.00)A.程序可以作为算法的一种表达方式B.算法的有穷性是指算法的规模不能太大C.算法的复杂度用于衡量算法的控制结构D.算法的效率与
17、数据的存储结构无关40.若定义了以下函数: void f() *p(double*)malloc (10 * sizeof (double); p是该函数的形参,要求通过 p把动态分配存储单位的地址传回主调函数,则形参 p的正确定义应当是 ( )(分数:1.00)A.double*pB.float* *pC.double* *pD.float*p二、程序填空题(总题数:1,分数:30.00)41.给定程序中,函数 fun的功能是:将 a所指 35矩阵中第 k列的元素左移到第 0列,第 k列以后的每列元素依次左移,原来左边的各列依次绕到右边。 例如,有下列矩阵: 1 2 3 4 5 1 2 3
18、4 5 1 2 3 4 5 若 k为 2,程序执行结果为 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的 BLANK1.C中。 不得增行或删行,也不得更改程序的结构! 给定源程序如下。 #includestdio.h #define M 3 #define N 5 void fun(int(*a)N,int k) int i,j,p,temp; /*found*/ for(p=1;p= 1;p+) for(i=0;iM;i+) temp=ai0; /*found*/ for(j
19、=0;j 2;j+) aij=aij+1; /*found*/ aiN-1= 3; main() int xMN= 1,2,3,4,5,1,2,3,4,5,1,2,3,4,5,i,j; printf(“The array before moving:/n/n“); for(i=0;iM;i+) ( for(j=0;jN;j+)printf(“%3d“,xij); printf(“/n“); fun(x,2); printf(“The array after moving:/n/n“); for(i=0;iM;i+) for(j=0;jN;j+)printf(“%3d“,xij); printf
20、(“/n“); (分数:30.00)三、程序修改题(总题数:1,分数:40.00)42.下列给定程序中,函数 proc()的功能是:计算 n!。例如,若输入:6,则输出:6!=720.000000。 请修改程序中的错误,使它能得出正确的结果。 注意:不要改动 main()函数,不得增行或删行,也不得更改程序的结构。 试题程序: #includestdio.h #includeconio.h double proc(int n) double result=1.0; /*found* if n=0 return 1.0; if(n1 void main() int n; printf(“Inpu
21、t N:“); scanf(“%d“, printf(“/n/n%d!=%1f/n/n“, n, proc(n); (分数:40.00)_四、程序设计题(总题数:1,分数:40.00)43.函数 fun的功能是:将 a、b 两个两位正整数合并成一个新的整数放在 c中。合并的方式是:将 a中的十位和个位数依次放在变量 c的百位和个位上,b 中的十位和个位数依次放在变量 c的干位和十位上。 例如,当 a=45,b=12,调用该函数后 c=1425。 注意:部分源程序给出如下。 请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序: #inclu
22、deconio.h #includestdio.h void fun(int a,int b,long*c) main() int a,b; long c; printf(“Input a,b:“); scanf(“%d%d“,a,b); fun(a,b,c); printf(“The result is:%ld/n“,c); (分数:40.00)_二级 C语言模拟 641答案解析(总分:170.00,做题时间:90 分钟)一、选择题(总题数:40,分数:60.00)1.有以下程序 #include stdio.h void main() int a=1,b=0; printf(%d,“,b=
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 模拟 641 答案 解析 DOC
