【计算机类职业资格】二级C语言笔试-470及答案解析.doc
《【计算机类职业资格】二级C语言笔试-470及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-470及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-470 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:66.00)1.下列描述中,不是线性表顺序存储结构特征的是( )。A) 不便于插入和删除 B) 需要连续的存储空间C) 可随机访问 D) 需另外开辟空间来保存元素之间的关系(分数:2.00)A.B.C.D.2.下列排序方法中,最坏情况下比较次数最少的是( )。A冒泡排序 B简单选择排序C直接插入排序 D堆排序(分数:1.00)A.B.C.D.3.两个或两个以上模块之间联系的紧密程度称为( )。A) 耦合性 B) 内聚性C) 复杂性 D) 数据传输特性(分数:2.00)A.B.C.D.
2、4.下列选项中不符合良好程序设计风格的是_。(A) 源程序要文档化(B) 数据说明的次序要规范化(C) 避免滥用 go to语句(D) 模块设计要保证高耦合,高内聚(分数:2.00)A.B.C.D.5.下列数据结构中,能用二分法进行查找的是( )。A) 顺序存储的有序线性表 B) 结性链表C) 二叉链表 D) 有序线性链表(分数:2.00)A.B.C.D.6.将 E-R图转换到关系模式时,实体与联系都可以表示成A) 属性 B) 关系 C) 键 D) 域(分数:2.00)A.B.C.D.7.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和_。A) 编码设计 B) 测试阶段 C) 运行阶段
3、D) 物理设计(分数:2.00)A.B.C.D.8.以下叙述中错误的是_。A) C语言源程序经编译后生成后缀为.obj 的目标程序B) C程序经过编译、连接步骤后才能形成一个真正可执行的二进制机器指令文件C) 用 C语言编写的程序称为源程序,它以 ASCII代码形式存放在一个文本文件中D) C语青中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令(分数:1.00)A.B.C.D.9.有以下定义语句:double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是 _。A) a=a+b=b+ B) w%(int)a+b)C) (c+w)%(int)a
4、 D) w=a=b;(分数:1.00)A.B.C.D.10.下列说法不正确的是( )。A) C语言程序是以函数为基本单位的,整个程序由函数组成B) C语言程序的一条语句可以写在不同的行上C) C语言程序的注释行对程序的运行功能不起任何作用,所以注释应该尽可能少写D) C语言程序的每个语句都以分号结束(分数:1.00)A.B.C.D.11.下列标识符不是关键字的是( )。A) break B) char C) Switch D) return(分数:2.00)A.B.C.D.12.表达式 3.6-5/2+1.2+5%2的值是_。(A) 4.3(B) 4.8(C) 3.3(D) 3.8(分数:1.
5、00)A.B.C.D.13.下列程序输出的结果是( )。main()int a;a=-4+4*5-6;printf(“%d“,a);a=4+4%5-6;printf(“%d“,a);a=-3+4%6/5;printf(“%d“,a);a=(7+6)%5/2;printf(“%d“,a);A) 102-3 1 B) 10-22 1 C) 11-22 1 D) 1022 1(分数:2.00)A.B.C.D.14.若有说明:int *p,m=5,n;,以下正确的程序段是A) p=scanf(“%d“, B) p=scanf(“%d“,*p)C) scanf(“%d:,*p=n; D) p=*p=m;
6、(分数:1.00)A.B.C.D.15.若有“double a;”,则正确的输入语句是( )。A) scanf(“%1f“,A) ; B) scanf(“%f“,C) scanf(“%1f“, D) scanf(“%1e“,(分数:2.00)A.B.C.D.16.若有下列定义(设 int类型变量占 2个字节):int i=8,j=9;则下列语句:printf(“i=%d,j=%d/n“,i,j);输出的结果是( )。A) i=8,j=9 B) i=%d,j=%dC) i=%8,j=%9 D) 8,9(分数:2.00)A.B.C.D.17.下列程序的输出结果是( )。main()int p8=1
7、1,12,13,14,15,16,17,18,i=0,j=0;while(i+ +7)if(pi%2)j+ =pi;printf(“%d/n“,j);A) 42 B) 45 C) 56 D) 60(分数:1.00)A.B.C.D.18.若变量已正确定义,在 if(W)printf(“%d/n“,k);中,以下不可替代 W的是( )。 A) ab+c B) ch=getchat() C) a=b+c D) a+(分数:1.00)A.B.C.D.19.有以下程序:main()int a=1,b;for(b=1:b=10;b+)if(a=8)break;if(a%2=1)a+=5;continue;
8、a-=3:printf(“%d/n“,b);程序运行后的输出结果是_。A) 3 B) 4 C) 5 D) 6(分数:2.00)A.B.C.D.20.以下程序: #includestdio.h main() char str10; scanf(“%s“,while(k+ printf(“%d %d/n“, k, n);A) 0 2 B) 1 3 C) 5 7 D) 1 2(分数:2.00)A.B.C.D.22.下面程序的运行结果是( )。#includestdiohmain()int y=10;doy-;while(-y);printf(“%d/n“,y-);A) -1 B) 1 C) 8 D)
9、 0(分数:1.00)A.B.C.D.23.有以下程序main()int k=5,n=0;doswitch(k)case 1: case 3:n+=1;k-;break;default:n=0;k-;case 2: case 4:n+=2;k-;break;printf(“%d“,n);whUe(k0 i=nl;j=n2;while(ij)t=si;si=sj;sj=t;i+;j-;main()int 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(
10、“/n“);程序运行的结果是_。A) 0987654321 B) 4321098765 C) 5678901234 D) 0987651234(分数:2.00)A.B.C.D.25.设变量 x和 y均已正确定义并赋值。下列 if语句中,在编译时将产生错误信息的是( )。A) if(x+); B) if(xyC) if(x0)x-elsey+;D) if(y0);else x+;(分数:2.00)A.B.C.D.26.关于字符常量,以下叙述正确的是( )。 A) 空格不是一个字符常量 B) 字符常量能包含大于一个的字符 C) 单引号中的大写字母和小写字母代表的是相同的字符常量 D) 所有的字符常
11、量都可以作为整型量来处理(分数:2.00)A.B.C.D.27.若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是( )。A)实参与其对应的形参共占存储单元B)只有当实参与其对应的形参同名时才共占存储单元C)实参与其对应的形参分别占用不同的存储单元D)实参将数据传递给形参后,立即释放原先占用的存储单元(分数:2.00)A.B.C.D.28.下列叙述中,错误的是( )。A) 在同一 C程序文件中,不同函数中可以使用名字相同的变量B) 在 main()函数体内定义的变量是全局变量C) 形参是局部变量,函数调用完成即失去意义D) 若同一文件中全局和局部变量同名,则全局变量在局部变量作用范围内
12、不起作用(分数:1.00)A.B.C.D.29.有定义语句:char s10;,若要从终端给 s输入 5个字符,错误的输入语句是A) gets( B) k=fun(10,12.5);C) fun(x,n); D) void fun(n,x);(分数:1.00)A.B.C.D.31.表达式 0x130x17的值是A) 0x04 B) 0x13 C) 0xE8 D) 0x17(分数:2.00)A.B.C.D.32.下列合法的字符型常量是( ),A) /x13 B) /081 C) 65 D) “/n/(分数:2.00)A.B.C.D.33.以下程序的输出结果是#include int a33=1,
13、2,3,4,5,6,7,8,9,*p;main( )p=(int *)malloc(sized(int);f(p,a) ;printf(“%d/n“,*p);free(p);f(int *s,int p 3)*s=p11;A)1 B)4 C)7 D)5(分数:2.00)A.B.C.D.34.下述程序向文件输出的结果是 _。#includestdio.hvoid main()FILE*fp=fopen(“TEST“,“wb“);fprintf(fp,“%5.0f%c%d“,58,76273.0-,2278);fclose(fp);A) 58 76273-2278 B) 5876273.00000
14、0-2278C) 5876273-2278 D) 因文件为二进制文件而不可读(分数:2.00)A.B.C.D.35.有以下程序:#include stdio.hmain( )char P = a,b,c ,q: “abc“;printf( “% d % d / n“, sizeof(p), sizeof(q) );程序运行后的输出结果是( )。A) 44 B) 33 C) 34 D) 43(分数:1.00)A.B.C.D.36.下列语句段中,正确的是( )。A) structint x;float y;int a2;unsigned b3;char name10;B) struct stuun
15、signed a3;unsigned b4;x;int*p=float data=y.x;D) struct ndint a,b;unsigned c2=5;(分数:2.00)A.B.C.D.37.下列程序的输出结果是( )。#include stdio.hmain()struct stint y,x,z;unionlong i;int j;char k;un;printf(“%d,%d/n“,sizeof(struct st),sizeof(un);A) 6, 2 B) 6, 4 C) 8, 4 D) 8, 6(分数:2.00)A.B.C.D.38.有以下程序#include main( )
16、FILE *fp;int i=20,j=30,k,n;fp=fopen(“d1.dat“,“w“);fprintf(fp,“%d/n“,i);fprintf(fp,“%d/n“,j);fclose(fp);fp=fopen(“d1.dat“,“r“);fscanf(fp,“%d%d“,k,n);printf(“%d%d/n“,k,n);fclose(fp);程序运行后的输出结果是A)20 30 B)20 50 C)30 50 D)30 20(分数:2.00)A.B.C.D.39.设有定义语句 int (*f)(int);,则以下叙述正确的是A) f是基类型为 int的指针变量B) f是指向函数
17、的指针变量,该函数具有一个 int类型的形参C) f是指向 int类型一维数组的指针变量D) f是函数名,该函数的返回值是基类型为 int类型的地址(分数:2.00)A.B.C.D.40.在“文件包含”预处理语句的使用形式中,当#include 后面的文件名用”(双撇号)括起时,寻找被包含文件的方式是( )。A直接按系统设定的标准方式搜索目录B先在源程序所在的目录搜索,如没找到,再按系统没定的标准方式搜索C仅仅搜索源程序所在目录D仅仅搜索当前目录(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:34.00)41.在关系模型中,二维表的行称为 1。(分数:2.00)填空项 1:_
18、42.类是一个支持集成的抽象数据类型,而对象是类的U /U。(分数:2.00)填空项 1:_43.在一个容量为 32的循环队列中,若头指针 front=3,尾指针 rear=2,则该循环队列中共有个元素。(分数:2.00)填空项 1:_44.一棵二叉树第 6层(根结点为第一层)的结点最多为_个。(分数:2.00)填空项 1:_45.在二维表中,元组的 1 不能再分成更小的数据项。(分数:4.00)填空项 1:_46.与二维表中的“行”的概念最接近的概念是 1。(分数:2.00)填空项 1:_47.以下程序运行后的输出结果是_。 main() int a,b,c; a=10;b=20;c=(a/
19、b1)x=(aB)?A:B;NBSP;X=(AC)?X:C;NBSP;X=(Dx)?x:d;printf(“%d/n“,x);(分数:2.00)填空项 1:_49.若 int x=1,y=2;则计算表达式 y+=y-=x*=y后的 y值是 1。(分数:2.00)填空项 1:_50.以下程序运行后的输出结果是U /U。#include stdio, hmain( )int a=3,b=4,c=5,t=99;if(ba a=c;c=t;if(ae b=a;a=t;printf( “%d %d %d /n“ ,a,b,e);(分数:2.00)填空项 1:_51.以下程序运行后的输出结果是_。main
20、()int x,a=1,b=2,c=3,d=4;x=(ab)? a:b;x=(xc)? x:c;x=(dx)? x:d;pfintf(“%d/n“,x);(分数:2.00)填空项 1:_52.以下程序的输出结果是_。 #includestdio.h fun() static int a=0; a+=3;printf(“%d“,a); main() int cc; for(cc=1;cc5;cc+)fun(); printf(“/n“); (分数:2.00)填空项 1:_53.设有定义:struct personint ID; char name12; P;请将 scanf(“%d“, _);语
21、句补充完整,使其能够为结构体变量 P的成员 ID正确读入数据。(分数:2.00)填空项 1:_54.下列程序用来判断指定文件是否能正常打开,请填空。#includestdio.hmain()FILE*fp;if(fp=fopen(“test.txt“,“r“)=_)prinff(“文件打开成功!/n“);elseprintf(“未能打开文件!/n“);(分数:4.00)填空项 1:_55.下面程序运行后的输出结果是_。#includestdio.hmain()int a=1,2,3,4,5,6,*k3,i=1;while(i4)ki-1=printf(“%d“,*ki-1);i+;(分数:2.
22、00)填空项 1:_二级 C语言笔试-470 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:66.00)1.下列描述中,不是线性表顺序存储结构特征的是( )。A) 不便于插入和删除 B) 需要连续的存储空间C) 可随机访问 D) 需另外开辟空间来保存元素之间的关系(分数:2.00)A.B.C.D. 解析:解析 线性表的顺序存储是用一片连续的空间来存放数据元素,其特点是逻辑上相邻的元素在物理位置上也相邻。数据元素之间逻辑上的先后关系自动隐含在物理位置的相邻元素之中,因此,不需要另外开辟空间来保存元素之间的关系。2.下列排序方法中,最坏情况下比较次数最少的是(
23、 )。A冒泡排序 B简单选择排序C直接插入排序 D堆排序(分数:1.00)A.B.C.D. 解析:解析 本题考查排序的比较次数,冒泡排序、简单选择排序和直接插入排序在最坏的情况下比较次数为 n(n-1)/2。而堆排序法在最坏的情况下需要比较的次数为 nlog2n。3.两个或两个以上模块之间联系的紧密程度称为( )。A) 耦合性 B) 内聚性C) 复杂性 D) 数据传输特性(分数:2.00)A. B.C.D.解析:解析 耦合性是模块间互相连接的紧密程皮的度量,取决于各个模块之间接口的复杂度、调用方式以及哪些信息通过接口。4.下列选项中不符合良好程序设计风格的是_。(A) 源程序要文档化(B) 数
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 470 答案 解析 DOC
