【计算机类职业资格】国家二级(C语言)机试模拟试卷134及答案解析.doc
《【计算机类职业资格】国家二级(C语言)机试模拟试卷134及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级(C语言)机试模拟试卷134及答案解析.doc(15页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级(C 语言)机试模拟试卷 134及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.关于计算机算法的时间复杂度的叙述中正确的是( )。(分数:2.00)A.算法的时间复杂度与算法程序中的撰写细节有关B.算法的时间复杂度与计算机的运行速度有关C.算法的时间复杂度与运行算法时特定的输入有关D.算法的时间复杂度与算法程序编制者的水平有关2.下列各排序算法中,最坏情况下的时间复杂度最低的是( )。(分数:2.00)A.快速排序B.冒泡排序C.堆排序D.希尔排序3.下列叙述中正确的是( )。(分数:2.00)A.有一个以上根节点的数据结构不一定是非
2、线性结构B.只有一个根节点的数据结构不一定是线性结构C.循环链表是非线性结构D.双向链表是非线性结构4.某二叉树共有 121个节点,其中有 78个度为 2的节点,则该二叉树中的叶子节点数为( )。(分数:2.00)A.不存在这样的二叉树B.79C.120D.495.在设计计算机程序时,结构化程序的三种基本结构是( )。(分数:2.00)A.跳转、迭代和回溯B.跳转、函数和子程序C.顺序、选择和循环D.调用、返回和选择6.下面描述中错误的是( )。(分数:2.00)A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据结构与数据库设计是软件设计的任务之一D.
3、PAD图是软件详细设计的表示工具7.计算机软件设计过程中,不属于需求规格说明的是( )。(分数:2.00)A.运行环境B.算法详细设计C.软件的性能D.软件的主要功能8.不属于数据库管理技术发展的三个阶段的是( )。(分数:2.00)A.人工管理阶段B.文件系统阶段C.数据库阶段D.面向对象阶段9.建立表示学生借书活动的实体联系模型,其中的两个实体分别是( )。(分数:2.00)A.书号和学号B.学生和图书C.学生和学号D.书名和书号10.一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的关系是( )。(分数:2.00)A.1:1 关系B.1:m 关系C.m:1 关系D.m
4、:n 关系11.关于计算机算法的叙述中不正确的是( )。(分数:2.00)A.只要能够成功编译和运行的算法都会得到期望的结果B.算法的操作步骤应该是有限的C.算法中每一条指令必须有确切的含义D.算法可以用各种描述方法来进行描述12.若有定义语句:int x=l;则表达式 x一=x+2 的值为( )。(分数:2.00)A.2B.2C.0D.一 113.若有定义:float a=22;int i=0,k=18;下列选项中不合法的 C语言表达式是( )。(分数:2.00)A.a=a+=3,i+;B.i=(a+i)=(a+k);C.i=a3;D.i=!k;14.关于科学计数法,下列选项中合法的 C语言
5、实数是( )。(分数:2.00)A.2e0B.02e02C.E21D.3E15.以下 C语言表达式中,与 k=i+完全等价的表达式是( )。(分数:2.00)A.k=i,i=i+1B.i=i+1,k=iC.k=+iD.k+=i+116.关于 C语言用户标识符的叙述中,错误的是( )。(分数:2.00)A.若用户标识符的命名与预定义标识符相同,命名无效B.若用户标识符的命名与关键字相同将产生编译错误C.若用户标识符的命名与预定义标识符相同。预定义标识符失去原有含义D.若用户标识符的命名与预定义标识符相同,可能引发运行错误17.设有定义:double x;,以下选项中不能将输入数据 0681 读入
6、赋给变量 x的是( )。(分数:2.00)A.scanf(51f,&x);B.scanf(lf,&x);C.scanf(le,&x);D.scanf(53f,&x);18.若有定义:double x=15;int a=1,b=3,c=2;则关于 C语言中的 switch语句,下列选项中正确的是( )。(分数:2.00)A.switch(a+b) case 1:printf(*n); case 2+1:printf(*n);B.switch(x); case 1:printf(*n); case 2+1:printf(*n);C.switch(x) case10:printf(*n); case
7、 20:printf(*n);D.switch(a+b) case 1:printf(*n); case c 一 1:printf(*n);19.有以下程序段: #include int a,b,C; a=1;b=5;c=3; if(ab)a=b,b=c;c=a; printf(a=d b=d e=dn,a,b,c); 程序的输出结果是( )。(分数:2.00)A.a=1 b=5 c=1B.a=1 b=5 c=3C.a=1 b=3 c=1D.a=5 b=3 c=520.关于 C语言中循环语句的叙述中正确的是( )。(分数:2.00)A.for语句的循环体至少执行一次B.while语句的循环体至
8、少执行一次C.dowhile语句的循环体至少执行一次D.上述说法均正确21.有以下程序: #include main() int m,x=0,y=0,t; do scanf(d,&m); t=m0; switch(t) case 0:break; case 1:x+=m;continue; y+=m; while(m); printf(d,dn,x,y); 程序运行时输入:一 1 12 2 0,则输出结果是( )。(分数:2.00)A.0,0B.3,0C.3,一 3D.0,一 322.有以下程序: #include main() int a33=1,2,3,4,5,6,7,8,9,i,j,t=
9、0; for(i=0;i3;i+) for(j=i;j3;j+)t+=aij; printf(dn,t); 程序运行后的输出结果是( )。(分数:2.00)A.15B.6C.16D.2623.下列 C语言语句能正确定义二维数组的是( )。(分数:2.00)A.float a2:1,4;B.float a2=1,2,3;C.float a2=;D.float a23=10,20,30,40;24.若有函数定义如下:int fun(int x,int y)return 2*x*y;则以下涉及上述函数的说明语句错误的是( )。(分数:2.00)A.int fun(int x,y);B.int fun
10、(int,int);C.int fun(int a,int B);D.int fun(int x,int y);25.有以下程序:#includestdioh#define N 4main()int xNN=0,i,j,k;for(i=0;iN2;i+)for(j=i;jN 一 i;j+)xij=xN 一 i一 1j=i+1;for(k=i+l;kNi 一 1;k+)xki=xkNi 一 1=i+1;for(j=0;jN;j+)printf(2d,x1j);printf(n);执行后的输出结果是( )。(分数:2.00)A.2 2 2 2B.2 1 1 2C.1 1 1 1D.1 2 2 12
11、6.有以下程序: #include int fun(int n); main() int a=3,s; s=fun(a);s=s+fun(a);printf(dn,s); int fun(int n) static int a=1: n+=a+; return n; 程序运行后的输出结果是( )。(分数:2.00)A.17B.8C.9D.2627.有以下程序: #include main() char cha6=1234,123,12;int i; for(i=0;i3;i+)puts(chai); 执行后的输出结果是( )。(分数:2.00)A.1234 121B.11231C.1234 3
12、43D.1234228.若有以下函数:int fun(char *a,char*b)int flag=0;while(*a!=0)&(*b!=0)&strlen(a)=strlen(b)if(*b!=*a)flag=0;break;a+;b+;flag=1;return flag;此函数的功能是( )。(分数:2.00)A.判断 a和 b两个字符串的长度是否相等B.将字符串 a改名为字符串 bC.将字符串变量 a的值赋给字符串变量 bD.判断 a和 b两个字符串是否相等29.设有如下定义和语句:1char*s;s=China;2chars7;s=China;3chars=China;4char
13、s;s=China;其中定义项可以作为字符串使用的是( )。(分数:2.00)A.1和2B.1和3C.1和4D.3和430.有以下程序: #lnclude #include int f(int n) int*P; p=(int*)malloc(sizeof(int); *P=n;return *P; main() int a; a=f(5);printf(dn,a+f(10); 程序的运行结果是( )。(分数:2.00)A.15B.20C.0D.出错31.有以下程序: #include struct ST int a,b;data2=10,100,20,200; main() struct S
14、T p=data0; printf(dn,+(pa); 程序运行后的输出结果是( )。(分数:2.00)A.10B.11C.20D.2132.关于 C语言中对文件操作叙述中正确的是( )。(分数:2.00)A.C语言中的文件是流式文件,因此只能顺序存取数据B.打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖C.在对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第 1个数据D.当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失33.有以下程序: #include main() FILE*fp; int i,a6=a,b,c,d,e,f,k; fp=f
15、open(datadat,w+b); fwrite(&a0,sizeof(int),1,fp); for(i=1;i6;i+) fseek(fp,0L,0); fwrite(&ai;sizeof(int),1,fp); fseek(fp,0L,0); fread(&k,sizeof(int),1,fp); fclose(fp); pfintf(cn,k); 程序运行后的输出结果是( )。(分数:2.00)A.abcdefB.abC.fD.fedcba34.有以下程序:#lncludestdioh#define F(x)(xx)*xmain()int k=4,j=2;printf(d,dn,F(
16、k+j),F(j+k);程序运行后的输出结果是( )。(分数:2.00)A.26,6B.28,6C.6,6D.26,2635.下列选项中结果为 0的是( )。(分数:2.00)A.a=a&0;B.a=a0;C.a=a 0:D.a=!a;36.程序中若有以下的说明定义和语句: #include #include struct ST char num10;int s; main() struct ST t,*p; p=&t; 下列语句不能正确赋值的是( )。(分数:2.00)A.(*p)s=2;pnum0=0;B.ps=12;pnum0=0;C.(*p)s=12;(*p)num= ;D.ps=12
17、;strcpy(*p)mum, );37.有以下程序: #include intg(int a) int b=2; static int c=2; b+;c;return(a+b+c); main() int k,a=5; for(k=0;k3;k+)printf(d,g(a); printf(n); 执行后的输出结果是( )。(分数:2.00)A.987B.888C.678D.66638.设已定义 int i和 char cl10,c210=Chinese;则能正确赋值的语句是( )。(分数:2.00)A.c1=c2;B.for(i=0;i=7;i+)cli=c2i;C.while(c2)c
18、1+=c2+;D.for(i=0;c2i;i+)cli=c2i;39.以下程序拟读取一个学生结构体中的人名,查找其年龄并输出: #include #include #include struct stuchar name10;int age; struct stu team6=zhangli,18, wangtao,20, limei,19, zhaodong,18, liuxiu,19 ,*P; main() inti,flag=0; p=(struct stu *)malloc(sizeof(struct stu); gets(&pname); for(i=0;i6;i+) if(strc
19、mp(pname,teaminame)=0) pfintf(dn,teamiage); flag=1; if(flag=0)printf(No find!n); 程序有语法错误,出错的是( )。(分数:2.00)A.pfintf(dn,teamiage)B.p=(struct stu*)malloc(sizeof(structstu)C.if(strcmp(pname,teaminame)=0)D.gets(&pname);40.有以下程序: #include #include main() FILE*fp; char ch,str5; if(fp=fopen(datadat,wb+)=NUL
20、L) printf(error!n);exit(0); ch=getchar();while(ch!=!) fputs(ch,fp); ch=getchar(); rewind(fp); do fgets(str,4,fp); puts(str); while(!feof(fp); felose(fp); 程序运行时输入:hello!,则程序的输出结果是( )。(分数:2.00)A.helloB.he 1loC.hell oD.hell二、程序填空题(总题数:1,分数:2.00)41.下列给定程序中,函数 fun的功能是:在形参 ss所指字符串数组中查找与形参 t所指字符串相同的串,找到后返回
21、该串在字符串数组中的位置(即下标值),若未找到则返回一 1。ss 所指字符串数组中共有 N个内容不同的字符串,且串长小于 M。 请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 注意:部分源程序在文件 BLANKlC 中。不得增行或删行,也不得更改程序的结构! #include #include #define N 5 #define M 8 int fun(char(*ss)M,char*t) int i: *found* for(i=0;i【1】;i+) *found* if(strcmp(ssi,t)=0)return【2】; return 一 1: main()
22、char chNM=if,while,switch,int,for,tM; int n,i; printf(nnThe original stringnn); for(i=0;iN;i+)puts(chi); printf(n); printf(nEnter a string for search:);gets(t); n=fun(ch,t); *found* if(n=【3】printf(nDont found!n); else printf(nThe position isdn,n); (分数:2.00)_三、程序修改题(总题数:1,分数:2.00)42.给定程序 MODi1C 中,函数
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 语言 模拟 试卷 134 答案 解析 DOC
