【计算机类职业资格】二级C语言笔试选择题-2及答案解析.doc
《【计算机类职业资格】二级C语言笔试选择题-2及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试选择题-2及答案解析.doc(39页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试选择题-2 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:55,分数:100.00)1.若有代数式 (分数:2.00)A.B.C.D.2.C 语言主要是借助以下哪种手段来实现程序模块化?_A定义函数 B定义常量和外部变量C使用丰富的数据类型 D使用三种基本结构语句(分数:2.00)A.B.C.D.3.若有以下函数首部int fun(double x10,int*n)则下面针对此函数的函数声明语句中正确的是_。Aint fun(double*,int*); Bint fun(double,int);Cint fun(double*x,int n);
2、Dint fun(double x,int*n);(分数:2.00)A.B.C.D.4.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是_。A函数的形参和实参分别占用不同的存储单元B形参只是形式上的存在,不占用具体存储单元C同名的实参和形参占同一存储单元D函数的实参和其对应的形参共占同一存储单元(分数:2.00)A.B.C.D.5.以下叙述中错误的是_。A函数形参的值也可以传回给对应的实参B函数调用可以作为一个独立的语句存在C若函数有返回值,必须通过 return 语句返回DC 程序必须由一个或一个以上的函数组成(分数:2.00)A.B.C.D.6.以下叙述中正确的是_。A实
3、用的 C 语言源程序总是由一个或多个函数组成B用户自己定义的函数只能调用库函数C不同函数的形式参数不能使用相同名称的标识符D在 C 语言的函数内部,可以定义局部嵌套函数(分数:2.00)A.B.C.D.7.有以下程序#includestdio.hint fun(int x,int y)if(x!=y)return(x+y)/2);else return(x);main()int a=4,b=5,c=6;printf(“%d/n“,fun(2*a,fun(b,c);程序运行后的输出结果是_。A6 B3 C8 D12(分数:2.00)A.B.C.D.8.有以下程序#includestdio.hdo
4、uble f(double x);main()double a=0;int i;for(i=0;i30;i+=10)a+=f(double)i);printf(“%3.0f/n“,a);double f(double x)(return x*x+1;程序运行后的输出结果是_。A503 B401 C500 D1404(分数:2.00)A.B.C.D.9.若各选项中所用变量已正确定义,函数 fun 中通过 return 语句返回一个函数值,以下选项中错误的程序是_。Amain()x=fun(2,10);float fun(int a,int b)Bfloat fun(int a,int b)mai
5、n()x=fun(i,j);Cfloat fun(int,int);main()“x=fun(2,10);float fun(int a,int b)Dmain()float fun(int i,int j);x=fun(i,j);float fun(int a,int b)()(分数:2.00)A.B.C.D.10.有以下程序#includestdio.hintfun(int a,int b)return a+b;main()int x=6,y=7,z=8,r;r=fun(fun(x,y),z-);prinrt(“%d/n“,r);程序运行后的输出结果是_。A21 B15 C20 D31(分
6、数:2.00)A.B.C.D.11.有以下程序#includestdio.hint f(int x);main()int a,b=0;for(a=0;a3;a+=1)b+=f(a);putchar(A+b);int f(int x)( return x*x+1;程序运行后输出结果是_。ABDI BBCD CABE DBCF(分数:2.00)A.B.C.D.12.有以下程序#includestdio.hint add(int a,int b)return(a+h);main()int k,(*f)(),a=5,b=10;f=add;则以下函数调用语句错误的是_。Ak=*f(a,b); Bk=ad
7、d(a,b); Ck=(*f)(a,b); Dk=f(a,b);(分数:2.00)A.B.C.D.13.有以下程序#includestdio.hint f(int x);main()int n=1,m;m=f(f(f(n);printf(“%d/n“,m);int f(int x)return x*2;程序运行后的输出结果是_。A8 B2 C4 D1(分数:2.00)A.B.C.D.14.以下叙述中正确的是_。A函数既可以直接调用自己,也可以间接调用自己B任何情况下都不能用函数名作为实参C函数的递归调用不需要额外开销,所以效率很高D简单递归不需要明确的结束递归的条件(分数:2.00)A.B.C
8、.D.15.设有如下函数定义#includestdio.hint fun(int k)if(k1)return 0;else if(k=1)return 1;else return fun(k-1)+1;若执行调用语句:n=fun(3);,则函数 fun 总共被调用的次数是_。A3 B2 C4 D5(分数:2.00)A.B.C.D.16.有以下程序#includestdio.hint fun(int x)int p;if(x=0|x=1)return(3);p=x-fun(x-2);return p;main()prinrt(“%d/n“,fun(7);执行后的输出结果是_。A2 B3 C7
9、D0(分数:2.00)A.B.C.D.17.若有以下程序#includestdio.hint f(int a,int n)if(n1)int t;t=f(a,n-1);return tan-1?t:an-1;elsereturn a0;main()int a=8,2,9,1,3,6,4,7,5;printf(“%d/n“,f(a,9);则程序的输出结果是_。A9 B1 C8 D5(分数:2.00)A.B.C.D.18.有以下程序#includestdio.hvoid fun(int n,int*s)int f;if(n=1)*s=n+1;elsefun(n-1,f);*s=f;main()in
10、t x=0;fun(4,x);printf(“%d/n“,x);程序运行后的输出结果是_。A2 B1 C3 D4(分数:2.00)A.B.C.D.19.有以下程序#includestdio.hvoid fun(int a,int b)int t;t=a;a=b;b=t;main()int c10=1,2,3,4,5,6,7,8,9,0,i;for(i=0;i10;i+=2)fun(ci,ci+1);for(i=0;i10;i+)printf(“%d,“,cfi);printf(“/n“);程序的运行结果是_。A1,2,3,4,5,6,7,8,9,0, B2,1,4,3,6,5,8,7,0,9,
11、C0,9,8,7,6,5,4,3,2,1, D0,1,2,3,4,5,6,7,8,9,(分数:2.00)A.B.C.D.20.有以下程序#includestdio.hvoid fun(int a,int n)int i,t;for(i=0;in/2;i+)(t=ai;ai=an-1-i;an-1-i=t;main()int k10=1,2,3,4,5,6,7,8,9,10,i;fun(k,5);for(i=2;i8;i+)printf(“%d“,ki);printf(“/n“);程序的运行结果是_。A321678 B876543 C1098765 D345678(分数:1.00)A.B.C.D
12、.21.有以下程序#includestdio.h#define N 4void fun(int aN,int b)int i;for(i=0;iN;i+)bi=aii-aiN-1-i;main()int xNN=1,2,3,4,5,6,7,8),(9,10,11,12,13,14,15,16,yN,i;fun(x,y);for(i=0;iN;i+)printf(“%d,“,yi);printf(“/n“);程序运行后的输出结果是_。A-3,1,1,3, B-12,-3,0,0, C0,1,2,3, D-3,-3,-3,-3,(分数:1.00)A.B.C.D.22.有以下程序#includest
13、dio.hvoid f(int*q)int i=0;for(;i5;i+)(*q)+;main()int a5=1,2,3,4,5,i;f(a);for(i=0;i5;i+)printf(“%d,“,ai);程序运行后的输出结果是_。A6,2,3,4,5, B2,2,3,4,5, C1,2,3,4,5, D2,3,4,5,6,(分数:1.00)A.B.C.D.23.有以下程序#includestdio.hint fun(int(*s)4,int n,int k)int m,i;m=s0k;for(i=1;in;i+)if(sikm)m=sik;return m;main()int a44=1,
14、2,3,4,11,12,13,14,21,22,23,24,31,32,33,34);printf(“%d/n“,fun(a,4,0);程序的运行结果是_。A31 B34 C4 D32(分数:2.00)A.B.C.D.24.若有以下程序#includestdio.h#define N 4void fun(int aN,int b,int flag)int i,j;for(i=0;iN;i+)bi=ai0;for(j=1;jN;j+)if(flag?(biaij):(biaij)bi=aij;main()int xNN=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
15、,yN,i;fun(x,y,1);for(i=0;iN;i+)printf(“%d,yj);fun(x,y,0);for(i=0;iN;i+)printf(“%d,“,yi);printf(“/n“);则程序的输出结果是_。A1,5,9,13,4,8,12,16, B4,8,12,16,1,5,9,13,C1,2,3,4,13,14,15,16, D13,14,15,16,1,2,3,4,(分数:2.00)A.B.C.D.25.若有以下程序#includestdio.hvoid fun(int a,int n)intt,i,j;for(i=1;in;i+=2)for(j=i+2;jn;j+=2
16、)if(aiaj)t=ai;ai=aj;aj=t;main()int c10=10,9,8,7,6,5,4,3,2,1,i;fun(c,10);for(i=0;i10;i+)printf(“%d,“,ci);printf(“n“);则程序的输出结果是_。A10,1,8,3,6,5,4,7,2,9, B10,9,8,7,6,5,4,3,2,1,C2,9,4,7,6,5,8,3,10,1, D1,10,3,8,5,6,7,4,9,2,(分数:1.00)A.B.C.D.26.有以下程序#includestdio.hint f(int n)int t=0,a=5;if(n/2)int a=6;t+=a
17、+;elseint a=7;t+=a+;return t+a+;main()int s=0,i=0;for(;i2;i+)s+=fi);printf(“%d/n“,s);程序运行后的输出结果是_。A24 B28 C32 D36(分数:1.00)A.B.C.D.27.以下叙述中正确的是_。A只要是用户定义的标识符,都有一个有效的作用域B只有全局变量才有自己的作用域,函数中的局部变量没有作用域C只有在函数内部定义的变量才是局部变量D局部变量不能被说明为 static(分数:2.00)A.B.C.D.28.以下叙述中正确的是_。A全局变量的存储类别可以是静态类B对于变量而言,“定义”和“说明”这两个
18、词实际上是同一个意思C在复合语句中不能定义变量D函数的形式参数不属于局部变量(分数:2.00)A.B.C.D.29.在 C 语言中,只有在使用时才占用内存单元的变量,其存储类型是_。Aauto 和 register Bextern 和 register Cauto 和 static Dstatic 和 register(分数:2.00)A.B.C.D.30.以下选项中叙述错误的是_。AC 程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值B在 C 程序的同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内CC 程序函数中定义的自动变量,系统不自动赋确定的初值DC 程序函数
19、的形参不可以说明为 static 型变量(分数:2.00)A.B.C.D.31.有以下程序#includestdio.hfun(int x,int y)static int m=0,i=2;i+=m+1;m=i+x+y;return m;main()int j=1,m=1,k;k=fun(j,m);printf(“%d,“,k);k=fun(j,m);printf(“%d/n“,k);执行后的输出结果是_。A5,11 B5,5 C11,11 D11,5(分数:1.00)A.B.C.D.32.有以下程序#includestdio.hint fun()static int x=1;x*=2;ret
20、urn x;main()int i,s=1;for(i=1;i=3;i+)s*=fun();printf(“%d/n“,s);程序运行后的输出结果是_。A30 B10 C0 D64(分数:1.00)A.B.C.D.33.有以下程序#includestdio.hint fun()static int x=1;x+=1;return x;main()int i,s=1;for(i=1;i=5;i+)s+=fun();printf(“%d/n“,s);程序运行后的输出结果是_。A21 B11 C6 D120(分数:2.00)A.B.C.D.34.有以下程序#includestdio.hint a=4
21、;int f(int n)int t=0;staticint a=5;if(n%2)int a=6;t+=a+;else(int a=7;t+=a+;returnt+a+:main()int s=a,i=0;for(;i2;i+)s+=f(i);printf(“%d/n“,s);程序运行后的输出结果是_。A28 B24 C32 D36(分数:2.00)A.B.C.D.35.若有定义语句:double a,*p=a;以下叙述中错误的是_。A定义语句中的*号是一个间址运算符B定义语句中的*号是一个说明符C定义语句中的 p 只能存放 double 类型变量的地址D定义语句中*p=a 把变量 a 的地
22、址作为初值赋给指针变量 p(分数:2.00)A.B.C.D.36.若有定义语句:double x,y,*px,*py;执行px=x;py=y;正确的输入语句是_。Ascanf(“%lf%lf“,px,py); Bscanf(“%f%f“x,y);Cscanf(“%f%f“,x,y); Dscanf(“%lf%lf“,x,y);(分数:2.00)A.B.C.D.37.以下程序段完全正确的是_。Aint k,*p=k;scanf(“%d“,p); Bint *p;scanf(“%d“,p);Cint*p;scanf(“%d“,p); Dint k,*p;*p=k;scanf(“%nd“,p);(分
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 选择题 答案 解析 DOC
