【计算机类职业资格】二级C语言模拟646及答案解析.doc
《【计算机类职业资格】二级C语言模拟646及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言模拟646及答案解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言模拟 646及答案解析(总分:144.50,做题时间:90 分钟)一、选择题(总题数:40,分数:60.50)1.有以下程序: #includestdio.h main() char c25=“6938“,“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.6938B.9824C.4528D.63852.以下叙述中正确的是_。(分数:2.00)A.break语句不
2、能用于提前结束 for语句的本层循环B.使用 break语句可以使流程跳出 switch语句体C.continue语句使得整个循环终止D.在 for语句中,continue 与 break的效果是一样的,可以互换3.程序调试的任务是_。(分数:1.00)A.设计测试用例B.验证程序的正确性C.发现程序中的错误D.诊断和改正程序中的错误4.有以下程序 #includestdio.h main() int x=8; for(;x0;x-) if(x%3) printf(“%d,“,x-); continue; printf(“%d,“,-x); 程序的运行结果是_。(分数:4.00)A.8,5,4
3、,2,B.8,7,5,2,C.9,7,6,4,D.7,4,2,5.有以下程序: # 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); printf(“%s,%c,%d,%d
4、/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,906.下列字符串是标识符的是_。(分数:2.00)A.aaB.a-classC.intD.LINE 17.有以下程序 int f(int b 4) int i,j,s=0; for(j=0; j4; j+) i=j; if (i2) i=3-j; s+=bi j;
5、 return s; main ( ) int a4 4 =1,2,3,4, 0,2,4,6, 3,6,9,12), 3,2,1,0; print f ( “%d/n“ , f(a); 执行后的输出结果是(分数:1.00)A.12B.11C.18D.168.关系数据模型 _(分数:1.00)A.只能表示实体间的 1:1联系B.只能表示实体间的 1:n联系C.只能表示实体间的 m:n联系D.可以表示实体间的上述 3种联系9.构成 C程序的三种基本结构是(分数:2.00)A.顺序结构、转移结构、递归结构B.顺序结构、嵌套结构、递归结构C.顺序结构、选择结构、循环结构D.选择结构、循环结构、嵌套结构
6、10.设计软件结构是在软件生命周期的 _ 。(分数:2.00)A.软件定义期B.软件开发期C.软件维护期D.以上 3个都不是11.以下选项中,能用作用户标识符的是_。(分数:2.00)A._0_B.8_8C.voidD.unsigned12.以下叙述中正确的是_。(分数:2.00)A.用 C语言编写的程序只能放在一个程序文件中B.C程序书写格式严格,要求一行内只能写一个语句C.C程序中的注释只能出现在程序的开始位置和语句的后面D.C程序书写格式自由,一个语句可以写在多行上13.下列叙述中正确的是_。(分数:1.00)A.程序执行的效率与数据的存储结构密切相关B.程序执行的效率只取决于程序的控制
7、结构C.程序执行的效率只取决于所处理的数据量D.以上三种说法都不对14.若已有定义语句:int a,b,c;,且变量已正确赋初值,则以下选项中正确的赋值表达式是_。(分数:1.00)A.a=(b=c) +8;B.(a=b)=c=9;C.a=(b=c)=“A“;D.a+b=c+1;15.一棵二叉树中共有 80个叶子结点与 70个度为 1的结点,则该二叉树中的总结点数为_。(分数:1.00)A.219B.229C.230D.23116.有以下程序: main() int a=2,4,6,8,10),y=0,x,*P; P=a1; for(x=1;x3;x+)y+=px; printf(“%d/n“
8、,y); 程序运行后的输出结果是_。(分数:2.00)A.10B.11C.14D.1517.整型变量 x和 Y的值相等,且为非 0值,则以下选项中结果为 0的表达式是_。(分数:2.00)A.XYB.X|YC.XB.printf(“%c/in“,“a“-32);C.printf(“%d/n“,“A“);D.printf(“%c/n“,“B“-1);19.下列关系表达式中,结果为“假”的是_。(分数:1.00)A.(3+4)6B.(3!=4)2C.3=4|3D.(34)=120.若有定义语句: char s10=“1234567/0/0“; 则 strlen(s)的值是_。(分数:2.50)A.
9、7B.8C.9D.1021.若有定义:int*p3;,则以下叙述中正确的是_。(分数:2.00)A.定义了一个基类型为 int的指针变量 p,该变量具有 3个指针B.定义了一个指针数组 p,该数组含有 3个元素,每个元素都是基类型为 int型的指针C.定义了一个名为*p 的整型数组,该数组含有 3个 int类型元素D.定义了一个可指向一维数组的指针变量 p,所指一维数组具有 3个 int类型元素22.若变量已正确定义为 float型,要通过输入语句:scanf(“%f%f%f“, 给 a赋值 11.0,b赋值 22.0,c 赋值 33.0,不正确的输入形式是_。(分数:1.00)A.11223
10、3B.11.0,22.0,33.0C.11.022.0 33.0D.11223323.有以下定义和语句 struct workers int num;char name20;char c; struct int day;int month;int year; s; ; struct workers w,*pw; pw= 能给 w中 year成员赋值为 1980的语句是_。(分数:1.00)A.s.year=1980;B.year=1980;C.pw-year=1980;D.*pw.year=1980;24.若有定义语句: char s10=“1234567/0/0“; 则 strlen(s)的
11、值是_。(分数:2.00)A.7B.8C.9D.1025.以下选项中,合法的实数是_。(分数:1.00)A.1.5E2B.E1.1C.2.10ED.1.9E1.426.有以下程序: #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); 程序运行后的输出结果是_。(分数:1.00)A.2,1,1,2B.1,2,1,2C.2,1,2,1D.1,2,2,127.若有以下定义和语句: #include stdio.h char s110=“abcd!“, *s2
12、=“/n123/“; printf(“%d %d/n“, strlen(s1), strlen(s2); 则输出结果是_。(分数:2.50)A.10 7B.10 5C.5 5D.5 828.C语言主要是借助_的手段来实现程序模块化。(分数:1.00)A.定义函数B.定义常量和外部变量C.使用丰富的数据类型D.使用三种基本结构语句29.下面选项中的程序段,没有编译错误的是_。(分数:2.00)A.char*sp, s10; sp=“Hello“;B.char*sp, s10; s=“Hello“;C.char str110=“computer“, str210; str2=str1;D.char
13、 mark; mark=“PROGRAM“;30.以下不能对文件进行输出的库函数是_。(分数:1.00)A.fwiteB.fputeC.fpoutD.fprintf31.设有如下函数定义 #includestdio.h int fun(int k) if(k1)return 0; else if(k=1)return 1; else return fun(k-1)+1; 若执行调用语句:n=fun(3);,则函数 fun总共被调用的次数是_。(分数:2.00)A.3B.2C.4D.532.以下程序执行后 x的值是 _ 。 #include stdio.h main() int x,y=252,
14、i=386,*m= x=(z= =m); printf(“%d“,x); (分数:1.00)A.252B.1C.0D.运行时出错,x 无定值33.下列说法不正确的是 _ 。(分数:2.00)A.调用函数时,实参可以是表达式B.调用函数时,实参与形参可以共用内存单元C.调用函数时,将实参的值复制给形参,使实参变量和形参变量在数值上相等D.调用函数时,实参与形参的类型必须一致34.有以下程序 #include stdio.h void main() int n=2,k=1; while(!(k0|n+); printf(“%d %d/n“,k,n); 程序运行后的输出结果是_。(分数:2.50)A
15、.0 2B.1 3C.5 7D.1 235.有两个关系 R、S 如下: (分数:1.00)A.选择B.投影C.插入D.连接36.有如下程序: #include stdio.h int change(int*data) return(*data)+; main() int data=123; change( printf(“%d,“,data); data = change( printf(“%d,“,data); printf(“/n“); 程序运行后的输出结果是_。(分数:1.00)A.124,124,B.123,124,C.124,123,D.123,123,37.以下程序的输出结果是 _
16、 #includestdioh main() int i=0,a0; while(i20) for(;)if(i%10)=0)break;else i-; i+11;a+i; printf(“%d/n“,A) ; (分数:1.00)A.21B.32C.33D.1138.阅读以下程序: #include stdio.h main() int x; scanf(“% d“, if(x-5)printf(“% d“, x); else printf(“% d“, x+); 程序运行后,如果从键盘输入 5,则输出结果是_。(分数:1.00)A.3B.4C.5D.639.已知字母 A的 ASCII码为十
17、进制的 65,下面程序 main() char ch1,ch2; ch1=“A“+“5“-“3“; ch2=“A“+“6“-“3“; printf(“%d,%c/n“,ch1,ch2); 的输出是_。(分数:1.00)A.67,DB.B,CC.C,DD.不确定的值40.有以下程序 #include stdio.h void fun(char *t,char *s) while(*t!=0) t+; while(*t+=*s+)!=0); main() char ss10=“acc“,aa10=“bbxxyy“; fun(ss,aa); printf(“%s,%s/n“,ss,aa); 程序的运
18、行结果是_。(分数:1.00)A.accbbxxyy,bbxxyyB.acc,bbxxyyC.accxxyy,bbxxyyD.accxyy,bbxxyy二、程序填空题(总题数:1,分数:30.00)41.下列给定程序中,函数 fun的功能是:找出形参 s所指字符串中出现频率最高的字母(不区分大小写),并统计出其出现的次数。 例如,形参 s所指的字符串为:abcAbsmaxless,程序执行后的输出结果为: leffer“a“:3times leffer“s“:3times 请在程序的下划线处填入正确的内容,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构
19、! 试题程序: #includestdio.h #includestring.h #includectype.h void fun(char*s) int k26=0,n,i,max=0;char ch; while(*s) if(isalpha(*s) /*found*/ ch=tolower( 1); n=ch-“a“; /*found*/ kn+= 2; s+; /*found*/ if(maxkn)max= 3; printf(“/nAfter count:/n“); for(i=0;i26;i+) if(ki=max) printf(“/nletter“%c“:%d times/n“
20、,i+“a“,ki); main() char s81; printf(“/nEnter a string:/n/n“); gets(s);fun(s); (分数:30.00)三、程序修改题(总题数:1,分数:30.00)42.下列给定程序中,函数 fun的功能是:找出一个大于给定整数 m且紧随 m的素数,并作为函数值返回。请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #includestdlib.h #includeconio.h #includestdio.h int fun(int m) int i,k; f
21、or(i=m+1;i+) for(k=2;ki;k+) /*found*/ if(i%k!=0) break; /*found*/ if(ki) return(i); void main() int n; system(“CLS“); printf(“/nPlease enter n:“); scanf(“%d“,n); printf(“%d/n“,fun(n); (分数:30.00)_四、程序设计题(总题数:1,分数:24.00)43.请编写函数 fun,其功能是分别统计形参 t所指二维数组中字母 A和 C的个数。 注意:请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括
22、号中填入所编写的若干语句。试题程序: #includestdio.h #includestdlib.h #define M 14 void NONO(); void fun(char(*t)M,int*a,int*c) void get(char(*s)M) int i,j; for(i=0;iM;i+) for(j=0;jM;j+) sij=65+rand()%12;printf(“%c“,sij); printf(“/n“); main() char aMM; int x,y; get(a); fun(a, printf(“A=%d C=%d/n“,x,y); NONO(); void N
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 模拟 646 答案 解析 DOC
