【计算机类职业资格】二级C语言笔试-216及答案解析.doc
《【计算机类职业资格】二级C语言笔试-216及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-216及答案解析.doc(25页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-216 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.一个关系中属性个数为 1时,称此关系为( )。(分数:2.00)A.对应关系B.单一关系C.一元关系D.二元关系2.下列叙述中正确的是( )。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的关系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小D.上述 3种说法都不对3.以下程序的输出结果是( )。main()char str 10=“china“,“beijing“),* p=str;pr
2、intf(“%s/n“ ,p+10);(分数:2.00)A.ChinaB.BeijingC.ngD.ing4.以下程序的输出结果是( )。main()int i;for (i=0;i3;i+)switch(i) case O:printf(“%d“,i);case 2:printf(“%d“,i);default:printf(“%d“,i);(分数:2.00)A.000102B.000020C.000122D.0001115.对两个数组 a和 b进行下列初始化:char m=“1234567“;char n=1,2,3,4,5,6,7;则下列叙述正确的是()。(分数:2.00)A.数组 m与
3、数组 n完全相同B.数组 m与数组 n长度相同C.数组 m比数组 n长 1D.数组 m与数组 n中都存放字符串6.下列变量声明合法的是( )。(分数:2.00)A.short a=1.4e-1;B.double b=1+3e2.8;C.long do=0xfdaL;D.float 2_aaa=1e-3;7.有如下程序:# includestdio.hmain()FILE *fp1;fp1=fopen(“f1.txt“,“w“);fprintf(fp1,“abc“);fclose(fp1);若文本文件 f1.txt中原有内容为:good,则运行以上程序后文件 f1.txt中的内容为( )。(分数
4、:2.00)A.goodabcB.abcdC.abcD.abcgood8.运行下列程序,若从键盘输入字符“a”,则输出结果是( )。char c:c=getchar();if(c=ac=g)c=c+4;else if(c=gc=2)c=c-21;else printf(“input error!/n“);putchar(c);(分数:2.00)A.fB.tC.eD.d9.设 x为 int型变量,则执行以下语句后,x 的值为( )。x=10;x=x-=x-x;(分数:2.00)A.10B.20C.40D.3010.下列程序的运行结果是( )。# includestdio.h# define AD
5、D(x) x+xmain()int m=1,n=2,k=3;int s=ADD(m+n)*k;printf(“s=%d”,s);(分数:2.00)A.sum=18B.sum=10C.sum=9D.sum=2511.与“y=(x0? 1:x0?-1:0)”;的功能相同的 if语句是( )。(分数:1.00)A.if(x0)y=1;B.if(x)else if(x0)y=1; if(x0)y=1;else y=0; else if(x0)y=-1;else y=0;C.y=-1D.y=0;if(x) if(x=0)if(x0)y=1; if(x=0)y=1;else if(x=0)y=0; els
6、e y=-1;else y=-1;12.若某二叉树的前序遍历访问顺序是 abdgcefh,中序遍历访问顺序是 dgbaechf,则其后序遍历的结点访问顺序是( )。(分数:1.00)A.bdgcefhaB.gdbecfhaC.bdgaechfD.gdbehfca13.下列程序执行后的输出结果是( )。main()int a33,*p,i;p=a00;for(i=p;i9;i+)pi=i+1;printf(“%d/n“,a12);(分数:1.00)A.3B.6C.9D.随机数14.设 x=011050,设 x=x01252 的值是( )。(分数:1.00)A.0000001000101000B.
7、1111110100011001C.0000001011100010D.110000000010100015.三种基本结构中,能简化大量程序代码的是( )。(分数:1.00)A.顺序结构B.分支结构C.选择结构D.重复结构16.s1和 s2已正确定义并分别指向两个字符串。若要求:当 s1所指串大于 s2所指串时,执行语句 S;则以下选项中正确的是( )。(分数:1.00)A.if(s1s2)S;B.if(strcmp(s1,s2)S;C.if(strcmp(s2,s10)S;D.if(strcmp(s1,s20)S;17.下列程序执行的输出结果是( )。# includestdio.hmain
8、()char a24;strcpy(a,“are“); strcpy(a1,“you“);a03=;printf(“%s/n“ ,a);(分数:1.00)A.areyouB.youC.areD.18.下列程序输出结果是( )。# includestdio.hmain()char a=a,b,c,d,e,f,/0);int i,j;i=sizeof(a);j=strlen(a);printf(“%d,%d“,i,j);(分数:1.00)A.7,7B.7,6C.6,6D.6,719.以下程序的输出结果是( )。main()int i=0,s=0;for(;)if(i=3|i=5) continue
9、;if(i=6) break;i+;s+=i;printf(“%d/n“ ,s);(分数:1.00)A.10B.13C.21D.程序陷入死循环20.以下程序的输出结果是( )。int f(int A)return a%2;main()int s8=1,3,5,2,4,6,i,d=0;f.r(i=0;f(s8);i+)d+=si;printf(“%d/n“,d);(分数:1.00)A.9B.11C.19D.2121.有如下程序:main()int a=2,b=-1,c=2;if(a0)if(b0)c=0;else c+;printf(“%d/n“,c);该程序的输出结果是( )。(分数:2.00
10、)A.0B.1C.2D.322.假设 a和 b为 int型变量,则执行以下语句后 b的值为( )。a=1;b=10;dob-=a;a+;while(b-0);(分数:2.00)A.9B.-2C.-1D.823.下列程序的输出结果是( )。# includestdio.hmain()int i;for(i=1;i=10,i+)if(i*i=20)(i*i=100)break;printf(“%d/n“,i*i);(分数:2.00)A.49B.36C.25D.6424.有以下程序:int fun(int x)int p;if(x=0|x=1) return(3);p=x-fun(x-2);retu
11、rn p;main()printf(“%d/n“,fun(7);执行后的结果是( )。(分数:2.00)A.7B.3C.2D.025.若有定义“float a=25,b,*p=b;”,则下列对赋值语句“*p=a;”和“p=a;”的正确解释为( )。(分数:2.00)A.两个语句都是将变量 a的值赋予变量 pB.*p=a是使 p指向变量 a,而 p=a 是将变量的值赋予变量指针 pC.*p=a是将变量 a的值赋予变量 b,而a 是使 p指向变量 aD.两个语句都是使 p指向变量 a26.执行下列程序后,变量 a,b,c的值分别是( )。int x=5,y=4;int a,b,c;a=(-x=y+
12、)?x:+y;b=+x:c=y;(分数:2.00)A.a=5,b=5,c=5B.a=4,b=5,c=5C.a=5,b=6,c=5D.a=1,b=5,c=627.若有以下定义:char a;int b;float c:double d;则表达式 a*b+b-c值的类型为( )。(分数:2.00)A.floatB.intC.charD.double28.有以下函数:char fun(char*p)return p;该函数的返回值是( )。(分数:2.00)A.无确切的值B.形参 p中存放的地址值C.一个临时存储单元的地址D.形参 p自身的地址值29.下列选择中,不能用作标识符的是( )。(分数:2
13、.00)A._1234_B._1_2C.int_2_D.2_int_30.有以下结构体说明和变量的定义,且指针 p指向变量 a,指针 q指向变量 b,则不能把结点 b连接到结点 a之后的语句是( )。struct nodechar data;struct node*next;a,b,*p=a,*q=b;(分数:2.00)A.next=q;B.next=b;C.p-next=b;D.(*p).next=q;31.在结构化分析方法中,数据字典的作用是( )。(分数:2.00)A.存放所有需要处理的原始数据B.存放所有处理的结果C.存放所有程序文件D.描述系统中所用到的全部数据和文件的有关信息32.
14、在 C语言中,函数返回值的类型最终取决于( )。(分数:2.00)A.函数定义时在函数首部所说明的函数类型B.return语句中表达式值的类型C.调用函数时主调函数所传递的实参类型D.函数定义时形参的类型33.下列程序执行后的输出结果是( )。main()int x=f; printf(“%c/n“,A+(x-a+1);(分数:2.00)A.GB.HC.ID.J34.已知函数 fread的调用形式为“fread(buffer,size,count,fp);”,其中 buffer代表的是( )。(分数:2.00)A.存放读入数据项的存储区B.一个指向所读文件的文件指针C.一个指针,是指向输入数据
15、存放在内存中的起始地址D.一个整型变量,代表要读入的数据项总数35.概要设计中要完成的事情是( )。(分数:2.00)A.系统结构和数据结构的设计B.系统结构和过程的设计C.过程和接口的设计D.数据结构和过程的设计36.下列字符串是标识符的是( )。(分数:2.00)A.aaB.a-classC.intD.LINE 137.有以下程序:fun(int x,int y)return(x+y);main()int a=1,b=2,c=2,sum;sum=fun(a+,b+,a+b),c+);printf(“%d/n“ ,sum);执行后的结果是( )。(分数:2.00)A.6B.7C.8D.938
16、.算法的时间复杂度是指( )。(分数:2.00)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程所需要的基本运算次数D.算法程序中的指令条数39.合法的 main()函数命令参数形式是( )。(分数:2.00)A.main(int a,char*c)B.main(int arc,char* *arv)C.main(int argc,char*argw)D.main(int argv,char*argc)40.下列程序的输出结果是( )。# includestdio.hint b=2;int func(int*a)b+=*a;return b;)main()int a=1,t=2;
17、t+=func(a);printf(“%d/n“,t);(分数:2.00)A.4B.5C.6D.8二、填空题(总题数:13,分数:30.00)41.全面支持软件开发过程的软件工具集合称为 1。(分数:2.00)填空项 1:_42.数据模型分为格式化模型与非格式化模型,层次模型与网状模型属于 1。(分数:2.00)填空项 1:_43.冒泡排序算法在最好的情况下元素交换次数为 1 次。(分数:2.00)填空项 1:_44.若想通过以下输入语句给 a赋予 1,给 b赋予 2,则输入数据的形式应该是_。int a,b;scanf(“a=%d,b=%d“,a,b);(分数:2.00)填空项 1:_45.
18、数据的独立性分为逻辑独立性与 1。(分数:2.00)填空项 1:_46.在关系模型中,二维表的行称为 1。(分数:2.00)填空项 1:_47.下列程序的输出结果是_。main()int a=2,b=4,c=6;int*p1=a,*p2=b,*p;*(p=c)=*p1*(*p2);printf(“%d/n“,c);(分数:2.00)填空项 1:_48.下面程序的输出是_。main()enum em em1=3,em2=1,em3);char*aa=“AA“,“BB“,“CC“,“DD“);printf(“%s%s%s/n“ ,aaem1,aaem2,aaem3);(分数:2.00)填空项 1:
19、_以下程序中,函数 fun的功能是计算 x2-2x+6,主函数中将调用 fun函数计算:y1=(x+8)2-(x+8)+6y2=sin2(x)-2sin(x)+6请填空。# includemath.hdouble fun(double x)return(x*x-2*x+6);main()double x,y1,y2;printf(“Enter x:“);scanf(“%1f“,x);y1=fun(_)y2=fun(_)printf(“y1=%1f, y2=%1f/n“,y1, y2);(分数:4.00)填空项 1:_填空项 1:_49.若 a是 int型变量,且 a的初值为 5,则计算 a+=
20、a-=a*a表达式后 a的值为 1。(分数:2.00)填空项 1:_50.下列程序的循环次数是_。x=2;dox=x*x;while(!x);(分数:2.00)填空项 1:_51.下列程序的运行结果是_。main()int s=0,i=1;while(s=10)s=s+i*i;i+:printf(“%d“,-i);(分数:2.00)填空项 1:_下面程序把从终端读入的文本(用作为文本结束标志)复制到一个名为 bi.dat的新文件中,请填空。# includestdio.hFILE*fp;main()char ch;if(fp=fopen(_)=NULL) exit(0);while(ch=ge
21、tchar()!=)fputc(ch,fp);_;(分数:4.00)填空项 1:_填空项 1:_二级 C语言笔试-216 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.一个关系中属性个数为 1时,称此关系为( )。(分数:2.00)A.对应关系B.单一关系C.一元关系 D.二元关系解析:解析 在关系模型数据库,我们把构成基本结构的一维表称为关系。关系的列称为属性,具有 N个属性的关系称为 N元关系。2.下列叙述中正确的是( )。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的关系B.在面向对象的程序设计中,各个对象都是公
22、用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小 D.上述 3种说法都不对解析:解析 本题考查对面向对象的理解,面向对象的程序设计是对象模拟问题领域中的实体,各对象之间相对独立,相互依赖性小,通过消息来实现对象之间的相互联系。3.以下程序的输出结果是( )。main()char str 10=“china“,“beijing“),* p=str;printf(“%s/n“ ,p+10);(分数:2.00)A.ChinaB.Beijing C.ngD.ing解析:解析 本题考查指针,由*p=str 可知,指针 p指向字符串数组的首地址。二维数组 str为每个字符串分配的存储空间
23、是 10个字节,因此 p+10指向 str10,输出的字符串就是数组中的第 2个字符串。4.以下程序的输出结果是( )。main()int i;for (i=0;i3;i+)switch(i) case O:printf(“%d“,i);case 2:printf(“%d“,i);default:printf(“%d“,i);(分数:2.00)A.000102B.000020C.000122 D.000111解析:解析 当 i=0时,执行 switch语句,对应的执行 case 0输出 0,因为没有 break接着执行 case 2的语句,又输出一个 0,接着执行 default语句,再输出一
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 216 答案 解析 DOC
