【计算机类职业资格】国家二级C语言机试(选择题)模拟试卷83及答案解析.doc

上传人:postpastor181 文档编号:1332391 上传时间:2019-10-17 格式:DOC 页数:13 大小:68KB
下载 相关 举报
【计算机类职业资格】国家二级C语言机试(选择题)模拟试卷83及答案解析.doc_第1页
第1页 / 共13页
【计算机类职业资格】国家二级C语言机试(选择题)模拟试卷83及答案解析.doc_第2页
第2页 / 共13页
【计算机类职业资格】国家二级C语言机试(选择题)模拟试卷83及答案解析.doc_第3页
第3页 / 共13页
【计算机类职业资格】国家二级C语言机试(选择题)模拟试卷83及答案解析.doc_第4页
第4页 / 共13页
【计算机类职业资格】国家二级C语言机试(选择题)模拟试卷83及答案解析.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、国家二级 C语言机试(选择题)模拟试卷 83及答案解析(总分:80.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.算法的时间复杂度是指( )。(分数:2.00)A.算法的长度B.执行算法所需要的时间C.算法中的指令条数D.算法执行过程中所需要的基本运算次数2.以下数据结构中,属于非线性数据结构的是( )。(分数:2.00)A.栈B.线性表C.队列D.二叉树3.数据结构中,与所使用的计算机无关的是数据的( )。(分数:2.00)A.存储结构B.物理结构C.逻辑结构D.线性结构4.内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是( )。(分数:2.00)A.顺

2、序内聚B.偶然内聚C.时间内聚D.逻辑内聚5.在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的( )。(分数:2.00)A.连接码B.关系码C.外码D.候选码6.检查软件产品是否符合需求定义的过程称为 ( )。(分数:2.00)A.确认测试B.需求测试C.验证测试D.路径测试7.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。(分数:2.00)A.控制流B.加工C.存储文件D.源和潭8.待排序的关键码序列为(15,20,9,30,67,65,45,90),要按关键码值递增的顺

3、序排序,采取简单选择排序法,第一趟排序后关键码 15被放到第( )个位置。(分数:2.00)A.2B.3C.4D.59.对关系 S和关系 R进行集合运算,结果中既包含关系 S中的所有元组也包含关系 R中的所有元组,这样的集合运算称为( )。(分数:2.00)A.并运算B.交运算C.差运算D.除运算10.下列选项中,不属于数据管理员(DBA)职责的是( )。(分数:2.00)A.数据库维护B.数据库设计C.改善系统性能,提高系统效率D.数据类型转换11.C语言规定,在一个 C程序中,main()函数的位置( )。(分数:2.00)A.必须在系统调用的库函数之后B.必须在程序的开始C.必须在程序的

4、最后D.可以在任意位置12.以下叙述中正确的是( )。(分数:2.00)A.C语言比其他语言高级B.C语言可以不用编译就能被计算机识别执行C.C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D.C语言出现的最晚,具有其他语言的一切优点13.已知“int a=6;”则执行“a+=a-=a*a;”语句后,a 的值为( )。(分数:2.00)A.36B.0C.-24D.-6014.下列叙述中错误的是( )。(分数:2.00)A.C语句必须以分号结束B.复合语句在语法上被看作一条语句C.空语句出现在任何位置都不会影响程序运行D.赋值表达式末尾加分号就构成赋值语句15.若有定义:int a=7

5、;float x=25,y=47;则表达式“x+a3*(int)(x+y)24”的值是( )。(分数:2.00)A.2500000B.2750000C.3500000D.000000016.若下列选项中的各变量均为整型且已有值,其中不正确的赋值语句是( )。(分数:2.00)A.+i;B.n1=(n2(n3=2);C.k=i=j;D.a=b+c=2;17.下列关于逻辑运算符两侧运算对象的叙述中正确的是( )。(分数:2.00)A.只能是整数 0或 1B.只能是整数 0或非 0整数C.可以是结构体类型的数据D.可以是任意合法的表达式18.若有说明 int a34;则 a数组元素的非法引用是( )

6、。(分数:2.00)A.a02*1B.a13C.a4-20D.a0419.下列说法不正确的是( )。(分数:2.00)A.int*ptr;指针指向整形数据B.char*ptr;指针的类型是字符型指针C.int*ptr;指针的类型是双重指针D.int(*ptr)3;是一个指针数组,数组共有三个元素,而三个元素是 int型指针20.有以下程序 #includestdioh void main() char s=01aXy;int i,n=0; for(i=0;si!=0;i+) if(si=a printf(d,d,d,a,b,c); (分数:2.00)A.0,1,2B.1,2,3C.1,1,3D

7、.1,2,224.有以下程序: #includestdioh main() int c; while(c=getchar0)!=n) switch(c-3) case 0: case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); case 4:putchar(c+3);break; printf(n); 从第一列开始输入数据(CR代表一个回车符):3845CR,则程序输出结果为( )。(分数:2.00)A.77889B.77868C.776810D.7788661025.C语言规定,函数返回值的类型是( )。(分

8、数:2.00)A.由调用该函数时的主调函数类型所决定B.由 return语句中的表达式类型所决定C.由调用该函数时系统临时决定D.由定义该函数时所指定的数值类型决定26.执行下列程序时输入“456空格789空格123回车”,输出结果是( )。 #includestdio.h main() char m80; int c,i; scanf(c,Y=j+) if(strlen(si)strlen(sj) t=si;si=sj;sj=t; main() char *ss=bcc,bbcc,xy,aaaacc,aabcc; fun(ss,5);printf(s,sn,ss0,ss4); 程序的运行结果

9、是( )。(分数:2.00)A.xy,aaaaccB.aaaacc,xyC.bcc,aabccD.aabcc,bcc34.若已定义: int a=0,1,2,3,4,5,6,7,8,9,*p=a,i; 其中 0i9,则对 a数组元素不正确的引用是 ( )。(分数:2.00)A.ap-aB.*( printf(d,d,d,a,b,c); (分数:2.00)A.0,1,2B.1,2,3C.1,1,3 D.1,2,2解析:解析:本题考查 if语句。先判断 if语句的条件是否成立,因为“+a=10”,所以条件成立,又因为是进行逻辑或运算,在已知其中一个运算对象为真的情况下,不必判断另外一个运算对象的真

10、假,即不进行+b 操作,就可以直接得出整个表达式的值为逻辑 1,执行下面的+c。24.有以下程序: #includestdioh main() int c; while(c=getchar0)!=n) switch(c-3) case 0: case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); case 4:putchar(c+3);break; printf(n); 从第一列开始输入数据(CR代表一个回车符):3845CR,则程序输出结果为( )。(分数:2.00)A.77889 B.77868C.77681

11、0D.77886610解析:解析:题中 while循环的条件是:当从键盘读入的字符不是“n”时,执行 while循环。 输入第一个字符 3时:执行 case 0,什么也不输出;case 1,输出 7;case 2,输出 7;遇到 break语句,跳出 switch语句。输入第二个字符 8时“c-3=5”,不执行任何语句。输入第三个字符 4时“c-3=1”,执行 case 1输出 8;case 2,输出 8;遇到 break语句,跳出 switch语句。输入第四个字符 5时“c-3=2”,执行 case2,输出 9;遇到 break语句,跳出 switch语句。25.C语言规定,函数返回值的类型

12、是( )。(分数:2.00)A.由调用该函数时的主调函数类型所决定B.由 return语句中的表达式类型所决定C.由调用该函数时系统临时决定D.由定义该函数时所指定的数值类型决定 解析:解析:本题考查函数调用时的数值类型。函数调用时,函数返回值的类型既不由主调函数类型所决定,也不由 return语句中的表达式类型所决定,更不是由系统临时决定,而是由定义该函数时所指定的数值类型所决定。26.执行下列程序时输入“456空格789空格123回车”,输出结果是( )。 #includestdio.h main() char m80; int c,i; scanf(c,Y=j+) if(strlen(s

13、i)strlen(sj) t=si;si=sj;sj=t; main() char *ss=bcc,bbcc,xy,aaaacc,aabcc; fun(ss,5);printf(s,sn,ss0,ss4); 程序的运行结果是( )。(分数:2.00)A.xy,aaaacc B.aaaacc,xyC.bcc,aabccD.aabcc,bcc解析:解析:从 main函数入手,定义了一个一维数组并赋初值,接着调用函数 fun(),函数的功能是:比较数组中各元素的长度,按元素长度从小到大的顺序排列元素,所以执行“fun(ss,5)”函数后,“*ss=xy“,“bcc“,“bbcc“,“aabcc“,“

14、aaaacc“”,所以调用 printf函数输出 ss0,ss4的值分别为 xy,aaaacc。34.若已定义: int a=0,1,2,3,4,5,6,7,8,9,*p=a,i; 其中 0i9,则对 a数组元素不正确的引用是 ( )。(分数:2.00)A.ap-aB.*(&ai)C.piD.a10 解析:解析:此题考查对一维数组的引用。对于已定义的数组 aM,数组元素的正确引用必须满足下标小于 M且为正整数。选项 D中下标值出现溢出。35.以下选项中可用作 C程序合法实数的是( )。(分数:2.00)A.1e0 B.30e02C.E9D.912E解析:解析:C 程序的合法实数有两种表示形式,

15、一种是小数形式,另一种是指数形式,对于用指数形式表示的实数来说,需要注意的是字母 e或 E之前必须要有数字,且字母 e或 E后面的指数必须为整数,所以选项 A为正确答案。36.以下叙述中不正确的是( )。(分数:2.00)A.预处理命令行都必须以#号开始,结尾不加分号B.在程序中凡是以#号开始的语句行都是预处理命令行C.C程序在执行过程中对预处理命令进行处理 D.预处理命令可以放在程序中的任何位置解析:解析:本题考查预处理命令的特点。编译预处理命令的特点有:为了区分一般的语句,预处理命令行都必须以#开始,结尾不加分号;预处理命令可以放在程序中的任意位置;在程序中凡是以#开始的语句都是预处理命令

16、行。37.以下程序的输出结果是( )。 #includestdioh #define F(x)284+x #define w(y)printf(d,(int)(y) #define P(y)w(y) main() int x=2; P(F(5)*x); (分数:2.00)A.12 B.13C.14D.16解析:解析:本题考查带参数的宏定义及相关运算。“P(F(5)*x)=P(284+5*2)=P(1284)”,调用“w(1284)”,输出“(int)(1284)=12”。38.设有下面的定义: struct st int a; float b; )d; int*p; 要使 p指向结构变量 d中

17、的 a成员,正确的赋值语句是( )。(分数:2.00)A.*=da;B.p=&a;C.p=da;D.p=&da; 解析:解析:本题主要考查按结构数组元素方式引用结构成员。结构体变量的成员引用方法有 3种:结构体变量名成员名;指针变量名-成员名;(*指针变量名)成员名。因为 p是指针变量,所以应该将地址值赋给 p。39.交换两个变量的值,不允许用临时变量,应该使用下列( )位运算符。(分数:2.00)A.&B. C.D.解析:解析:按逻辑位运算的特定作用主要有 3点:用按位与运算将特定位清 0或保留特定位;用按位或运算将特定的位置设置为 1;用按位异或运算将某个变量的特定位翻转或交换两个变量的值

18、。40.如果需要打开一个已经存在的非空文件“FILE并进行修改,正确的语句是( )。(分数:2.00)A.fp=fopen(FILE“,“r“);B.fp=fopen(FILE“,“a+);C.fp=fopen(FILE“,“w+);D.fp=fopen(FILE“,“r+); 解析:解析:本题考查打开文件函数 fopen(),打开文件函数 fopen()的调用形式为:fp=fopen(文件名,文件使用方式)。“文件使用方式”说明:方式“r”为以输入方式打开一个文本文件;方式“a+”为以读写方式打开一个文本文件,保留文件中原有的数据;方式“w+”为以读写方式建立一个新的文本文件;方式“r+”为以读写方式打开一个文本文件。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1