【计算机类职业资格】二级C语言笔试-352及答案解析.doc
《【计算机类职业资格】二级C语言笔试-352及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-352及答案解析.doc(37页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-352 及答案解析(总分:118.00,做题时间:90 分钟)一、选择题(总题数:50,分数:68.00)1.在设计程序时,应采纳的原则之一是( )。A) 不限制 goto语句的使用 B) 减少或取消注解行C) 程序越短越好 D) 程序结构应有助于读者理解(分数:1.00)A.B.C.D.2.若要求在 if后一对圆括号中表示 a不等于 0的关系,则能正确表示这一关系的表达式为 ( )A) a0B) ! aC) a0D) a(分数:1.00)A.B.C.D.3.己知 int i,x34;,则不能将 x11的值赋给变量 i的语句是_。A) i=*(*(x+1)+1) B) i=*
2、(*(x+1)C) i=x11 D) i=*(x1+1)(分数:1.00)A.B.C.D.4.以下程序的输出结果是( )。main()int i,x33=9,8,7,6,5,4,3,2,1,*p= int i,j;i=sizeof (a);j=strlen(a);print f (“ %d, %d/n“ i, j );程序运行后的输出结果是A) 9,9 B) 8,9 C) 1,8 D) 9,8(分数:1.00)A.B.C.D.7.以下选项中不合法的标识符是A) ptint B) FOR C) int s=1;s+=i; i+;return s;main ( )int i,a=0;for (i=
3、0;i5; i+) a+=f();printf ( “%d/n“ ,a);A) 20 B) 24 C) 25 D) 15(分数:1.00)A.B.C.D.10.有以下程序:main()int a=1,b=2,m=0,n=0,k;k=(n=ba)|(m=ab);printf(“%d,%d/n“m,k,m);程序运行后的输出结果是( )。A) 0,0 B) O,1 C) 1,0 D) 1,1(分数:1.00)A.B.C.D.11.关于下面的程序,正确的说法是( )。int a,i=1;while(i=0)scanf(“%d“,char c;double a;a;A) 8 B) 9 C) 10 D)
4、 11(分数:1.00)A.B.C.D.15.以下叙述中正确的是( )。AC 语言程序将从源程序中第一个函数开始执行B可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行CC 语言规定必须用 main作为主函数名,程序将从此开始执行,在此结束Dmain 可作为用户标识符,用以命名任意一个函数作为主函数(分数:1.00)A.B.C.D.16.下列合法的字符型常量是( )。A) /x13 B) /081 C) 65 D) “/n/(分数:2.00)A.B.C.D.17.设有定义:int m=0;。以下选项的 4个表达式中与其他 3个表达式的值不相同的是A) +m B) m+=1 C)
5、m+ D) m+1(分数:1.00)A.B.C.D.18.有以下程序main()int x=1,3,5,7,2,4,6,0,i,j,k;for(i=0; i3 ; i+)for(j=2; j=i ; j-)if(xj+1xj) k=xj; xj=xj+1; xj+1=k; for(i=0; i3; i+)for(j=4; j7-i; j+)if(xjxj+1)k=xj; xj=xj+1; xj+1=k; for(i=0; i8; i+)printf(“%d“,xi);printf(“/n“);程序运行后的输出结果是_。A) 75310246 B) 01234567 C) 76310462 D)
6、 13570246(分数:1.00)A.B.C.D.19.有三个关系 R、S 和 T如下:(分数:2.00)A.B.C.D.20.有以下程序:#include stdlib.hstruct NODEint num; struct NODE *next; ;main()struct NODE *p,*q,*r;p=(struct NODE*)malloc(sizeof(struct NODE);q=(struct NODE*)mallloc(sizeof(struct NODE);r=(struct NODE*)malloc(sizeof(struct NODE);p-num=10;q-num=
7、20; r-num=30;p-next=q;q-next=r;printf(“%d/n“,p-num+q-next-num);程序运行后的输出结果是( )。A) 10 B) 20 C) 30 D) 40(分数:1.00)A.B.C.D.21.下面的程序执行后,文件 test.t中内容是_。#includestdio.hvoid fun(clar *fname,char *st)FILE*myf;int i;myf=fopen(fname,“w“);for(i=0;istden(st);i+)fputc(sti,myf);fclose(myf);main()fun(“test.t“,“new w
8、orld“); fur(“test.t“,“hello,“;A) hello, B) new worldhello C) new world D) hello,rld(分数:2.00)A.B.C.D.22.设有图书(图书编号,书名,第一作者,出版社)、读者(借书证号,姓名,单位,职称)和借阅(借书证号,图书编号,借书日期,还书日期)三张表,则表借阅的关键字(键或码)为A) 借书证号,图书编号 B) 图书编号,借书日期C) 借书日期,还书日期 D) 借书证号,借书日期(分数:2.00)A.B.C.D.23.若已建立下面的链表结构,指针 p、s 分别指向图中所示的结点,则不能将 s所指的结点插入到
9、链表末尾的语句组是 ( )(分数:1.00)A.B.C.D.24.现有如下程序段:#include “stdio.h“main()int a56=23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,1;int i=0,j=5;printf(“%d/n“,*(i9;i+=2)s+=*(t+i);printf(“%d/n“,s);程序执行后的输出结果是_。A) 45 B) 20 C) 25 D) 36(分数:2.00)A.B.C.D.26.下列特征中不是面向对象方法的主要特征的是( )。A) 多态性 B) 继承
10、C) 封装性 D) 模块化(分数:2.00)A.B.C.D.27.线性表 L=(a1,a2,a3,ai,an),下列说法正确的是( )。A) 每个元素都有一个直接前件和直接后件B) 线性表中至少要有一个元素C) 表中诸元素的排列顺序必须是由小到大或由大到小D) 除第一个元素和最后一个元素外,其余每个元素都有一个旦只有一个直接前件和直接后件(分数:1.00)A.B.C.D.28.在深度为 7的满二叉树中,叶子结点的个数为( )。A) 32 B) 31 C) 64 D) 63(分数:1.00)A.B.C.D.29.运行下面的程序,其输出结果为_。main()printf(“%d,%d“,5%-3,
11、-5%3);A) 2,-2 B) -2,2 C) -2,-2 D) 2,2(分数:1.00)A.B.C.D.30.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:2.00)A.B.C.D.31.假定 x和 y为 double型,则表达式 x=2,y=x+3/2 的值是( )。A) 3.500000 B) 3C) 2.000000 D) 3.000000(分数:1.00)A.B.C.D.32.C语言中,组成数据文件的成分是_。A) 记录 B) 数据行 C) 数据块 D) 字符 (字节) 序列(分数:1.00)A.B.C.D.33.下列能正确定义一维数组的选项是( )。A) int a5=
12、0,1,2,3,4,5; B) char a=0,1,2,3,4,5;C) char a=A,B,C; D) int a5=“0123“;(分数:2.00)A.B.C.D.34.冒泡排序在最坏情况下的比较次数是_。(A) n(n+1)/2(B) nlog2n(C) n(n-1)/2(D) n/2(分数:2.00)A.B.C.D.35.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是_。A) 函数的实参和其对应的形参共占同一存储单元B) 形参只是形式上的存在,不会占用具体存储单元C) 同名的实参和形参占同一存储单元D) 函数的形参和实参分别占用不同的存储单元(分数:2.00)A
13、.B.C.D.36.若有以下语句,则以下叙述中正确的是 typedef struct S int g; char h; T; A) 可用 S定义结构体变量 B) 可用 T定义结构体变量 C) S是 struct类型的变量 D) T 是 struct S类型的变量(分数:2.00)A.B.C.D.37.以下程序运行后,输出结果是_。#includestdio.h#define PT 5.5#difine S(x) PT*x*xmain()int a=1,b=2;printf(“%4.1f/n“,S(a+b);A) 49.5 B) 9.5 C) 22.0 D) 45.0(分数:1.00)A.B.C
14、.D.38.下列程序的输出结果是_。#define A100main()int i=0,sum=0;do if(i=(i/2)*2)continue;sum+=i;while(+iA) ;printf(“%d/n“,sum);A) 2500 B) 2050 C) 4 D) 0(分数:1.00)A.B.C.D.39.设有以下说明语句:struct exint x;float y;char z;example;在下面的叙述中,不正确的一条是_。A) struct是结构体类型的关键词 B) example 是结构体类型名C) x,y,2 都是结构体成员名 D) struct ex 是结构体类型(分数
15、:1.00)A.B.C.D.40.语句“printf(“a/bhow/are/y/bou/n“);”的输出结果是( )。A) a/bhow/are/y/bou B) a/bhow/are/y/bouC) howareyou D) ahowarey/bou(分数:2.00)A.B.C.D.41.下列叙述中错误的是_。(A) 计算机不能直接执行用 C语言编写的源程序(B) C程序经 C编译后,生成后缀为.obj 的文件是一个二进制文件(C) 后缀为.obj 的文件,经连接程序生成后缀为.exe 的文件是一个二进制文件(D) 后缀为.obj 和.exe 的二进制文件都可以直接运行(分数:1.00)A
16、.B.C.D.42.下面对对象概念描述错误的是A) 任何对象都必须有继承性 B) 对象是属性和方法的封装体C) 对象间的通讯靠消息传递 D) 操作是对象的动态属性(分数:1.00)A.B.C.D.43.有以下程序:void ss(char *s,char t)while(*s)if(*s=t)*s=t-a+A;S+;main()char strl100=“abcddfefdbd“,c=d:ss(strl,c);printf(“% s/n“ ,strl);程序运行后的输出结果是()。A) ABCDDEFEDBD B) abcDDfeDbDC) abcAAfefAbA D) Abcddfefdbd
17、(分数:2.00)A.B.C.D.44.有以下程序:main()inta;char c=10;float f=100.0;double x;a=f/=c*=(x=6.5);printf(“%d %d %3.1f %3.1f/n“,a,c,f,x);程序运行后的输出结果是 _。A) 1 65 1 6.5 B) 1 65 1.5 6.5C) 1 65 1.0 6.5 D) 2 65 1.5 6.5(分数:2.00)A.B.C.D.45.设有定义:int k=1,m=2;float f=7;则下列选项中错误的表达式是( )。A) k=k=k B) -k+ C) k%int(f) D) k=f=m(分
18、数:1.00)A.B.C.D.46.设变量均已正确定义,若要通过 scanf(“%d%c%d%c“,pf=fopen(“abc.dat“,“wb+“);fwrite(s2,7,1,pf);rewind(pf); /*文件位置指针回到文件开头*/fwrite(s1,5,1,pf); fclose(pf);以上程序执行后 abc.dat文件的内容是_。A) China B) Chinang C) ChinaBeijing D) BeijingChina(分数:2.00)A.B.C.D.50.下面描述中错误的是_。A) 系统总体结构图支持软件系统的详细设计 B) 软件设计是将软件需求转换为软件表示的
19、过程C) 数据结构与数据库设计是软件设计的任务之一 D) PAD 图是软件详细设计的表示工具(分数:2.00)A.B.C.D.二、填空题(总题数:19,分数:50.00)51.函数 my_cmp()的功能是比较字符串 s和 t的大小,当 s等于 t时返回 0,否则返回 s和 t的第一个不同字符的 ASCII码差值,即 st 时返回正值,当 st 时返回负值。请填空。my_cmp(char *s,char*t)while(*s=*t)if(*s=/0)return 0;+s; +t;return_;(分数:2.00)填空项 1:_52.若有定义语句:int a=5;,则表达式 a+的值是 1。(
20、分数:2.00)填空项 1:_53.设在主函数中有以下定义和函数调用语句,且 fun函数为 void类型,请写出 fun函数的首部_。要求形参名为 b。main()double s10 22;int n;fun(s);(分数:2.00)填空项 1:_54.按照软件测试的一般步骤, 1 测试应在集成测试之前进行。(分数:4.00)填空项 1:_55.软件的调试方法主要有:强行排错法、 1 和原因排除法。(分数:2.00)填空项 1:_56.下列语句能循环_次。int s=12;while(s);-s;(分数:2.00)填空项 1:_57.“print(“%d/n“,strlen(“/t/“/02
21、3/xABC/n“);”语句的输出结果是_。(分数:2.00)填空项 1:_58.在面向对象方法中,类之间共享属性和方法的机制称为 1。(分数:2.00)填空项 1:_59.以下程序运行后的输出结果是_。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“);(分数:4.00)填空项 1:_60.在一棵二叉树上第 6层的结点个数最多是 1。(分数:1.00)填空项 1:_61.下面 rotate函数的功能是:将
22、n行 n列的矩阵 A转置 A,例如(分数:8.00)填空项 1:_62.以下程序中,for 循环体执行的次数是_。# define N 2# define M N+1# define K M+1*M/2main()int i;for(i=1; iK; i+).(分数:2.00)填空项 1:_63.在数据库管理系统提供的数据定义语言、数据操纵语言和数据控制语言中, 1 负责数据的模式定义与数据的物理存取构建。(分数:4.00)填空项 1:_64.以下程序运行后输入:3,abcde回车,则输出结果是_。# includestring.hmove(char *str,int n)char temp
23、int i;temp=strn-1);for(i=n-1;i0;i-)stri=stri-1;str0=tempmain()char s50;iht n,i,z;scanf(“%d,%s“,z=strlen(s);for(i=1;i=n;i+)move(s,z);printf(“s/n“,s);(分数:2.00)填空项 1:_65.下列程序的运行结果是_。#includestdio.hmain()int a,b,C;a=3;b=4;c=5;if(aB) if(aC) printf(“%d“,A) ;elseprintf(“%d“,B) ;printf(“%d/n“,C) ;(分数:2.00)填
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 352 答案 解析 DOC
