【计算机类职业资格】二级C语言笔试-91及答案解析.doc
《【计算机类职业资格】二级C语言笔试-91及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-91及答案解析.doc(32页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-91 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.一个完整的 C 语言程序包含一个或多个函数,其中唯一不可缺少的函数是( )。(分数:1.00)A.库函数B.scanf 函数C.main 主函数D.printf 函数2.程序中头文件 type1.h 的内容是( )。#define N 5#define M1 N*3程序如下:#define “type1.h“#define M2 N*2main()int i;i=M1+M2; printf(“%d/n“,i);程序编译后运行的输出结果是( )。(分数:1.00)A.1
2、0B.20C.25D.303.下面程序的输出结果是( )。main()struct m1int a;int b;en2=1,3,2,7);printf(“%d/n“,en0.b/en0.a*en1.(分数:1.00)A.;A) 6B) 0C) 1D4.以下选项中合法的实型常数是( )。(分数:1.00)A.5E2.0B.E-3C2E0D.1.3E5.若有如下程序:main()static char*a3=“123“,“456“,“789“);char *b;b=a; +b;printf(“%s,%s/n“,*a,*a+1);printf(“%s,%s/n“,*b,b1);则程序运行后的输出结果
3、是( )。(分数:1.00)A.123,456, 456,789B.123,23456,56C.123,23 456,789D.123,456456,566.若有如下程序:int sub(int m)if(m=1|m=0) return 2;else return(sub(m-1)*sub(m-2);main()int n;scanf(“%d“,printf(“%d“,sub(n);如果从键盘输入 4回车,则程序运行后的输出结果是( )。(分数:1.00)A.8B.16C.24D.327.执行下面程序时,若输入 1、-5、6,则输出结果为( )。# include stdio.h# inclu
4、de math.h# define disc(a,b,c) b*b-4*a*cmain()float x1,x2; int a,b,c;scanf(“%d,%d,%d“,x1=(-b+sqrt(disc(a,b,c)/(2*(分数:1.00)A.;x2=(-b-sqr8.以下不正确的定义语句是( )。(分数:1.00)A.double x5=2.0,4.0,6.0,8.0,10.0;B.int y5=O,1,3,5,7,9;C.char c1=1,2,3,4,5;D.char c2=/x10,/xa,/x8;9.定义如下变量:int n=10;则下列循环的输出结果是( )。while(n7)-
5、n;printf(“%d/n“,n);(分数:1.00)A.1098B.987C.10987D.987610.若执行下述程序时,从键盘输入的数据是 3 和 6,则程序的输出结果是( )。#include stdio.hvoid main()int x,y,z;scanf(“%d%d“,z = y + x;if (xy)z = y + x;printf(“%d“,z);(分数:1.00)A.9B.3C.0D.有语法错误11.有以下程序:main()int a=5,b=4,c=3,d=2;if(abc)printf(“%d/n“,d);else if(c-1=d)=1)printf(“%d/n“,
6、d+1);elseprintf(“%d/n“,d+2)执行后输出结果是( )。(分数:1.00)A.2B.3C.4D.编译时有错,无结果12.若有说明:int*p,m=5,n;,以下正确的程序段是( )。(分数:1.00)A.p= scanf(“%d“,scanf(“%d“,D.p=p=13.执行下列程序时输入:123空格456空格789回车,输出结果是( )。main()char s100;int c, i;scanf(“%c“,scanf(“%d“,scanf(“%s“,s);printf(“%c,%d,%s/n“,c,i,s);(分数:1.00)A.1,456,789B.1,23,456
7、C.1,23,456,789D.123,456,78914.下列描述正确的是( )。(分数:1.00)A.C 语句能嵌套定义函数,但不可以嵌套调用函数B.C 语句不能嵌套定义函数,也不可以嵌套调用函数C.C 语句能嵌套定义函数,也可以嵌套调用函数D.C 语句不能嵌套定义函数,但可以嵌套调用函数15.以下函数值的类型是( )。fun (float x)float y;y=3*x-4;return y;(分数:1.00)A.intB.不确定C.voidD.float16.下列叙述中错误的是( )。(分数:1.00)A.一种数据的逻辑结构可以有多种存储结构B.数据的存储结构与数据处理的效率无关C.数
8、据的存储结构与数据处理的效率密切相关D.数据的存储结构在计算机中所占的空间不一定是连续的17.下列属于不合法的 main 函数命令行参数表示形式的是( )。(分数:1.00)A.main(int argv,char*argc)B.main(int argv,char*argc)C.main(int argv,char*arc)D.main(int argc,char*argv)18.下列叙述中正确的是( )。(分数:1.00)A.接口复杂的模块,其耦合程度一定低B.耦合程度弱的模块,其内聚程度一定低C.耦合程度弱的模块,其内聚程度一定高D.上述三种说法都不对19.下列程序段输出的字符串长度为(
9、 )。printf(“/aaa/ccc/bddd/“);(分数:1.00)A.11B.12C.13D.1720.x、y、z 被定义为 int 型变量,若从键盘给 x、y、z 输入数据,正确的输入语句是( )。(分数:1.00)A.INPUTx、y、z;B.scanf(“%d%d%d“,C.scanf(“%d%d%d“,x,y,z);D.read(“%d%d%d“,21.以下程序的输出结果是( )。main()int a=-1,b=4,k;k=(+a0)(分数:1.00)A.104B.103C.003D.00422.下列关系运算中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是(
10、)。(分数:1.00)A.选择B.连接C.投影D.并23.在 C 语言中,合法的长整型常数是( )。(分数:1.00)A.OLB.4962710C.324562float b;data;int *p;若要使 p 指向 data 中的 a 域,正确的赋值语句是( )。(分数:1.00)A.p=则计算表达式“a+=a-a*a”后的值是( )。(分数:1.00)A.0B.-12C.-24D.-827.在关系模型中,( )。(分数:1.00)A.为了建立一个关系,首先要构造数据的逻辑关系B.表示关系的二维表中各元组的每一个分量还可以分成若干数据项C.一个关系的属性名表称为关系模式D.一个关系可以包括多
11、个二维表28.有如下程序段:int a=14,b=15,x;char c=A;x=(ap=b=*p+;”执行后的结果是( )。(分数:1.00)A.a=3 b=3B.a=2 b=2C.a=2 b=1D.a=2 b=330.在结构化设计方法中生成的结构图(SC)中,带有箭头的连线表示( )。(分数:1.00)A.模块之间的调用关系B.程序的组成成分C.控制程序的执行顺序D.数据的流向31.若有如下程序:int m=1;main()int t=0,s=0;int m=4;s+=m;)t+=m;printf(“%d,%d/n“,s,t);则程序运行后的输出结果是( )。(分数:1.00)_32.设有
12、定义:10ng x=-123456L,则以下能够正确输出变量 x 值的语句是( )。(分数:1.00)A.printf(“x=%d/n“,x);B.printf(“x=%1d/n“,x);C.peintf(“x=%8dL/n“,x);D.printf(x=%LD/n“,x);33.若有如下定义:struct stuchar name9;int age;float score;);struct stu class10=“Li“,17,67,“Song“,19,80,“guo“,18,79,“Zhao“,16,69;根据上面的定义,若执行“printf(“%s:%d%f“,class3.name,
13、class3.age,class3.score);“则输出的正确结果是( )。(分数:1.00)_34.以下数据结构中不属于线性数据结构的是( )。(分数:1.00)A.队列B.线性表C.二叉树D.栈35.有以下程序: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(“%d/n“,m);程序运行后的输出结果是( )。(分数:1.00)A.1B.2C.3D.436.下列关于 E-R 图的描述中正确的是( )。(分数:1.00)A.E-R
14、 图只能表示实体之间的联系B.E-R 图只能表示实体和属性之间的联系C.E-R 图只能表示实体和属性D.E-R 图能表示实体、属性和实体之间的联系37.下面描述中,符合结构化程序设计风格的是( )。(分数:1.00)A.使用顺序、选择和重复(循环)3 种基本控制结构表示程序的控制逻辑B.模块只有一个入口,可以有多个出口C.注重提高程序的执行效率D.不使用 goto 语句38.在一棵二叉树上第 5 层的结点数最多是( )。(分数:1.00)A.8B.16C.32D.1539.以下选项中合法的字符常量是( )。(分数:1.00)A.“B”B./O1OC.68D.D40.以下程序的输出结果是( )。
15、main()char a10=1,2,3,4,5,6,7,8,9,/0),*p;int i;i=8;p=a+i;printf(“%s/n“,p-3);(分数:1.00)A.6B.6789C.6D.78941.下面程序的输出结果是( )。char s()=“ABCD“,*p;main()for(p=s;ps+4;p+)printf(“%s/n“,p); )(分数:2.00)A.ABCD BCD CD DB.A B C DC.D C B AD.ABCD ABC AB A42.下面的程序运行后输出为( )。#include stdio.h# include math.hmain()int a,b;f
16、loat c;b = 5;c = 6;c = b+7;b = c+1;a = sqrt(double)b+c);printf(“%d,%f,%d“,a+6,C,b);(分数:2.00)A.11.000000,12.0000000,13.000000B.11.000000,12.000000,13C.11.0000000,12,13D.11,12.000000,1343.有以下程序:main(int arge,char*argv)int n,i=0;while(arv1i!=/0n=fun( );i+;printf(“%d/n“,n*argc)int fun()static int s=0;s+
17、=1;return s;假设程序经编译、连接后生成可执行文件 exam.exe,若输入以下命令行exam 123回车则运行结果为( )。(分数:2.00)A.6B.8C.3D.444.下面程序段的运行结果是( )。char a=“abcdefgh“;char *p=a;p+=3;printf(“%d/n“,strlen(strcpy(p,“ABCD“);(分数:2.00)A.8B.12C.4D.745.设有 int x=11:表达式(x+*1/3)的值是( )。(分数:2.00)A.3B.4C.11D.1246.若有定义:int a=8,b=4,C;执行语句“c=a/b+0.4;”后,c 的值
18、为( )。(分数:2.00)A.1.4B.1C.2.0D.247.若有如下程序:main()int x=14,32,65,69,78,59,*t;t= x +5;printf(“%d/n“,*-t);则程序执行后的输出结果是( )。(分数:2.00)A.78B.65C.32D.1448.若有以下定义:char a;int b;float c;double d;则表达式“a*b+d-c”值的类型为( )。(分数:2.00)A.floatB.intC.charD.double49.若有如下程序:main()int x=3,y=4,z;z=(x+(y-=X*X);printf(“%d,%d/n“,y
19、,z);则程序执行后的输出结果是( )。(分数:2.00)A.-4,2B.-5,-2C.-5,-1D.4,-250.设有如下定义:struct sschar name10;int age;char sex;std3,*p=std;下面各输入语句中错误的是( )。(分数:2.00)A.scanf(“%d“,C.scanf(“%c“,二、填空题(总题数:17,分数:40.00)51.在深度为 5 的完全二叉树中,度为 2 的结点数最多为 【1】 。(分数:2.00)填空项 1:_52.数据的逻辑结构在计算机存储空间中的存放形式称为数据的 【2】 。(分数:2.00)填空项 1:_53.若按功能划分
20、,软件测试的方法通常分为白盒测试方法和 【3】 测试方法。(分数:2.00)填空项 1:_54.在关系运算中, 【4】 运算是对两个具有公共属性的关系所进行的运算。(分数:2.00)填空项 1:_55.实体之间的联系可以归结为一对一的联系,一对多的联系与多对多的联系。如果一个学校有许多学生,而一个学生只属于一个学校,则实体集学校与实体集学生之间的联系属于 【5】 的联系。(分数:2.00)填空项 1:_56.已知字符 A 的 ACSII 码值为 65,以下语句的输出结果是 【6】 。char ch=B;printf(“%c %d/n“,ch,ch);(分数:2.00)填空项 1:_57.以下程
21、序段的输出结果是 【7】 。main()int a=2,b=2,c=4;a*=16+(b+)-(+C);printf(“%d“,a);(分数:2.00)填空项 1:_58.有以下程序main()int t=1,i=5;for( ; i=0; i-) t*=i;printf(“%d/n“,t);执行后输出结果是 【8】 。(分数:2.00)填空项 1:_59.若有以下程序:main()int a=4, b=3, c=5, t=0;if(ab) t=a; a=b; b=t;if(ac) t=a; a=c; c=t;printf(“%d%d%d/n“,a,b,C);执行后输出结果是 【9】 。(分数
22、:2.00)填空项 1:_60.有以下程序:#include stdio.hmain()char ch1,ch2; int n1,n2;ch1=getchar(); ch2=getchar();n1=ch1-0; n2=n1*10+(ch2-0);printf(“%d/n“,n2);程序运行时输入 12回车,执行后输出结果是 【10】 。(分数:2.00)填空项 1:_61.有以下程序:void f( int y,int *x)y=y+*x; *x=*x+y; main()int x=2,y=4;f(y,ptintf(“%d %d/n“,x,y);执行后输出结果是 【11】 。(分数:2.00
23、)填空项 1:_62.若 x、y 和 z 均是 int 型变量,则执行下面表达式后的 x 值为 【12】 。x=(y=4)+(z=3)(分数:2.00)填空项 1:_63.以下程序中,for 循环体执行的次数是 【13】 。#define N 2#define M N+1#define K M+1*M/2main()int i;for(i=1;iK;i+). (分数:2.00)填空项 1:_64. (分数:4.00)填空项 1:_65.若有如下程序:main()int x=5,y,*t;t=y=+(*t);printf(“%d,%d“,x,y);则程序执行后的 x 值为 【16】 ,y 的值为
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 91 答案 解析 DOC
