【计算机类职业资格】二级C语言笔试-192及答案解析.doc
《【计算机类职业资格】二级C语言笔试-192及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-192及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试-192 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.C 语言可执行程序的开始执行点是( )。(分数:2.00)A.包含文件中的第一个函数B.程序中第一个函数C.程序中的 main()函数D.程序中第一条语句2.下列循环体的执行次数是( )。#includestdio.hmain()inti,j;for(i=0,j=1;ij+1;i+=1,j-)phntf(“%d/n“,j);(分数:2.00)A.3B.2C.1D.03.在数据库设计中,将 E-R 图转换为关系模式的过程属于( )。(分数:2.00)A.需求分析阶段B
2、.逻辑设计阶段C.概念设计阶段D.物理设计阶段4.可以在 C 语言程序中用做用户标识符的一组标识符是( )。(分数:2.00)A.void123BBNB.aa_abccasC.as+b3-123IfD.6fDoSIG5.结构化分析方法是面向( )的自顶向下、逐步求精进行需求分析的方法。(分数:2.00)A.对象B.数据结构C.数据流D.目标6.用链表表示线性表的优点是( )。(分数:2.00)A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和删除操作D.数据元素的物理顺序和逻辑顺序相同7.软件需求分析阶段的工作,可以分为 4 个方面:需求获取、需求分析、编写需求规格说明书以及( )。
3、(分数:2.00)A.阶段性报告B.需求评审C.总结D.都不正确8.下列二维数组初始化语句中,不正确的是( )。(分数:2.00)_9.下列选项中不属于结构化程序设计方法的是( )。(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用10.下列字符数组初始化语句中,不正确的是( )。(分数:2.00)A.char c=goodmorning;B.char c20“goodmoming“;C.charc=a,b,c,d;D.char c=“goodmorning“;11.关于结构化程序设计原则和方法描述错误的是( )。(分数:2.00)A.选用的结构只准许有一个入口和一个出口B.复杂结
4、构应该用嵌套的基本控制结构进行组合嵌套来实现C.不允许使用 GOTO 语句D.语言中所没有的控制结构,应该采用前后一致的方法来模拟12.若要用函数 fopen 打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件( )。(分数:2.00)A.“wb“B.“wb+“C.“rb+“D.“rb“13.设变量 x 和 y 均已正确定义并赋值。下列 if 语句中,在编译时将产生错误信息的是( )。(分数:2.00)A.if(x+);B.if(xyC.if(x0)x-elsey+;D.if(y0);else x+;14.下列程序中函数 sort()的功能是对数组 a 中的数据进行由大到小的
5、排序。#includestdiohvoidsort(int a,int n)int i,j,t;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(aiaj)t=ai;ai=aj;aj=t;main()int a 10=1,2,3,4,5,6,7,8,9,10,i;sort(for(i:0;i10;i+)printf(“%d,“,ai);程序运行后的输出结果是( )。(分数:2.00)A.1,2,3,4,5,6,7,8,9,10,B.10,9,8,7,6,5,4,3,2,1,C.1,8,7,6,5,4,3,2,9,10,D.1,2,10,9,8,7,6,5,4,3,15.下列
6、表达式中,可以正确表示 x0 或 x1 的关系是( )。(分数:2.00)A.(x=1)(x=0)B.x1x=0C.x=10Rx=0D.x=1void main()int y=3;p((分数:2.00)A.3B.4C.2D.517.在下列语句中,其含义为“q 为一个指针的函数,该指针指向整型数据”的定义语句是( )。(分数:2.00)A.int*q;B.int(*q)();C.int*q;D.int*q();18.下列工具中为需求分析常用工具的是( )。(分数:2.00)A.PADB.PFDC.N-SD.DFD19.下列程序的输出结果是( )。#includestdioh#define F(x
7、)2.84+x#define w(y)printf(“%d“,(int)(y)#define P(y)w(y)putchar(/n)main()int x=2;P(F(5) *x);(分数:2.00)A.12B.13C.14D.1620.若 x=10010111,则表达式(3+(int)(x)fun 函数返回值是( )。(分数:2.00)_22.下列叙述中错误的是( )。(分数:2.00)A.在 C 语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值B.在 C 语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容C.在 C 语言中,外部变量的隐含类型是自动存储类别D.在 C 语言中,
8、函数形参的存储类型是自动(auto)类型的变量23.若有下列说明和语句,则对结构体变量 st 中成员 i 的引用方式不正确的是( )。Stmct stuint i;int name;st,*p;p=(分数:2.00)A.st.iB.*p.iC.(*p).iD.p-i24.若有下列定义(设 int 类型变量占 2 个字节):int i=8,j=9;则下列语句:printf(“i=%u,j%x/n“,i,j);输出的结果是( )。(分数:2.00)A.i=8,j=9B.8.9C.8 9D.i=8,j=825.下列正确的实型常量是( )。(分数:2.00)A.E3.4B.-12345C.2.2e0.
9、8D.426.下列程序的输出结果是( )。main()int p8=11,12,13,14,15,16,17,18,i=0,j=0;while(i+7) if(pi%2) j+=pi;printf(“%d/n“,j);(分数:2.00)A.42B.45C.56D.6027.若执行下列程序时从键盘上输入 2,则输出结果是( )。#inCludeStdiohmain()int a;scanf(“%d“,p=f(a,B) ;pdntf(“%d“,p);int f(a,B) int c;if(aB) c=1;else if(a=B) c=0;elSe c=-1;return(C) ;(分数:2.00)
10、A.-1B.0C.1D.229.下列语句中,在字符串 s1 和 s2 相等时显示“they are Equal“的是( )。(分数:2.00)A.if(*s1=*s2) puts(“they are Equal“);B.if(!strcmp(s1,s2)puts(“they are Equal“);C.if(s1=s2) Puts(“they are Equal“);D.if(strcmp(s1,s2) )puts(“they are Equal“);30.下列选项中,不是一个算法的基本特征的是( )。(分数:2.00)A.完整性B.可行性C.有穷性D.拥有足够的情报31.下列说法错误的是(
11、)。(分数:1.00)A.下列结构体定义时,占据了 5 个字节的空间struct student“nt num;int age;char sex;B.结构体的成员名可以与程序中的变量名相同C.对结构体中的成员可以单独使用,它的作用相当于普通变量D.结构体可以嵌套定义32.已知 i、j、k 为血型变量,若要从键盘输入 2、3、4CR,使 i、j、k 的值分别为 2、3、4,下列正确的输入语句是( )。(分数:1.00)A.scanf(“%3d,%3d,%3d”,B.scanf(“%d,%d,%d”,C.scanf(“%d%d%d”,D.scanf(“i=%d,%d,k=%d”,33.下列程序的运
12、行结果为( )。#includestdiohvoidabc(Char*str)inta,b,i,j;for(i=j=0;stri!=/0;i+)if(stri!=a)strj+=stri;strj=/0;void main()char str=“abcdef“;abc(str);printf(“str=%s“,str);(分数:1.00)A.str=bcdefB.str=abcdefC.str=aD.str=ab34.对线性表进行二分法检索,其前提条件是( )。(分数:1.00)A.线性表以顺序方式存储,并按关键码值排好序B.线性表以顺序方式存储,并按关键码的检索频率排好序C.线性表以链式方式
13、存储,并按关键码值排好序D.线性表以链式方式存储,并按关键码的检索频率排好序35.变量 m 的值为 8,m 的地址为 1010,若欲使 p 为指向 m 的指针变量,则下列赋值正确的是 ( )。(分数:1.00)A.i+=m+1;m=i+X+y;return m;main()int j=1,m=1,k;k=fun(j,m);printf(“%d,“,k);k=fun(j,m);printf(“%d/n“,k);执行后的输出结果是( )。(分数:1.00)A.5,5B.5,11C.11,11D.11,537.若有定义 int a=5,b=7;,则表达式 a%=(b%2) 运算后,a 的值为( )。
14、(分数:1.00)A.0B.1C.11D.338.设有定义:int k=1,m=2;float f=7;则下列选项中错误的表达式是( )。(分数:1.00)A.k=k=kB.-k+C.k%int(f)D.k=f=m39.下列判断正确的是( )。(分数:1.00)A.char a=“ABCD“;等价于 char*a:*a=“ABCD“;B.char str10=“ABCD“;等价于 char str10;str=“ABCD“;C.char*s=“ABCD“;等价于 char s;*s=“ABCD“;D.char c5=“ABCD“,d5=“ABCD“;等价于 char c5=d5=“ABCD“;
15、40.下列对于软件测试的描述中正确的是( )。(分数:1.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则二、填空题(总题数:15,分数:30.00)41.数据库系统的主要特点为数据集成性、数据的高和低冗余性、数据独立性和数据统一管理和控制。(分数:2.00)填空项 1:_42.数据库的逻辑模型设计阶段的任务是将 1 转换成关系模式。(分数:2.00)填空项 1:_43.在面向对象方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_44.最简单的
16、交换排序方法是 1。(分数:2.00)填空项 1:_45.在链表的运算过程中,能够使空表与非空表的运算统一的结构是 1。(分数:2.00)填空项 1:_46.表示“整数 x 的绝对值大于 5”时值为“假”的 C 语言表达式是 1。(分数:2.00)填空项 1:_47.设 y 为血型变量,请写出描述“y 是偶数”的表达式 1。(分数:2.00)填空项 1:_48.下列程序的运行结果是_。main()int x=1,y=2,z=3;printf(“%d,“,xy?y:x);primf(“%d,“,zy?x+:y+);primf(“%d,%d“,x,y);(分数:2.00)填空项 1:_49.下列程
17、序段中循环体的执行次数是_。a=15;b=0dob+=2;a-=2+b;while(a=0);(分数:2.00)填空项 1:_50.语句“int(*ptr)1;”的含义是 2 是指向函数的指针,该函数返回一个血型数据。(分数:2.00)填空项 1:_51.下列程序的输出结果是_。#includestdiohint t(int x,int y,int cp,int dp)cp=x*x+y*y;dp=x*x-y*y;main()int a=1,b=8,c=7,d=9;t(a,b,c,D) ;primf(“%d,%d%d/n“,c,D) ;(分数:2.00)填空项 1:_52./13在内存中占 1
18、个字节,“/12“在内存中占 1 个字节。(分数:2.00)填空项 1:_53.#define 命令出现在程序中函数的外面,宏名的有效范围为 1。(分数:2.00)填空项 1:_54.下列程序段的运行结果是_。char str=“ABCD“,*p=str;printf(“%d/n“,*(p+3);(分数:2.00)填空项 1:_55.下列程序中的数组 a 包括 10 个整数元素,分别将前项和后项之和存入数组 b,并按每行 4 个元素输出数组 bo 请填空。#includestdiohmain()int a10,b10,i;for(i=0;i10;i+)scanf(“%d“,for(i=0;i9
19、;i+)_;for(i=0;i9;i+)if(i%4=0)printf(“/n“);printf(“%3d“,bi);(分数:2.00)填空项 1:_二级 C 语言笔试-192 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.C 语言可执行程序的开始执行点是( )。(分数:2.00)A.包含文件中的第一个函数B.程序中第一个函数C.程序中的 main()函数 D.程序中第一条语句解析:解析 每个 C 程序有且只有一个主函数 main(),且程序必须从 main 函数开始执行,并在 main()函数中结束。2.下列循环体的执行次数是( )。#i
20、ncludestdio.hmain()inti,j;for(i=0,j=1;ij+1;i+=1,j-)phntf(“%d/n“,j);(分数:2.00)A.3B.2C.1 D.0解析:解析 本题考查 for 循环。第一次循环前先判断循环条件,此时 i=0,j=1,ij+1 成立,循环第一次;第二次循环前先判断循环条件,此时 i=1,j=0,(j-是先使用 i 的值再减 1),ij+1 不成立,结束循环。3.在数据库设计中,将 E-R 图转换为关系模式的过程属于( )。(分数:2.00)A.需求分析阶段B.逻辑设计阶段 C.概念设计阶段D.物理设计阶段解析:解析 数据库设计阶段主要包括需求分析、
21、概念设计、逻辑设计和物理设计。其中,逻辑设计的主要工作是将 E-R 图转换为关系模式。4.可以在 C 语言程序中用做用户标识符的一组标识符是( )。(分数:2.00)A.void123BBNB.aa_abccas C.as+b3-123IfD.6fDoSIG解析:解析 C 语言规定,标识符是由字母、数字或下画线组成,并且它的第一个字符必须是字母或者下画线。5.结构化分析方法是面向( )的自顶向下、逐步求精进行需求分析的方法。(分数:2.00)A.对象B.数据结构C.数据流 D.目标解析:解析 结构化分析方法是面向数据流进行需求分析的方法,采用自顶向下、逐层分解,建立系统的处理流程,以数据流图和
22、数据字典为主要工具,建立系统的逻辑模型。6.用链表表示线性表的优点是( )。(分数:2.00)A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和删除操作 D.数据元素的物理顺序和逻辑顺序相同解析:解析 在链表中因为除了存放数据元素之外,还要存放指针,所以链表花费的存储空间要比顺序表还要多。在插入和删除数据元素时,只需要移动相应的记录指针即可。在链表中数据的物理结构与逻辑结构不一定相同,因为是靠指针来实现对数据的指定的,所以不能进行随机存取。7.软件需求分析阶段的工作,可以分为 4 个方面:需求获取、需求分析、编写需求规格说明书以及( )。(分数:2.00)A.阶段性报告B.需求评审
23、C.总结D.都不正确解析:解析 需求分析是软件定义时期的最后一个阶段。可以概括为 4 个方面:需求获取;需求分析;编写需求规格说明书;需求评审。8.下列二维数组初始化语句中,不正确的是( )。(分数:2.00)_解析:解析 在对二维数组元素赋初值时,可以只对部分元素赋初值,未赋初值的元素自动取 0;C 语言规定,对于二维数组,只可以省略第 1 个方括号中的常量表达式,而不能省略第 2 个方括号中的常量表达式;赋的初值不能多于事先定义好的数组元素个数。在选项 D)赋值表达式中对每一维的元素赋初值应用 9.下列选项中不属于结构化程序设计方法的是( )。(分数:2.00)A.自顶向下B.逐步求精C.
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 192 答案 解析 DOC
