ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:26.91KB ,
资源ID:5619706      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5619706.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机等级考试 二级C语言 笔试模拟试题 北邮四.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机等级考试 二级C语言 笔试模拟试题 北邮四.docx

1、计算机等级考试 二级C语言 笔试模拟试题 北邮四一、选择题(1-11每题2分,11-21每题1分,21-40每题2分,共70分) 下列各题A、B、C、D四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。1下列对于线性链表的描述中正确的是_。(A)存储空间不一定是连续,且各元素的存储顺序是任意的(B)存储空间不一定是连续,且前件元素一定存储在后件元素的前面(C)存储空间必须连续,且各前件元素一定存储在后件元素的前面(D)存储空间必须连续,且各元素的存储顺序是任意的2下列关于栈的描述正确的是_。(A)在栈中只能插入元素而不能删除元素(B)在栈中只能删除元素而不

2、能插入元素(C)栈是特殊的线性表,只能在一端插入或删除元素(D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素3为了使模块尽可能独立,要求_。(A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强(B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱(C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱(D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强4下列叙述中,正确的是_。(A)用E-R图能够表示实体集之间一对一的联系、一对多的联系、多对多的联系(B)用E-R图只能表示实体集之间一对一的联系(C)用E-R图只能表示实体集之间一对多的联系(D)用E-R图表示的概

3、念数据模型只能转换为关系数据模型5以下叙述中正确的是_。(A)C语言的源程序不必通过编译就可以直接运行(B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令(C)C源程序经编译形成的二进制代码可以直接运行(D)C语言中的函数不可以单独进行编译6以下有4组用户标识符,其中合法的一组是_。(A)For -sub Case(B)4d DO Size(C)f2_G3 IF abc(D)WORDvoiddefine7以下选项中不属于C语言的类型的是_。(A)signed short int(B)unsigned long int(C)unsigned int(D)long short8有以下程序

4、 int *f(int *x, int *y) if(*x*y) return x; else return y; main() int a=7,b=8,*p,*q,*r; p=&a; q=&b; r=f(p,q); print(%d,%d,%dn,*p,*q,*r); 执行后输出结果是_。(A)7,8,8(B)7,8,7(C)8,7,7(D)8,7,89有以下程序main( ) char a , b , c , d ;scanf(%c,%c,%d,%d, &a , &b , &c , &d ) ;printf(%c,%c,%c,%cn, a , b , c , d ) ;若运行时从键盘上输入

5、:6,5,65,66。则输出结果是_。(A)6,5,A,B(B)6,5,65,66(C)6,5,6,5(D)6,5,6,610有以下程序 main( ) char str 10= China,Beijing,*p=str ;printf(%sn, p+10 ) ;程序运行后的输出结果是_。(A)China(B)Beijing(C)ng(D)ing11以下程序运行后的输出结果是_。 main() int a,b,c; a=10;b=20;c=(a%b1); printf(%d %d %dn,a,b,c); (A)10 20 0(B)20 10 0(C)10 10 0(D)20 20 012下列关

6、于单目运算符+、- -的叙述中正确的是_。(A)它们的运算对象可以是任何变量和常量(B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量(C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量(D)它们的运算对象可以是char型变量、int型变量和float型变量13有以下程序main() int a; char c=10;float f=100.0; double x;a=f/=c*=(x=6.5);printf(%d %d %3.1f %3.1fn,a,c,f,x);程序运行后的输出结果是_。(A)1 65 1 6.5(B)1 65 1

7、.5 6.5(C)1 65 1.0 6.5(D)2 65 1.5 6.514有以下程序 main() int c=35; printf(%dn,c&c); 程序运行后的输出结果是_。(A)0(B)70(C)35(D)115已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是_。(A)scanf(%d %d %d,&i,&j,&k);(B)scanf(%d,%d,%d,&i,&j,&k);(C)scanf(%2d%2d%2d,&i,&j,&k);(D)scanf(i=%d,j=%d,k=%d,&i,&j,&k);16有定义语句:

8、int x,y;,若要通过scanf(%d,%d,&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是_。(A)11 12(B)11, 12 (C)11,12 (D)11, 1217以下程序运行后的输出结果是_。main() int x=0210; printf(%xn,x);(A)88(B)86(C)77(D)2118当把以下4个表达式用作if语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是_。(A)k%2(B)k%2=1(C)(k%2)!=0(D)!k%2=119设变量a、b、c、d和y都已正确并赋值。若有以下if语句if(a if(c=

9、d) y=0; else y=1;该语句所表示的含义是_。(A)(B)(C)(D)20有以下程序main() int n=0,m=l,x=2;if(!n) x-=l;if(!m) x-=2;if(!x) x-=3;printf(%dn,x);执行后输出结果是_。(A)2(B)1(C)3(D)621若变量已正确定义,要求程序段完成5!的计算,不能完成此操作的程序段是_。(A)for (i=1,p=1; i=5; i+ ) p*= i ;(B)for (i=1; i=5; i+ ) p= 1 ; p*= i ; (C)i=1; p=1;while ( i=5 ) p*= i ; i+; (D)i=

10、1; p=1; do p*= i ; i+; while ( i=5 ) ;22有以下程序main() int i,s=0;for(i=1;i10;i+=2) s +=i+1printf(%dn,s);程序执行后的输出结果是_。(A)自然数 19的累加和(B)自然数 1 10的累加和(C)自然数 19中奇数之和(D)自然数 1 10中偶数之和23面程序的功能是输出以下形式的金字塔图案:* * * * * * * * * * * * *main() int i,j;for(i=1;i=4;i+;) for(j=l;j=4-i;j+)printf( );for(j=1; ;j= ;j+)print

11、f(*);printf(n);在下划线处应填入的是_。(A)i(B)2*il(C)2*i+l(D)i+224已定义以下函数fun(char *p2,char *p1) while(*p2=*p1)!= 0) p1+;p2+函数的功能是_。(A)将p1所指字符串复制到p2所指内存空间(B)将p1所指字符串的地址赋给指针p2(C)对p1和p2两个指针所指字符串进行比较(D)检查p1和p2两个指针所指字符串中是否有025有以下程序void sort(int a,int n) int i,j,t;for(i=0;ifor(j=i+2; jif(aimain() int aa10=(1,2,3,4,5,

12、6,7,8,9,10),i;sort(aa,10);for(i=0;iy?x:y; z=xy?x:y; return z;(B)int max(int x,y) int z;(C)max(int x, int y) int z; z=xy?x:y; return(z); (D)int max(int x, int y) return(xy?x:y);32有以下程序#include main( ) int a =1,2,3,4,5,6,7,8,9,10,11,12 , *p = a+5, *q=NULL ;*q=*(p+5) ; printf(%d %dn, *p , *q ) ;程序运行后的输

13、出结果是_。(A)运行后报错(B)6 6(C)6 11(D)5 1033有以下程序void fun(int *a,int i, int j) int t; if(i t=ai;ai=aj;aj=t; fun(a,+i,-j); main() int a=l,2,3,4,5,6,i; fun(a,0,5); for(i=0;i6;i+) printf(%d ,ai);执行后输出结果是_。(A)6 5 4 3 2 1(B)4 3 2 1 5 6(C)4 5 6 1 2 3(D)1 2 3 4 5 634有以下程序void fun(char *a, char *b) a=b; (*a)+;main(

14、) char c1=A, c2=a, *p1, *p2;p1=&c1; p2=&c2; fun(p1,p2);printf(%c%cn, c1, c2);程序运行后的输出结果是_。(A)Ab(B)aa(C)Aa(D)Bb35有以下程序void f(int y,int *x) y=y+ *x; *x;=*x+y; main() int x=2,y=4;f(y,&x);printf(%d %dn,x,y);执行后输出结果是_。(A)8 4(B)8 8(C)4 8(D)4 236设有定义语句int x6=2,4,6,8,5,7,*p=x,i;要求依次输出x数组6个元素中的值,不能完成此操作的语句是_

15、。(A)for(i=0;i6;i+) printf(%2d, *(p+) ) ;(B)for(i=0;i6;i+) printf(%2d, *(p+i) ) ;(C)for(i=0;i6;i+) printf(%2d, *p+ ) ;(D)for(i=0;i6;i+) printf(%2d, (*p)+ ) ;37设有定义:int n=0,*p=&n,*q=&p;,则以下选项中,正确的赋值语句是_。(A)p=1;(B)*q=2(C)q=p(D)*p=538已有定义:int i,a10,*p;,则合法的赋值语句是_。(A)p=100;(B)p=a5;(C)p=a2+2;(D)p=a+2;39下列

16、选项中正确的语句组是_。(A)char s8; s=Beijing;(B)char *s; s=Beijing;(C)char s8; s=Beijing;(D)char *s; s=Beijing;40已定义以下函数fun(int *p) return *p; 该函数的返回值是_。(A)不确定的值(B)形参p中存放的值(C)形参p所指存储单元中的值(D)形参p的地址值二、填空题 (1-15每题2分,共30分) 请将答案分别写在答题卡中对应的的横线上。1有以下程序main( ) int a=7 , b=8 , *p , *q , *r ;p=&a ; q=&b ;r=p ; p=q; q=r

17、;printf(%d,%d,%d,%dn, *p , *q , a , b ) ;程序运行后的输出结果是_【1】_。 2有以下程序#include main(int argc,char *argv) int i,len=0;for(i=l;iprintf(%dn,len);经编译连接后生成的可执行文件是ex.exe, 若运行时输入以下带参数的命令行:ex abcd efg h3 k44执行后输出结果是_【2】_。 3有以下程序main() int a33,*p,i; p=&a00; for(i=0;i9;i+) pi=i+1; printf(%dn,a12);程序运行后的输出结果是_【3】_。

18、 4有以下程序void f(int a,int i,int j) int t;if(i t=ai; ai= aj; aj=t;f(a,i+1,j-1);main() int i,aa5=1,2,3,4,5;f(aa,0,4);for(i=0;i5;i+) printf(%d,aai);printf(n);执行后输出结果是_【4】_。 5目前实际存在和使用的广域网基本上都是采用 拓扑结构类型。有以下程序#include struct STU int num; float TotalScore; ;void f(struct STU p) struct STU s2=20041,703,20045

19、,537; p.num = s1.num; p.TotalScore = s1.TotalScore;main() struct STU s2=20041,703,20042,580; f(s0); printf(%d %3.0fn,s0.num,s0.TotalScore);程序运行后的输出结果是_【5】 _。 6若有以下程序int f(int x,int y) return (y-x)*x; main() int a=3,b=4,c=5,d;d=f(f(3,4),f(3,5); printf(%dn,d);执行后输出结果是_【6】_。 7有以下程序void swap 1(int c) in

20、t t;t=c0; c0= c1; c1=t;void swap2(int c0,int cl) int t;t=c0; c0=cl; cl=t;main() int a2=3,5,b2=3,5;swaplA) ; swap2(b0,b1);printf(%d, %d ,%d, %dn,a0,a1,b0,b1);其输出结果是_【7】_。 8有以下程序int a=2;int f(int *A) return(*A) +;main() int s=0; int a=5;s+= f(&A) s+= f(&A) printf(%dn ,s) 执行后输出结果是_【8】_。 9有以下程序段int a10=

21、1,2,3,4,5,6,7,8,9,10,*p=&a3,b;b=p5;b中的值是_【9】_。 10以下程序的运行结果是:_【10】_。#include char *ss(char *s)return s+ strlen(s)/2; main() char *p,*str=abcdefgh;p=ss(str); printf(%sn ,p); 11有如下程序段main(int argc, char *argv) int n, i=0; while(argv1i!=0) n=fun();i+; printf(%dn,n*argc); int fun() static int s=0; s+=1;

22、return s;假设程序经编译、连接后生成可执行文件exam,exe,若键入如下命令行:exam 123则运行结果为_【11】_。 12以下程序运行后的输出结果是【12】_。 #define S(x) 4*x*x+1 main() int i=6,j=8; printf(%dn,S(i+j); 13以下程序运行后的输出结果是_【13】_。 #include void fun(char *s,int p,int k) int i; for(i=p;i main() char s=abcdefg; fun(s,3,strlen(s); puts(s); 14若有以下程序main() int a4

23、4=1,2,-3,-4,0,-12,-13,14,-21,23,0,-24,-31,32,-33,0; int i,j,s=0; for(i=0;i4;i+) for(j=0;j4;j+) if (aij0) continue; if (aij=0) break; s+=aij; printf(%dn,s); 执行后输出结果是_【14】。 15若有以下程序 main() char a; a=H-A+0; printf(%cn,a); 执行后输出结果是_【15】_。 参考答案与分析 一、选择题(1-11每题2分,11-21每题1分,21-40每题2分,共70分)1 A2 C3 B4 A5 B6 C7 D8 B9 A10 B11 A12 D13 B14 C15 A16 A17 A18 D19 C20 B21 B22 D23 B24 A25 C26 A27 B28 C29 A30 B

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1