【计算机类职业资格】二级C语言笔试-179及答案解析.doc
《【计算机类职业资格】二级C语言笔试-179及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-179及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-179 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.有下列程序:main()char *p=“3697“, “2584“);int i, j; long num=0;for(i=0; i2; i+)j=0;while(pij!=/0)if(pij-/0)%2)num=10*num+pjj-0;j+=2;printf(“%d/n“, num);程序执行后的输出结果是( )。(分数:2.00)A.35B.37C.39D.39752.设 x、y 和 z 是 int 型变量,且 x=4,y=6,z=8,则下列表达式中值为 0
2、 的是( )。(分数:2.00)A.xyB.x=yC.x|y+zy-zD.!(xy)!z|1)3.以下程序的输出结果是( )。main()int a33=1, 2, 3, 4, 5, 6, i, j, s=0;for(i=1; i3; i+)for(j=0; j=i; j+)s+=aij;printf(“%d/n“, s)(分数:2.00)A.18B.19C.20D.214.若有以下的定义:“int t32;”,能正确表示 t 数组元素地址的表达式是( )。(分数:2.00)A.t32B.t3C.t1D.t225.有下列程序:main()int k=5;while(-k) printf(“%d
3、“, k=1);printf(“/n“);执行后的输出结果是( )。(分数:2.00)A.1B.2C.4D.死循环6.有以下程序:main()int x, i;for(i=1; i=50; i+)x=i;if(x%2=0)if(x%3=0)if(x%7=0)printf(“%d, i)“;输出结果是( )。(分数:2.00)A.28B.27C.42D.417.在“文件包含”预处理语句的使用形式中,当#include 后面的文件名用(双引号)括起时,寻找被包含文件的方式是( )。(分数:2.00)A.直接按系统设定的标准方式搜索目录B.先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜
4、索C.仅仅搜索源程序所在目录D.仅仅搜索当前目录8.下列程序的输出结果是( )。main()int i=1, j=2, k=3;if(i+=1(+j=3=|k+=3)printf(“%d%d%d/n“, i, j, k);(分数:2.00)A.1 2 3B.2 3 4C.2 2 3D.2 3 39.算法的空间复杂度是指( )。(分数:2.00)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间10.面向对象的设计方法与传统的面向过程的方法有本质不同,它的基本原理是( )。(分数:2.00)A.模拟现实世界中不同事物之间的联系B.强调模拟现实世
5、界中的算法而不强调概念C.使用现实世界的概念抽象地思考问题从而自然地解决问题D.不强调模拟现实世界中的算法而强调概念11.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS 之间的关系是( )。(分数:1.00)A.DB 包含 DBS 和 DBMSB.DBMS 包含 DB 和 DBSC.DBS 包含 DB 和 DBMSD.没有任何关系12.下列合法的声明语句是( )。(分数:1.00)A.int _abc=50;B.double int=3+5e2.5;C.1ong do=1L;D.float 3_asd=3e-3;13.对如下二叉树进行后序遍历的结果为( )。(分数:1.00)A.A
6、BCDEFB.DBEAFCC.ABDECFD.DEBFCA14.下列程序的输出结果是( )。#includestdio.hmain()int a=0, i;for(i=1; i5; i+)switch(i)case 0:case 3: a+=1;case 1:case 2: a+=2;default: a+=3;printf(“%d“, i);(分数:1.00)A.19B.1C.6D.815.以下程序的输出结果是( )。main()char st20=“hello/0/t/“;printf(“%d%d/n“, strlen(st), sizeof(st);(分数:1.00)A.9 9B.5 2
7、0C.13 20D.20 2016.两个或两个以上模块之间关联的紧密程度称为( )。(分数:1.00)A.耦合度B.内聚度C.复杂度D.数据传输特性17.有下列程序:int fun(int n)if(n=1)return 1;elsereturn(n+fun(n-1);main()int x; scanf(“%d“, x); x=fun(x); printf(“%d/n“, x);执行程序时,给变量 x 输入 10,程序的输出结果是( )。(分数:1.00)A.55B.54C.65D.4518.若有定义:“int a23;”则对 a 数组的第 i 行第 j 列元素的正确引用为( )。(分数:1
8、.00)A.*(*(a+i)+j)B.(a+i)jC.*(a+i+j)D.*(a+i)+j19.下列能正确进行字符串赋值的是( )。(分数:1.00)A.char s5=“ABCDE“;B.char s5=A, B, c, D, E;C.char*s; s=“ABCDE“;D.char*s; printf(“%s“, s);20.设变量已正确定义,则以下能正确计算 f=n!的程序是( )。(分数:1.00)A.f=0;for(i=1; i=n; i+)f*=i;B.f=1;for(i=1; in; i+)f*=i;C.f=1;for(i=n; i1; i+)f*=i;D.f=1;for(i=n
9、; i=2; i-)f*=i;21.下述程序的输出结果是( )。#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.6422.设 x=011050,则 x=x01252 的值是( )。(分数:2.00)A.0000001000101000B.1111110100011001C.0000001011100010D.110000000010100023.有下列程序:main()int i, j, x=0;for(i=0, i2
10、; i+)x+;for(j=0; j=3; j+)if(j%2)continue;x+;x+;printf(“x=%d/n“, x);程序执行后的输出结果是( )。(分数:2.00)A.x=4B.x=8C.x=6D.x=1224.若有定义“int b8, *p=b;”,则 p+6 表示( )。(分数:2.00)A.数组元素 b6的值B.数组元素 b6的地址C.数组元素 b7的地址D.数组元素 b0的值加上 625.有下列程序:main()int i, s=0,t=1, 2, 3, 4, 5, 6, 7, 8, 9;for(i=0; i9;i+=2)s+=*(t+i);printf(“%d/n“
11、, s);程序执行后的输出结果是( )。(分数:2.00)A.45B.20C.25D.3626.函数 fseek(pf,OL,SEEK_END)中的 SEEK_END 代表的起始点是( )。(分数:2.00)A.文件开始B.文件末尾C.文件当前位置D.以上都不对27.有下列程序:fun(int x, int y)return(x+y); main()int a=1, b=2, c=3, sum;sum=fun(a+, b+, a+b), c+);printf(“%d/n“, sum);执行后的输出结果是( )。(分数:2.00)A.6B.7C.8D.928.若 ch 为 char 型变量,k
12、为 int 型变量(已知字符 a 的 ASCII 码是 97),则执行下列语句后输出的结果为( )。oh=b;k=10;printf(“%x, %o,“, ch, ch, k);printf(“k=%d/n“, k);(分数:2.00)A.因变量类型与格式描述符的类型不匹配,输出无定值B.输出项与格式描述符个数不符,输出为 0 值或不定值C.62, 142, k=%dD.62, 142, k=%1029.假定 x 和 y 为 double 型,则表达式 x=2, y=x+3/2 的值是( )。(分数:2.00)A.3.500000B.3C.2.000000D.3.00000030.有如下程序:
13、main()int x=1, a=0, b=0;switch(x)case 0: b+;case 1:a+;case 2:a+; b+;printf(“a=%d, b=%d/n“, a, b);该程序的输出结果是( )。(分数:2.00)A.a=2, b=1B.a=1, b=1C.a=1, b=0D.a=2, b=231.有下列程序:int fun1(double a)return a*=a; int fun2(double x, double y)double a=0, b=0;a=fun 1(x); b=funl(y);return(int)(a+b);main()double w; w=
14、fun2(1.1,2.0),程序执行后变量 w 中的值是( )。(分数:2.00)A.5.21B.5C.5.0D.0.032.下述程序执行的输出结果是( )。#includestdio.hmain()char a24;strcpy(a, “are“); strcpy(a1, “you“);a03=;printf(“%s/n“, a);(分数:2.00)A.areyouB.youC.areD.33.相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和( )。(分数:2.00)A.可重用性差B.安全性差C.非持久性D.冗余性34.有下列程序:int fun(int x, int n)s
15、tatic int sum=0, i;for(i=0; in; i+)sum+=xi;return sum;main()int a=1, 2, 3, 4, 5, b=6, 7, 8, 9, s=0;s=fun(a, 5)+fun(b, 4); printf(“%d/n“, s);程序执行后的输出结果是( )。(分数:2.00)A.45B.50C.60D.5535.下列描述错误的是( )。(分数:2.00)A.继承分为多重继承和单继承B.对象之间的通信靠传递消息来实现C.在外面看不到对象的内部特征是基于对象的“模块独立性好”这个特征D.类是具有共同属性、共同方法的对象的集合36.简单的交换排序方
16、法是( )。(分数:2.00)A.快速排序B.选择排序C.堆排序D.冒泡排序37.现有以下结构体说明和变量定义,如图所示,指针 P、q、r 分别指定一个链表中连续的 3 个结点。(分数:2.00)A.q-next=r-next; pr-next=r; r-next=q;B.q-next=r; q-next=r-next; r-next=q;C.q-next=r-next; r-next=q; p-next=r;D.q-next=q; p-next=r; q-next=r-next;38.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指( )。(分数:2.00)A.模块间的关系
17、B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程39.下列叙述中正确的是( )。(分数:2.00)A.一个逻辑数据结构只能有一种存储结构B.逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率40.关于结构化程序没计原则和方法的描述错误的是( )。(分数:2.00)A.选用的结构只准许有一个入口和一个出口B.复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现C.不允许使用 GOTO 语句D.语言中若没有控制结构,应该采用前后一致的方法来模
18、拟二、填空题(总题数:15,分数:30.00)41.数据的独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,这称为 1。(分数:2.00)填空项 1:_42.排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、 1 和选择排序。(分数:2.00)填空项 1:_43.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。(分数:2.00)填空项 1:_44.某二又树中度为 2 的结点有 18 个,则该二又树中有 1 个叶子结点。(分数:2.00)
19、填空项 1:_45.算法的基本特征是可行性、确定性、 1 和拥有足够的情报。(分数:2.00)填空项 1:_46.顺序存储方法是把逻辑上相邻的结点存储在物理位置 1 的存储单元中。(分数:2.00)填空项 1:_47.在关系模型中,把数据看成是二维表,每一个二维表称为=个_。(分数:2.00)填空项 1:_48.下列程序的输出结果是_。#includestdio.hmain()int x=1, y=1, a=1, b=1;switch(x)case 1:switch(y)case 0: a+; break;case 1: b+; break;case 2: a+: b+; break;prin
20、tf(“a=%d, b=%d/n“, a, b);(分数:2.00)填空项 1:_49.C 语言用于结构化程序设计的 3 种基本结构是 1、选择结构和循环结构。(分数:2.00)填空项 1:_50.以下程序运行后的输出结果是_。int fun(int a)int b=0; static int c=3;b+; c+;return(a+b+c); main()int i, a=5;for(i=0; i3; i+)printf(“%d%d“, i, fun(a); printf(“n“);(分数:2.00)填空项 1:_51.下述程序的输出结果是_。long fun5(int n)long s;i
21、f(n=1)|(n=2)s=2;elses=n+fun5(n=1);return(s);main()long x;x=fun5(4);printf(“%1d/n“, x);(分数:2.00)填空项 1:_52.下述程序的输出结果是_。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:_53.下列循环的循环次数是_。int k=2;while(k=0)printf(“%d“, k);k-;printf(“/n“);(分数:2.00)填空项 1:_54.若有定
22、义“float b15, *p=b; ”,且数组 b 的首地址为 200H,则 p+13 所指向的数组元素的地址为 1。(分数:2.00)填空项 1:_55.下列程序的功能是将字符串 s 中所有的字符 C 删除。请填空。#includestdio.hmain()char s80;int i, j;gets(s);for(i=j=0; si!=“/0“; i+)if (i!=C_;sj=/0;puts(s);(分数:2.00)填空项 1:_二级 C 语言笔试-179 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.有下列程序:main()cha
23、r *p=“3697“, “2584“);int i, j; long num=0;for(i=0; i2; i+)j=0;while(pij!=/0)if(pij-/0)%2)num=10*num+pjj-0;j+=2;printf(“%d/n“, num);程序执行后的输出结果是( )。(分数:2.00)A.35B.37C.39D.3975 解析:解析 执行第一次 for 循环时,用表达式 pij!=/0来判断字符串数组指针 p 是否到达字符串的结尾,如果没有到达,继续执行 while 中的语句。if 语句表示(pij=/0)除 2 的余数不为 0 时,即字符串所有奇数,执行后面的语句。所
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 179 答案 解析 DOC
