【计算机类职业资格】二级C语言笔试-355及答案解析.doc
《【计算机类职业资格】二级C语言笔试-355及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-355及答案解析.doc(38页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-355 及答案解析(总分:105.00,做题时间:90 分钟)一、选择题(总题数:50,分数:67.00)1.有以下程序prt (int *m, int n)int i;for (i=0; in; i+)m i+;main ()int a=1,2,3,4,5,i;prta, 5);for i=0;i5;i+)printf (“%d “,ai);程序运行后输出结果是A) 1,2,3,4,5, B) 2,3,4,5,6, C) 3,4,5,6,7, D) 2,3,4,5,1(分数:1.00)A.B.C.D.2.若变量均已正确定义并赋值,以下合法的 C语言赋值语句是( )。A) x
2、=y=5; B) x=n%2.5;C) x+n=i; D) x=5=4+1;(分数:1.00)A.B.C.D.3.有以下程序段char ch; int k;ch=a; k=12;printf(“%c,%d,“,ch,ch,k); printf(“k=%d/n“,k);已知字符 a的 ASCII码值为 97,则执行上述程序段后输出结果是A) 因变量类型与格式描述符的类型不匹配输出无定值B) 输出项与格式描述符个数不符,输出为零值或不定值C) a,97,12k=12D) a,97,k=12(分数:1.00)A.B.C.D.4.设 a、b、c、d、mn 均为血型变量,且 a=5、b=6、c=7、d=
3、8、m=2、n=2,则逻辑表达式(m=ab)(n=cd)运算后,n 的值为_。A) 0 B) 1 C) 2 D) 3(分数:2.00)A.B.C.D.5.设整型数 i=5,则 printf (“%d“, i+i); 的输出为_ 。A) 10 B) 11 C) 12 D) 语法错误(分数:2.00)A.B.C.D.6.下列不属于软件工程的 3个要素的是( )。A) 工具 B) 过程 C) 方法 D) 环境(分数:2.00)A.B.C.D.7.在 Windows环境下,单击当前窗口中的按钮“ (分数:1.00)A.B.C.D.8.下列关于栈和队列的描述中,正确的是( )。 A) 栈是先进先出 B)
4、 队列是先进后出 C) 队列允许在队头删除元素 D) 栈在栈顶删除元素(分数:2.00)A.B.C.D.9.数据库设计中,用 ER图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A) 需求分析阶段 B) 逻辑设计阶段 C) 概念设计阶段 D) 物理设计阶段(分数:2.00)A.B.C.D.10.下面能正确进行字符串赋值操作的是( )。A) chars5=“ABCDE“; B) chars5=A,B,C,D,E;C) char*s;s=“ABCDE“; D) char *s;scanf(“%s“,int b=-1;a=b;printf(“ % u“, a);程序运行后的输出结果是
5、( )。A) -1 B) 65535 C) 32767 D) -32768(分数:1.00)A.B.C.D.13.以下叙述中,正确的是_。A输入项可以是一个实型常量,例如:scanf(“%f“,3.5);B只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf(“a=%d,b=%d“);C当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:scanf(“%4.2f“,则以下赋值语句正确的是_。A) p=s; B) p=k; C) p=s0; D) k=s;(分数:1.00)A.B.C.D.16.下列对于软件测试的描述中正确的是( )。A) 软件测试的目的是证明程序是否正
6、确B) 软件测试的目的是使程序运行结果正确C) 软件测试的目的是尽可能多地发现程序中的错误D) 软件测试的目的是使程序符合结构化原则(分数:2.00)A.B.C.D.17.有以下程序 main()unsigned char a=2,b=4,c=5,d;d=a|b;dfloat b;data,*p;若有 p= C) p-data.a D) p.data.a(分数:2.00)A.B.C.D.24.已知字符0的 ASCII码的十进制数为 48,并且数组的第 0个元素在低位,有以下程序#includestdiohmain()unionint i2;long k:char c4;r,*sfprintf(
7、fp,“%d%5.0f%c%d“,58,76273.0,-,2278);fclose(fp);A) 58 76273-2278 B) 5876273.000000-2278C) 5876273-2278 D) 因文件为二进制文件而不可读(分数:1.00)A.B.C.D.26.下列程序段的运行结果是( )。#includestdio.hvoid main()char str=“ABC“,*p=str;printf(“%d/n“,*(p+3) );A) 67 B) 0 C) 字符C的地址 D) 字符C(分数:2.00)A.B.C.D.27.设有变量说明 int(*p)m,其中的标识符 p是( )。
8、A) m个指向整型变量的指针B) 指向 m个整型变量的指针C) 一个指向具有 m个整型元素的一维数组的指针D) 具有 m个指针元素的一维指针数组,每个元素都指向整型变量(分数:1.00)A.B.C.D.28.数据流图中方框表示的是A) 数据流 B) 存储文件 C) 控制流 D) 源,潭(分数:2.00)A.B.C.D.29.若有说明:int a3=0,0;则不正确的叙述是( )A) 数组 a的每个元素的初值都是 0B) 数组 a的第一维大小为 1C) 数组 a的行数为 1D) 只有元素 a00和 a01可得到初值 0,其余元素均得不到初值 0(分数:1.00)A.B.C.D.30.用语句 sc
9、anf(“%c%c%c“, b+;case 1;a+;case 2:a+;b+;printf(“a=%d,b=%d/n“,a,b);该程序的输出结果是( )。Aa=2,b=1 Ba=1,b=1 Ca=1,b=0 Da=2,b=2(分数:1.00)A.B.C.D.32.下列叙述中错误的是( )。A) 在 C语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值B) 在 C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容C) 在 C语言中,外部变量的隐含类型是自动存储类别D) 在 C语言中,函数形参的存储类型是自动(auto)类型的变量(分数:2.00)A.B.C.D.33.若有定义:c
10、har *st=“how are you“; ,下列程序段中正确的是( )。A) char a11, *p; strcpy(p=a+1, st4); B) char a11; strcpy(+a, st); C) char a11; strcpy(a, st); D) char a, *p; strcpy(p=a1, st+2);(分数:1.00)A.B.C.D.34.关系代数运算是以_为基础的运算。A) 关系运算 B) 谓词运算 C) 集合运算 D) 代数运算(分数:1.00)A.B.C.D.35.下列叙述中正确的是( )。A) break语句只能用于 switch语句B) 在 switch
11、语句中必须使用 defaultC) break语句必须与 switch语句中的 case配对使用D) 在 switch语句中,不一定使用 break语句(分数:2.00)A.B.C.D.36.C源程序中不能表示的数制是A) 二进制 B) 八进制 C) 十进制 D) 十六进制(分数:1.00)A.B.C.D.37.若有定义“int a=10,b=9,c=8;”,顺序执行下列语句后,变量 b中的值是_。c=(a-=(b-5);c=a% 11)+(b=3);A) 2 B) 3 C) 4 D) 5(分数:1.00)A.B.C.D.38.若变量已正确说明为 float类型,要通过语句 scanf(“%f
12、 %f %f“, t=a; a=b; b=t; main() int i=3, j=5, *p=i, *q=j; swap(p, q); printf(1%d %d/n, *p, *q); A) 23 B) 34 C) 35 D) 45(分数:1.00)A.B.C.D.41.对于下列字符串,说明表达式 strlen(s) 值的是( )char s10=(a,/n,a,b,/t,c;A) 10 B) 1 C) 6 D) 7(分数:1.00)A.B.C.D.42.当变量 C的值不为 2、4、6 时,值也为“真”的表达式是( )。A) (c=2)(c=4)(c=6) B) (c=2c=6)(c!=3
13、)(c!=5)C) (c=2c=6)!(c%2) D) (c=2c=6)(c%2!=1)(分数:1.00)A.B.C.D.43.下列程序的输出结果是_。main ()int i, k, ai0, p3;k=5;for (i=0;i10;i+) ai=i;for (i=0;i3;i+) pi=ai*(i+l);for (i=0;i3;i+) k+=pi*2;printf (“%d/n“, k);A. 20 B. 21 C. 22 D. 23(分数:2.00)A.B.C.D.44.有以下程序:#include stdio.h#include string.hvoid fun(char *s, in
14、t n)char *t; int i, j; for(i=0; in-1; i+)for(j=i+1; jn; 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, %s/n“, ss0, ss4); 程序的运行结果是A) xy, aaaacc B) aaaacc, xy C) bcc, aabcc D) aabcc, bcc(分数:2.00)_45.C语言中逻辑表达式的值为 ( )A0 或 1 B非零值
15、或者零值Cture 或 false Dture或者false(分数:1.00)A.B.C.D.46.有以下程序main()int i=1, j=2,k=3;if(i+=1printf(“%d/n“, F(a+, b+);程序运行后的输出结果是A)12 B)15C)16D)20(分数:1.00)A.B.C.D.48.有以下程序main()unionchar ch2;int d;s;s.d=0x4321;printf(“%x,%x/n“,s.chO,s.ch1);在 16位编译系统上,程序执行后的输出结果是_。A) 21,43 B) 43,21 C) 43,00 D) 21,00(分数:1.00)
16、A.B.C.D.49.有以下定义#include stdiohchar a10,*b=a;不能给 a数组输入字符串的语句是A) gets(A) B) gets(a0); C) gets(char*p;int i;p=alpha;for(i=0,i4;i+)prntf(“%s“,pi);A) ABCDEFGHIJKL B) ABCDC) ABCDEFGHIJKLMNOP D) AEIM(分数:2.00)A.B.C.D.二、填空题(总题数:19,分数:38.00)51.以下程序的输出结果是_。main()int a=1,b=2;a=a+b;b=a-b;a=a-b;printf(“%d,%d/n“,
17、a,b);(分数:2.00)填空项 1:_52.以下程序中,fun 函数的功能是求 3行 4列二维数组每行元素中的最大值。请填空。void fun(int,int,int(*)4,int*);main()int a 34=1,2,41,36,28,19,33,15,27,3,27,19,1,b3,i;fun(3,4,a,b,);for(i=0;i3;1+)printf(“%4d“,bi);printf(“/n“);void fun(int m,int n,int ar4,int*br)int i,j,x;for(i=0;im;i+)x=ari0;for(j=0;jn;j+)if(xarij)x
18、=arij;_=x;(分数:1.00)填空项 1:_53.有以下程序:int f(int b4)int i,j,s=0;for(j=0;j4;j+)i=j;if(i21)=3-j;s+=bij;return S;main()int a44=(1,2,3,4),(0,2,4,6),(3,6,9,12),(32,1,0);printf(“%d/n”f(a)执行后的输出结果是12。(分数:2.00)填空项 1:_54.若已知 a=10,b=20,则表达式! ab 的值为 1。(分数:2.00)填空项 1:_55.在面向对象方法中, 1 是具有相似性质的对象的集合。(分数:2.00)填空项 1:_56
19、.存储结构的 4种基本类型分别是顺序、链式、索引和 1。(分数:4.00)填空项 1:_57.函数 fun的功能是计算 xndouble fun(double x,int n)int i; double y=1;for(i=1;i=n;i+) y=y*x;return y;主函数中已正确定义 m、a、b 变量并赋值,而且调用 fun函数计算:m=a 4+b4-(a+b)3。实现这一计算的函数调用语句为_。(分数:1.00)填空项 1:_58.fseek函数的正确调用形式是 1。(分数:4.00)填空项 1:_59.以下程序运行后的输出结果是_。struct NODEint k;struct N
20、ODE *link;main()struct NODE m5,*p=n,*q=m+4;int i=5;while(p!=q)p-k=-i;p+;q-k=i-;q-;q-k=-i;for(i=0;i5 ;i+)printf(“%d“,mi.k);printf(“/n“);(分数:2.00)填空项 1:_60.数据模型按不同的应用层次分为三种类型,它们是 1 数据模型、逻辑数据模型和物理数据模型。(分数:2.00)填空项 1:_61.以下程序的输出结果是_。#include stdio.hint fun(int x)static int t=0;return(t+=x);main()int s,i
21、;for(i=1 ;i=5;i+) s=fun(i);printf(“%d/n“,s);(分数:2.00)填空项 1:_62.有序线性表能进行二分查找的前提是该线性表必须是 1 存储的。(分数:2.00)填空项 1:_63.以下函数的功能是求出能整除 x且不是偶数的各整数,并按从小到大的顺序放在 pp所指的数组中,这些除数的个数通过形参 n返回。例如,若 x中的值为 30,则有 4个数符合要求,它们是 1,3,5,15。请按题意,完成填空。试题程序:#includeconio.h#includestdio.hvoid fun(int x,int pp,int *n)int i,j=0;for(
22、i=1;ix;i+=2)if(x%i=0)ppj+=i;_;main()int x,aa1000,n,i;clrscr();printf(“/nPleas enter an integer number :/n“);scanf(“%d“,for(i=0;in;i+)printf(“%d“,aai);printf(“/n“);(分数:1.00)填空项 1:_64.有以下程序int f(int n)if(n=1)return 1;else return f(n-1)+1;main()int i,j=0;for(i=1;i3;i+)j+=f(i);printf(“%d/n“j);程序运行后的输出结果
23、是_。(分数:1.00)填空项 1:_65.数据模型包括数据结构、 1 和数据条件。(分数:2.00)填空项 1:_66.下面程序的运行结果是_。 #define P(a)printf(“%d“,a) main() int j,a=1,2,3,4,5,6,7,i=5; for(j=3;j1;j-) switch(j) case 1: case 2:P(ai+);break; case 3:P(a-i); (分数:2.00)填空项 1:_以下函数用来求出数组的最大元素在数组中的下标并存放在 k所指的存储单元中。请填空。#includeconio.h#includestdio.hint fun(i
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 355 答案 解析 DOC
