【计算机类职业资格】二级C语言笔试-368及答案解析.doc
《【计算机类职业资格】二级C语言笔试-368及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-368及答案解析.doc(40页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-368 及答案解析(总分:102.00,做题时间:90 分钟)一、选择题(总题数:50,分数:69.00)1.若要定义一个具有 5个元素的整型数组,以下错误的定义语句是( )。 A) int a5=0; B) int b=0,0,0,0,0; C) int c2+3; D) int i=5,di;(分数:2.00)A.B.C.D.2.下列数据中,不合法的 C语言实型数据是A) 0.123 B) 123e3 C) 2.1e3.5 D) 789.0(分数:1.00)A.B.C.D.3.以下程序的输出结果是_。#includestdio.h#define SQR(x)x*xmain
2、()int a;k=3;a=+SQR(k+1);printf(“%d/n“,a) ;A) 8 B) 9 C) 17 D) 20(分数:1.00)A.B.C.D.4.下列程序的执行结果是_。#include stdio.hunion unint i;char c2;void main()union un x;x.c0=10;x.c1=1;printf(“/n%d“,x.i)A) 266 B) 11 C) 265 D) 138(分数:1.00)A.B.C.D.5.下列叙述中错误的是( )。A) 一种数据的逻辑结构可以有多种存储结构B) 数据的存储结构与数据处理的效率无关C) 数据的存储结构与数据处
3、理的效率密切相关D) 数据的存储结构在计算机中所占的空间不一定是连续的(分数:1.00)A.B.C.D.6.当输入为“quert?”时,下面程序的执行结果是 ( )#indudestdio.hmain()char c;c=getehar();while(c=getchar()!=?)putchar(+c) ;A) Quert B) vfsu C) quert? D) rvfsu?(分数:1.00)A.B.C.D.7.设有以下定义:struck skint a;float b;data;int *p;若要使 p指向 data中的 a域,正确的赋值语句是( )。A) p=default:print
4、f(“OK“);A) 0 B) 3 C) OK D) 没有任何输出(分数:1.00)A.B.C.D.9.下列叙述中,正确的是A) 用 E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系B) 用 E-R图只能表示实体集之间一对一的联系C) 用 E-R图只能表示实体集之间一对多的联系D) 用 E-R图表示的概念数据模型只能转换为关系数据模型(分数:1.00)A.B.C.D.10.与数学式子 (分数:1.00)A.B.C.D.11.以下选项中,非法的字符常量是_。A) t/ B) /17 C) “/n“ D) /xaa(分数:2.00)A.B.C.D.12.以下程序(函数 fun只对下
5、标为偶数的元素进行操作)运行后的输出结果是 #includestdio.h void fun(int *a, int n) int i, j, k, t; for(i=0; in-1; i+=2) k=i; for(j=i; jn; j+=2) if(ajak) k=j; t=ai; ai=ak; ak=t; main() int aa10=1, 2, 3, 4, 5, 6, 7, i; fun(aa, 7); for(i=0; i7; i+) printf(“%d, “, aai); printf(“/n“); A) 7,2,5,4,3,6,1 B) 1,6,3,4,5,2,7 C) 7,6
6、,5,4,3,2,1 D) 1,7,3,5,6,2,1(分数:2.00)A.B.C.D.13.从未排序序列中依次取出元素与已排序序列中的元素作比较,将取出的元素放入已排序序列中的正确位置上,此方法称为_。A) 归并排序 B) 选择排序 C) 交换排序 D) 插入排序(分数:2.00)A.B.C.D.14.若有定义:“int a23;“则对 a数组的第 i行第 j列元素的正确引用为( )。A) *(*(a+i) j) B) (a+i)jC) *(a+i+j) D) * (a+i) +j(分数:1.00)A.B.C.D.15.下面函数调用语句含有实参的个数为func(exp1,exp2),(exp
7、3,exp4,exp5);A) 1 B) 2 C) 4 D) 5(分数:1.00)A.B.C.D.16.设有如下的变量定义;int i=8,k,a,b;unsinged long w=5;double x=1.42,y=5.2则以下符合 C语言语法的表达式是 ( )A) a+=a-=(b=4)*(a=3) B) x%(-3);C) aa*32 D) yfloat(i)(分数:1.00)A.B.C.D.17.以下语句中存在语法错误的是_。A) char ss620;ss1=“right?“; B) char ss20=“right?“;C) char*ss6;ss1=“right?“; D) c
8、har*ss=“right?“;(分数:2.00)A.B.C.D.18.有如下程序段int a=14,b=15,x;char c=A;x=(aint f(int n)int t=0; static int a=5;if(n%2) int a=6; t+=a+;else int a=7; t+=a+;return t+a+;main()int s=a,i=0;for(;i2; i+) s+=f(i);printf(“%d/n“,s);程序运行后的输出结果是( )。A) 24 B) 28 C) 32 D) 36(分数:1.00)A.B.C.D.20.下列叙述中正确的是_。A) 软件交付使用后还需要
9、进行维护B) 软件一旦交付使用就不需要再进行维护C) 软件交付使用后其生命周期就结束D) 软件维护是指修复程序中被破坏的指令(分数:2.00)A.B.C.D.21.设变量已正确定义并赋值,以下正确的表达式是_。A) x=y*5=x+zB) int(15.8%5)C) x=y+z+5,+yD) x=25%5.0(分数:1.00)A.B.C.D.22.有下列二叉树,对此二叉树中序遍历的结果为( )。(分数:2.00)A.B.C.D.23.两次运行下列的程序,如果从键盘上分别输入 3和 1,则输出结果是( )。main()int x;scanf(“%d“, B)c=“97“; C)c=97; D)c
10、=“a“;(分数:1.00)A.B.C.D.30.下面四个选项中,均是不正确的 8进制数或 16进制数的选项是A) 016 0x8f 018 B) 0abc 017 0xaC) 010 -0x11 0x16 D) 0a12 7ff -123(分数:1.00)A.B.C.D.31.avg函数的功能是求整型数组中的前若干个元素的平均值,设数组元素个数最多不超过 10,则下列函数说明语句错误的是( )。A) int avg(int*a,int n); B) int avg(int a10,int n);C) int avg(int a,int n); D) int avg(int a,int n);
11、(分数:2.00)A.B.C.D.32.以下程序运行后的输出结果是 #includestdio.h main() int y=10; while(y-); printf(“y=%d/n“, y); A) y=0 B) y=-1 C) y=1 D) while构成无限循环(分数:2.00)A.B.C.D.33.有以下程序#inc1udestdio.hvoid fun(char*s)while(*s)if(*s%20) printf(“%c“,*s);s+ main()char a=“good“;fun(A) ; prntf(“n/“);注意:字母 a的 ASCII码值为 97,程序运行后的输出结
12、果是_。A) d B) go C) god D) good(分数:2.00)A.B.C.D.34.若有以下定义和语句:int s45,(*ps)5;ps=s;则对 s数组元素的正确引用形式是A) ps+1 B) *(ps+3) C) ps02 D) *(ps+1)+3(分数:1.00)A.B.C.D.35.有以下程序#includestdio.hmain()(int x=1, y=0;if(!x) y+;else if(x=0)if(x)y+=2; else y+=3;printf(“%d/n“, y);程序运行后的输出结果是_。A) 3 B) 2 C) 1 D) 0(分数:1.00)A.B.
13、C.D.36.以下程序运行后的输出结果是#includestdio.h#includestdlib.hint fun(int n)int *p;p=(int*)malloe( sized ( int );* p=n; return * p;main( )int a;a=fun(10);printf(“%d/n“,a+fun(10);A) 0 B) 10 C) 20 D) 出错(分数:2.00)A.B.C.D.37.以下程序运行后的输出结果是( )。 #includestdio.h void reverse(int a,int n) int i,t; for(i=0;in/2;i+) t=ai;
14、ai=an-1-i;an-1-i=t; main() int b10=10,9,8,7,6,5,4,3,2,1;int i,s=0; reverse(b,10); for(i=0;i3;i+)s+=bi; printf(“%d/n“,s); A) 27 B) 6 C) 25 D) 30(分数:2.00)A.B.C.D.38.为了使模块尽可能独立,要求( )。A) 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B) 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C) 模块的内聚程度要尽量低,且各模块间的偶合程度要尽量弱D) 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(分数:
15、1.00)A.B.C.D.39.若变量 a,b已正确定义,且 b已正确赋值,则合法的语句是( )。A) b=double(b); B) +b; C) a=a+=5; D) a=double(b);(分数:2.00)A.B.C.D.40.已经定义 ch为字符型变量,以下赋值表达式中错误的是_。A) ch=/ B) ch=62+3 C) ch=NULL D) ch=/xaa(分数:1.00)A.B.C.D.41.能正确表示“当 x的取值在1,10和100,110范围内为真,否则为假”的表达式是( )。A) (x=1)不能给数组 a输入字符串的语句是( )。A) gets(a) B) gets(a1
16、0) C) gets(x=(z= =m);printf(“%d“,x);A) 252 B) 1C) 0 D) 运行时出错,x 无定值(分数:1.00)A.B.C.D.48.设有以下语句typedef struct Sint g; char h; T;则下面叙述中正确的是( )A)可用 S定义结构体变量 B)可以用 T定义结构体变量C)S 是 struct类型的变量 D)T 是 struct S类型的变量(分数:1.00)A.B.C.D.49.以下是 if语句的基本形式:if(表达式)语句其中“表达式”_。A) 必须是逻辑表达式 B) 必须是关系表达式C) 必须是逻辑表达式或关系表达式 D) 可
17、以是任意合法的表达式(分数:1.00)A.B.C.D.50.有以下程序:main()int i;for(i=1;1=40;i+)if(i+%5=0)if(+i%8=0)printf(“%d“,i);printf(“/n“);执行后的输出结果是( )。A) 5 B) 24 C) 32 D) 40(分数:2.00)A.B.C.D.二、填空题(总题数:20,分数:33.00)51.若 a的值为 1,则表达式!a+a 的值是 1。(分数:2.00)填空项 1:_52.当运行以下程序时,输入 abcd,程序的输出结果是:_。insert(char str)int i;i=strlen(str);whil
18、e(i0)str2*i=stri;str2*i-1=*;i-;printf(“%s/n“,str);main()char str40;scanf(“%s“,str);insert(str);(分数:2.00)填空项 1:_53.已知字母 A的 ASCII码为 65。以下程序运行后的输出结果是_。main()char a,b;a=A+5-3;b=a+6-2;printf(“%d %c/n“,a,B) ;(分数:2.00)填空项 1:_54.有以下程序:#includestcliohmain()char c;while(c=getchar()!=?)putchar(-c);程序运行时,如果从键盘输
19、入:Y?N?回车,则输出结果为_。(分数:1.00)填空项 1:_55. 1是指一个数据对象中的各个数据元素之间存在的联系。(分数:1.00)填空项 1:_56.下列程序的输出结果是_。#includestdio.hsb(int s,int b)static int n=3;b=sn;n-;return(b);main()int s=1,5,6,8;int i,x=0;for(i=0;i4;i+)x=sb(s,x);printf(“%d“,x);printf(“/n“);(分数:2.00)填空项 1:_57.以下程序中,fun 函数的功能是求 3行 4列二维数组每行元素中的最大值,请填空。vo
20、id fun(int, int, int(*)4, int*);main()int a34=12, 41, 36, 28, 19, 33, 15, 27, 3, 27, 19, 1, b3, i;fun(3, 4, a, b);for(1=0; i3; i+)printf(“% 4d“, bi);printf(“/n“);void fun(int m, int n, int ar4, int * bar)int i, j, x;for(i=0; im; i+)x=ari0;for(j=0; jn; j+)if(xarij)x=arij;_=x;(分数:2.00)填空项 1:_58.数据库系统的
21、主要特点为数据集成性、数据的高和低冗余性、数据独立性和数据统一管理和控制。(分数:2.00)填空项 1:_59.下列程序的运行结果是_。main()int s=0,i=1;while(s=10)S=S+i*i;i+;bprintf(“%d“,-i);(分数:2.00)填空项 1:_60.以下程序运行后的输出结果是_。main()int a=3,b=4,c=5,t=99;if(ba a=c;c=t;if(ac b=a;a=t;printf(“%d %d %d/n“,a,b,c);(分数:2.00)填空项 1:_61.以下程序运行后的输出结果是_。#includestdio.hint a=5;vo
22、id fun(int b)int a=10; a+=b; printf(“%d“, a);main()int c=20;fun(c); a+=c; printf(“%d/n“, a);(分数:2.00)填空项 1:_62.以下程序运行后的输出结果是 1。main( )int i,m=0,n=0,k=0;for(i=9; i=11;i+)switch(i/10)case 0: m+;n+;break;case 10: n+; break;default: k+;n+;printf(“%d %d %d/n“,m,n,k);(分数:1.00)填空项 1:_63.若有定义 doublea 5;,则 a
23、数组元素下标的上限为 1。(分数:2.00)填空项 1:_64.软件工程的出现是由于 1。(分数:1.00)填空项 1:_65.在两种基本测试方法中, 1 测试的原则之一是保证所测模块中每一个独立路径至少执行一次。(分数:2.00)填空项 1:_66.以下程序通过函数指针 p调用函数 fun,请在填空栏内写出定义变量 p的语句。void fun(int*x,int*y)main()int a=10,b=20;_:p=fun; p( double s; REC;void fun1(REC x)x.num=23; x.s=88.5;main()REC a=16, 90.0;fun1(a);prin
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 368 答案 解析 DOC
