【计算机类职业资格】国家二级(C语言)机试模拟试卷135及答案解析.doc
《【计算机类职业资格】国家二级(C语言)机试模拟试卷135及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级(C语言)机试模拟试卷135及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级(C 语言)机试模拟试卷 135及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.有关线性链表的叙述中正确的是( )。(分数:2.00)A.进行插入与删除时,不需要移动表中的元素B.各数据节点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续C.各数据节点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致D.以上说法均不正确2.有关队列的叙述中正确的是( )。(分数:2.00)A.循环队列是队列的一种链式存储结构B.循环队列是队列的一种顺序存储结构C.循环队列是非线性结构D.循环队列是一种逻辑结构3.一棵二叉树共有 20个节
2、点,其中 5个是叶子节点,则度为 1的节点数为( )。(分数:2.00)A.15B.11C.6D.44.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。(分数:2.00)A.内模式B.外模式C.概念模式D.逻辑模式5.在满足实体完整性约束的条件下( )。(分数:2.00)A.一个关系中可以没有任何候选关键字B.一个关系中有且只有一个候选关键字C.一个关系中必须有多个候选关键字D.一个关系中应该有一个或多个候选关键字6.有三个关系 R、S 和 T如下: (分数:2.00)A.自然连接B.差C.除D.交7.在软件设计中不使用的工具是( )。(分数:2.00)A.PAD图B.程序流
3、程图C.系统结构图D.数据流图(DFD 图)8.关于需求分析阶段任务的叙述中不正确的是( )。(分数:2.00)A.确定软件系统的功能需求B.确定软件系统的性能需求C.需求规格说明书评审D.制订软件测试计划9.黑盒测试用例的主要根据是( )。(分数:2.00)A.算法合理性B.程序外部功能C.相关数据结构D.程序流程图10.关于软件危机表现的叙述中不正确的是( )。(分数:2.00)A.软件过程文件不规范B.软件开发生产率低C.软件质量难以控制D.软件成本不断提高11.关于程序模块化的叙述中错误的是( )。(分数:2.00)A.可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序
4、B.把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块C.把程序分成若干相对独立的模块,可便于编码和调试D.可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序12.关于 C语言程序格式的叙述中正确的是( )。(分数:2.00)A.用 C语言编写的程序只能放在一个程序文件中B.C程序书写格式严格,要求一行内只能写一个语句C.C程序中的注释只能出现在程序的开始位置和语句的后面D.C程序书写格式自由,一个语句可以写在多行上13.设 int m=0;与其他三个表达式的结果不同的是( )。(分数:2.00)A.m+B.m+=1C.+mD.m+114.关于 C语言数据类型叙述中
5、,错误的是( )。(分数:2.00)A.若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型B.若要保存带有多位小数的数据,可使用双精度类型C.若只处理“真”和“假”两种逻辑值,应使用逻辑类型D.整数类型可以用来表示自然数15.以下数值常量不符合 C语言语法的是( )。(分数:2.00)A.30E02B.le3C.012D.0xabcd16.有如下程序段:int x=12;double y=3141593;printf(d86f,x,y);其输出结果是( )。(分数:2.00)A.12,3141593B.123141593C.12 3141593D.123141593017.已知
6、字符A的ASC代码值是 65,字符变量 a的值是A,b 的值是D。则执行语句orintf(d,d,a,b 一 2);的输出结果是( )。(分数:2.00)A.A,DB.A,BC.65,68D.65,6618.当 x为大于 1的奇数时,值为 0的表达式是( )。(分数:2.00)A.x2=0B.x3C.x2!=0D.x2=119.有以下程序: #include main() int x; scanf(d,&x); if(x=4); else if(x8)printf(dn,x); 程序运行时,输入的值在哪个范围才会有输出结果?( )(分数:2.00)A.小于 4的整数B.不等于 8的整数C.大于
7、 4或等于 8的整数D.大于 4且小于 8的整数20.有以下程序: #include main() int a=7; while(a); printf(dn,+a); 程序运行后的输出结果是( )。(分数:2.00)A.0B.一 1C.1D.721.有以下程序: #include main() char b,c; inti; b=a; c=A; for(i=0;i6;i+) if(i2)putehar(i+b); else putchar(i+c); printf(n); 程序运行后的输出结果是( )。(分数:2.00)A.abcDEFB.ABcDEfC.aBcDeFD.AbCdEf22.有以
8、下程序: #include main() int i,j,x=0; for(i=0;i2;i+) x+: for(j=0;j4;j+) if(j2)continue; x+: x+: printf(x:dn,x); 程序执行后的输出结果是( )。(分数:2.00)A.x:4B.x:8C.x:6D.x:1223.设有以下函数:int fun(int n,char*s)则下面对函数指针的定义和赋值均正确的是( )。(分数:2.00)A.int(*pf)(int,char);pf=&fun;B.int*pf();pf=fun;C.int*pf();*pf=fun;D.int(*pf)(int,cha
9、r*);pf=fun;24.若用变量作为实参调用函数,以下正确的是( )。(分数:2.00)A.函数的形参和实参分别占用不同的存储单元B.形参只是形式上的存在,不占用具体存储单元C.同名的实参和形参占同一存储单元D.函数的形参会覆盖实参存储空间的值25.若要求定义具有 10个 float型元素的一维数组 a,则以下定义语句中错误的是( )。(分数:2.00)A.float a5+5;B.float n=10,an;C.#define n 5 float a2*n;D.#define N 10 float aN;26.有以下程序: #include main() int i,t3=1,2,3,4
10、,5,6,7,8,9; for(i=0;i3;i+) printf(d,t2 一 ii); 程序执行后的输出结果是( )。(分数:2.00)A.3 5 7B.7 5 3C.3 6 9D.7 5 127.有以下程序: #include void fun(int*s,int n1,int n2) int i,j,t; i=n1;j=n2; while(ij) t=si;si:sj;sj:t;i+;j main() int a10=9,8,7,6,5,4,3,2,1,0,k; fun(a,0,2);fun(a,7,9);fun(a,0,7); for(k=0;k10;k+) printf(d,ak)
11、; printf(n); 程序运行后的输出结果是( )。(分数:2.00)A.2341098765B.03456987 12C.9876543210D.098765123428.有以下程序: #include main() int a44=1,2,3,4,1,6,5,9,3,7,2,5,4,2,4,l,i,k,t; for(i=0;i3;i+) for(k=i+1;k4;k+) if(aiiakk) t=aii;aii=akk;akk=t; for(i=0;i4;i+) printf(d,a0i); 程序运行后的输出结果是( )。(分数:2.00)A.9,1,2,6B.6,2,3,4C.6,4
12、,3,2D.9,3,4,629.以下关于字符串的表达式中正确的语句组是( )。(分数:2.00)A.char*s;s=Chinese!;B.char*s;s=Chinese!;C.char s 10;s=Chinese!;D.char s;s=Chinese!;30.若有以下定义和语句: #include char cl10=123,c2=n123; printf(ddn,strlen(c1),strlen(c2); 则输出结果是( )。(分数:2.00)A.10 7B.10 5C.3 7D.3 531.有以下程序: #include void funl(char*p) char*q; q=p
13、; while(*q!=0) (*q)+; q+; main() char a=1234567,*P; p=&a3; funl(P); printf(sn,a); 程序执行后的输出结果是( )。(分数:2.00)A.1235678B.2345678C.1245678D.765432132.有以下函数:int sf(char*s)char*t=s;while(*t+);t;return(t 一 s);以下关于 sf函数功能叙述正确的是( )。(分数:2.00)A.将字符串 s复制到字符串 tB.求字符串的 ASC码值C.求字符串 s的长度D.求字符串 s所占字节数33.有以下程序: #inclu
14、de int fun(int x,int y) if(y=0)return x; else return(fun(一一 x,一一 y); main() printf(dn,fun(5,3); 程序运行后的输出结果是( )。(分数:2.00)A.1B.2C.3D.434.关于函数的叙述中错误的是( )。(分数:2.00)A.C程序函数中定义的自动变量,系统不自动赋确定的初值B.在 C程序的同一函数中,可以在复合语句内定义变量C.C程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值D.C程序函数的形参不可以说明为 static型变量35.有以下程序段:struct stint x;in
15、t*y;*ps;int a:1,2,b=3,4;struct st c2=10,a,15,b;ps=c;以下选项中表达式的值为 15的是( )。(分数:2.00)A.+ps一xB.ps一xC.*ps一yD.(ps+)一x36.有以下程序: #include struct STint n;int a20; void fun(int*a,int n) int i; for(i=0;in 一 1;i+) ai+=1; main() int i; struct ST s=10,1,2,3,4,5,6,7,8,9,10; fun(sa,sn); for(i=0;isn;i+) printf(d,sa i
16、); 程序运行后的输出结果是( )。(分数:2.00)A.10,9,8,7,6,5,4,3,2,1,B.2,3,4,5,6,7,8,9,10,11,C.11,10,9,8,7,6,5,4,3,2,D.2,3,4,5,6,7,8,9,10,10,37.有以下程序: #include #include typedef structchar name9;char sex;float score2;ST; void fun(ST x) STU y=Tom,m,980,900; int i; strcpy(xname,yname);xsex=ysex: for(i=0;i2;i+) xscore i=y
17、score 1; main() ST student=Bob,f,992,890; fun(student); printf(s,c,20f,20fn,studentname,studentsex,studentscore0,student score1); 程序运行后的输出结果是( )。(分数:2.00)A.Tom,m,98,90B.Bob,f,99,89C.Bob,f,98,90D.Tom,f,99,8938.设文件指针 fp=fopen(file,W),关于此文本文件操作的叙述中正确的是( )。(分数:2.00)A.可以随意读和写B.写操作结束后可以从头开始读C.可以在原有内容后追加写D
18、.只能写不能读39.有以下程序: #include #define f(x)2*x*x main() int a=2,s,t; s=f(a+1); t=f(a+1); printf(d,dn,s,t); 程序运行后的输出结果是( )。(分数:2.00)A.7,18B.18,18C.7,7D.18,740.有以下程序: #include main() char x=4; printf(dn,x=x2); 程序运行后的输出结果是( )。(分数:2.00)A.16B.8C.40D.4二、程序填空题(总题数:1,分数:2.00)41.函数 fun的功能是:将一副扑克牌编号为 1,2,3,53,54,以
19、某种特定的方式洗牌,这种方式是将这副牌分成两半,然后将它们交叉,并始终保持编号为 1的牌在最上方,如第一次这样洗牌后的结果为:1,28,2,29,53,27,54。第二次洗牌后的结果为:1,41,28,15,2,42,53,40,27,14,54。 程序的功能是:输出经过 n次这样洗牌后的结果。 请在程序的下划线处填入正确的内容,并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的 BLANK1C 中。不得增行或删行,也不得更改程序的试题程序: #include void fun(int a55,int n) int i,k; *found* int【1】55; for(i
20、=0;in;i+) for(k=1;k=27;k+) b2*k 一 1=ak; *found* b【2】*k=ak+27; for(k=1;k=54:k+) *found* ak=【3】; main() int m,a55,i; for(i=1;i55;i+)ai=i; printf(请输入洗牌次数:);scanf(d,&m); fun(a,m);for(i=l;i55;i+)printf(d,ai); printf(n); (分数:2.00)_三、程序修改题(总题数:1,分数:2.00)42.下列给定程序中函数 fun的功能是:用冒泡法对 6个字符串进行升序排列。请改正程序中的错误,使它能得
21、出正确的结果。 注意:部分源程序在文件 MOD11C 中,不得增行或删行,也不得更改程序的结构!#includestdioh#includestringh#define MAXLINE 20fun(char * pstr6)int i,j;char*P;for(i=0;i5;i+)*found*for(j=i+1,j6,j+) if(strcmp(*(pstr+i),*(pstr+j)0)p=*(pstr+i);*found*(pstr+j)=*(pstr+i);*(pstr+j)=p;void main( )int i;char * pstr6,str6MAXUNE;for(i=0;i6;i
22、+)pstri=stri;printf(nEnter 6 string(1 string at each line):n);for(i=0;i6;i+) scartf(s,pstri);fun(pstr);printf(The strings after sorting:n);for(i=0;i6;i+)printf(sn,pstri);(分数:2.00)_四、程序设计题(总题数:1,分数:2.00)43.若干名学生的成绩已在主函数中放入一个带头结点的链表结构中,h 指向链表的头结点。请编写函数fun,其功能是:求出学生的平均分,并由函数值返回此平均成绩。例如,若学生的成绩是:85 76 69
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 语言 模拟 试卷 135 答案 解析 DOC
