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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(【计算机类职业资格】二级C语言笔试71及答案解析.doc)为本站会员(twoload295)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】二级C语言笔试71及答案解析.doc

1、二级 C 语言笔试 71 及答案解析(总分:76.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:50.00)1.若有如下程序; #define X 3 #define Y X+1 #define Z Y*Y2 main() int n; for(n=1;n=Z;n+) printf(“%d“,n); 则程序运行后的输出结果是 ( )(分数:1.00)A.12345B.1234567C.12345678D.1234562.若变量已正确说明为 float 类型,要通过语句 scanf(“%f %f %f“, 则以下正确的叙述是 ( )(分数:1.00)A.两处的*p 含义相同,

2、都说明给指针变量 P 赋值 3B.在“double r99,*p7;*p=r;”中,把 r 的地址赋给了 p 所指的存储单元C.语句“*pr;”把变量 r 的值赋给指针变量 pD.语句“*p=r;”把变量 r 的值放回 P 中12.结构化程序设计所规定的三种基本控制结构是 ( )(分数:1.00)A.输入、处理、输出B.树形、网形、环形C.顺序、选择、循环D.主程序、子程序、函数13.有如下说明 int a101,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是 ( )(分数:1.00)A.*p+9B.*(p+8)C.*p+9D.p+814.C 语言中 main 函数

3、参数的非法表示形式是 ( )(分数:1.00)A.main(char*argv,int argB.main(int a,char *C.main(int y,char*x)D.main(int argv,char * argc)15.有以下程序 void ss(char * s,char t) while(*s) if(*s=t)*st-a+A; s+; main() char str1100“abcddfefdbd“,cd: ss(str1,C) ; printf(“%s/n“,str1); 程序运行后的输出结果是 ( )(分数:1.00)A.ABCDDEFEGDBDB.abcDDfefDb

4、DC.abcAAfefAbAD.Abcddfefdbd16.有以下的程序 #includestdio.h void fun(char *fname,char *st) FILE *myf; int i; myf=fopen(fname,“w“); for(i=0;istrlen(st);i+)fputc(sti,myf); fclose(myf); main() fun(“test.t“,“new world“);fun(“test.t“,“hello,“); 程序执行后,文件 testt 中的内容是 ( )(分数:1.00)A.hello,B.new worldhello,C.new wor

5、ldD.hello,rld17.在待排序的元素序列基本有序的前提下,效率最高的排序方法是 ( )(分数:1.00)A.冒泡排序B.选择排序C.快速排序D.归并排序18.已知下列函数定义 setw(int *b,int m,int n,int dat) int k; for(k=0;km*n,k+) *bdat;b+; 则调用此函数的正确写法是(假设变量 a 的说明为 int a50) ( )(分数:1.00)A.setw(*a,5,8,1);B.setw(too; DATE max; 则下列语句的执行结果是 ( ) printf(“%d“,stzeof(struct date)+sizeof(

6、max);(分数:1.00)A.25B.30C.18D.827.下列常数中,不合法的 C 常量是 ( )(分数:1.00)A.-0x3b1B.123e+2.3C.D.6e+728.以下叙述中错误的是 ( )(分数:1.00)A.二进制文件打开后可以先读文件的末尾,而顺序文件不可以B.在程序结束时,应当用 fclose 函数关闭已打开的文件C.在利用 fread 函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据D.不可以用 FILE 定义指向二进制文件的文件指针29.若有如下程序: sub(p,n) int(*p)3,n; int i; for(i=0;i=n;i+) print

7、f(“%d“,*(*(p+i)+n); main() int s331,2,3,4,5,6,7,8,9; sub(s,2); 则程序运行后的输出结果是 ( )(分数:1.00)A.3 6 9B.2 4 8C.4 5 6D.7 8 930.执行下面的程序段 int x=40; char zB; int B; B=(x*b=c; main() cha,a,b; aA;bB;sub3(putchar(b); aA;b=B;sub2(putchar(a);putchar(b); aA;b=B;sub1(a,b) ;putchar(a);putchar(b); 程序运行后的输出结果是 ( )(分数:1.

8、00)A.BABBABB.ABBBBAC.BABABAD.BAABBA46.有如下程序 main() int x1,a0,b0; switch(x) case 0 : b+; case 1 : a+; case 2 : a+;b+; printf(“a=%d,b=%d/n“,a,B) ; 程序运行后的输出结果是 ( )(分数:1.00)A.a2,b1B.a1,b=1C.a=1,b=0D.a=2,b=247.若有如下程序段: main() int n0; while(printf(“*“) n+; if(n3)break; 则下列描述正确的是 ( )(分数:1.00)A.其中循环控制表达式与 0

9、 等价B.其中循环控制表达式与0等价C.其中循环控制表达式是不合法的D.以上说法都不对48.在关系数据库中,对一个关系做投影操作后,新关系的元组个数将 ( )(分数:1.00)A.等于原来关系中的元组个数B.大于原来关系中的元组个数C.小于原来关系中的元组个数D.不能确定元组个数49.能正确表示代数式 (分数:1.00)A.3*xn(2*x-1)B.3*x*n(2*x-1)C.3*pow(x,*(1(2*x-1)D.3*pow(n,(2*x-1)50.以下非法的赋值语句是 ( )(分数:1.00)A.n(i2,+B.j+C.+(i+1)D.xj0二、B填空题/B(总题数:13,分数:26.00

10、)51.假设线性表的长度为 n,则在最坏情况下,冒泡排序需要的比较次数为U 【1】 /U。(分数:2.00)填空项 1:_52.类是一个支持集成的抽象数据类型,而对象是类的U 【2】 /U。(分数:2.00)填空项 1:_53.对软件是否能达到用户所期望的要求的测试称为U 【3】 /U。(分数:2.00)填空项 1:_54.单元测试又称模块测试,一般采用U 【4】 /U测试。(分数:2.00)填空项 1:_55.当数据的物理结构(存储结构、存取方式等)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的U 【5】 /U。(分数:2.00)填空项 1:_56.在 C 语言中,

11、可以利用U 【6】 /U,将一个表达式的值转换成指定的类型。(分数:2.00)填空项 1:_57.下面程序的功能是根据公式 e1+11!+12!+13!+14!+计算 e 的近似值,精度要求为 10-5。请填空。main() int n;double e1.0,t1.0;for(n1;U 【7】 /Un+);U 【8】 /Ue+=t;printf(“%f/n“,e); (分数:2.00)填空项 1:_58.以下程序的输出结果是U 【9】 /U。 double sub(double x,double y,double z) y-1.0; zz+x; return z; main() double

12、 a=2.5,b9.0; printf(“function running result is:%6.1f/n“,sub(b-a,a,A) ); (分数:2.00)填空项 1:_59.下面程序的功能是将字符串 s 中所有的字符 c 删除,补足所缺语句。 #includestdioh main() char s80; int i,j; gets(s); for(i=j=0;si!=/0;i+) if(si!c)U 【10】 /U; sj=/0; puts(s); (分数:2.00)填空项 1:_60.下面程序调用 fun 函数动态分配两个整型存储单元,并通过形参传回这两个整型存储单元的地址给 s

13、1和 s2,将程序补充完整。 main() int*s1,*s2; fun(U 【11】 /U); int fun(U 【12】 /U); *p=(int *)malloc(sizeof(int); *q=(int *)malloc(sizeof(int); (分数:2.00)填空项 1:_61.以下程序的辅出结果是U 【13】 /U。 void fun(int s) int i; for(i=0;i10;i+)printf(“%d“,si); printf(“/n/n“); main() int a34=99,2,3,4,5,6,7,8;fun(a0); (分数:2.00)填空项 1:_62

14、.以下程序的功能是计算 (分数:2.00)填空项 1:_63.用以下程序把从键盘输入的字符存放到一个文件中,用字符#作为结束符,请按题意要求填空完善程序。#includestdioh main() FILE*fp; char ch,fname10; printf(“Input the name of file/n“); gets(fname); if(fpfopen(U 【18】 /U)=NULL) printf(“cant open/n“); U 【19】 /U; while(chgetchar()!=#) fputc(U 【20】 /U); fclose(fp);(分数:2.00)填空项

15、1:_二级 C 语言笔试 71 答案解析(总分:76.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:50.00)1.若有如下程序; #define X 3 #define Y X+1 #define Z Y*Y2 main() int n; for(n=1;n=Z;n+) printf(“%d“,n); 则程序运行后的输出结果是 ( )(分数:1.00)A.12345B.1234567C.12345678D.123456 解析:2.若变量已正确说明为 float 类型,要通过语句 scanf(“%f %f %f“, 则以下正确的叙述是 ( )(分数:1.00)A.两处的*p

16、 含义相同,都说明给指针变量 P 赋值 3B.在“double r99,*p7;*p=r;”中,把 r 的地址赋给了 p 所指的存储单元C.语句“*pr;”把变量 r 的值赋给指针变量 pD.语句“*p=r;”把变量 r 的值放回 P 中 解析:12.结构化程序设计所规定的三种基本控制结构是 ( )(分数:1.00)A.输入、处理、输出B.树形、网形、环形C.顺序、选择、循环 D.主程序、子程序、函数解析:13.有如下说明 int a101,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是 ( )(分数:1.00)A.*p+9B.*(p+8) C.*p+9D.p+8解

17、析:14.C 语言中 main 函数参数的非法表示形式是 ( )(分数:1.00)A.main(char*argv,int arg B.main(int a,char *C.main(int y,char*x)D.main(int argv,char * argc)解析:15.有以下程序 void ss(char * s,char t) while(*s) if(*s=t)*st-a+A; s+; main() char str1100“abcddfefdbd“,cd: ss(str1,C) ; printf(“%s/n“,str1); 程序运行后的输出结果是 ( )(分数:1.00)A.AB

18、CDDEFEGDBDB.abcDDfefDbD C.abcAAfefAbAD.Abcddfefdbd解析:16.有以下的程序 #includestdio.h void fun(char *fname,char *st) FILE *myf; int i; myf=fopen(fname,“w“); for(i=0;istrlen(st);i+)fputc(sti,myf); fclose(myf); main() fun(“test.t“,“new world“);fun(“test.t“,“hello,“); 程序执行后,文件 testt 中的内容是 ( )(分数:1.00)A.hello,

19、 B.new worldhello,C.new worldD.hello,rld解析:17.在待排序的元素序列基本有序的前提下,效率最高的排序方法是 ( )(分数:1.00)A.冒泡排序 B.选择排序C.快速排序D.归并排序解析:18.已知下列函数定义 setw(int *b,int m,int n,int dat) int k; for(k=0;km*n,k+) *bdat;b+; 则调用此函数的正确写法是(假设变量 a 的说明为 int a50) ( )(分数:1.00)A.setw(*a,5,8,1);B.setw(too; DATE max; 则下列语句的执行结果是 ( ) print

20、f(“%d“,stzeof(struct date)+sizeof(max);(分数:1.00)A.25B.30 C.18D.8解析:27.下列常数中,不合法的 C 常量是 ( )(分数:1.00)A.-0x3b1B.123e+2.3 C.D.6e+7解析:28.以下叙述中错误的是 ( )(分数:1.00)A.二进制文件打开后可以先读文件的末尾,而顺序文件不可以B.在程序结束时,应当用 fclose 函数关闭已打开的文件C.在利用 fread 函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据D.不可以用 FILE 定义指向二进制文件的文件指针 解析:29.若有如下程序: sub

21、(p,n) int(*p)3,n; int i; for(i=0;i=n;i+) printf(“%d“,*(*(p+i)+n); main() int s331,2,3,4,5,6,7,8,9; sub(s,2); 则程序运行后的输出结果是 ( )(分数:1.00)A.3 6 9 B.2 4 8C.4 5 6D.7 8 9解析:30.执行下面的程序段 int x=40; char zB; int B; B=(x*b=c; main() cha,a,b; aA;bB;sub3(putchar(b); aA;b=B;sub2(putchar(a);putchar(b); aA;b=B;sub1(

22、a,b) ;putchar(a);putchar(b); 程序运行后的输出结果是 ( )(分数:1.00)A.BABBAB B.ABBBBAC.BABABAD.BAABBA解析:46.有如下程序 main() int x1,a0,b0; switch(x) case 0 : b+; case 1 : a+; case 2 : a+;b+; printf(“a=%d,b=%d/n“,a,B) ; 程序运行后的输出结果是 ( )(分数:1.00)A.a2,b1 B.a1,b=1C.a=1,b=0D.a=2,b=2解析:47.若有如下程序段: main() int n0; while(printf(

23、“*“) n+; if(n3)break; 则下列描述正确的是 ( )(分数:1.00)A.其中循环控制表达式与 0 等价B.其中循环控制表达式与0等价 C.其中循环控制表达式是不合法的D.以上说法都不对解析:48.在关系数据库中,对一个关系做投影操作后,新关系的元组个数将 ( )(分数:1.00)A.等于原来关系中的元组个数 B.大于原来关系中的元组个数C.小于原来关系中的元组个数D.不能确定元组个数解析:49.能正确表示代数式 (分数:1.00)A.3*xn(2*x-1)B.3*x*n(2*x-1)C.3*pow(x,*(1(2*x-1) D.3*pow(n,(2*x-1)解析:50.以下

24、非法的赋值语句是 ( )(分数:1.00)A.n(i2,+B.j+C.+(i+1) D.xj0解析:二、B填空题/B(总题数:13,分数:26.00)51.假设线性表的长度为 n,则在最坏情况下,冒泡排序需要的比较次数为U 【1】 /U。(分数:2.00)填空项 1:_ (正确答案:n(n-1)/2)解析:52.类是一个支持集成的抽象数据类型,而对象是类的U 【2】 /U。(分数:2.00)填空项 1:_ (正确答案:实例)解析:53.对软件是否能达到用户所期望的要求的测试称为U 【3】 /U。(分数:2.00)填空项 1:_ (正确答案:有效性测试)解析:54.单元测试又称模块测试,一般采用

25、U 【4】 /U测试。(分数:2.00)填空项 1:_ (正确答案:白盒法)解析:55.当数据的物理结构(存储结构、存取方式等)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的U 【5】 /U。(分数:2.00)填空项 1:_ (正确答案:物理独立性)解析:56.在 C 语言中,可以利用U 【6】 /U,将一个表达式的值转换成指定的类型。(分数:2.00)填空项 1:_ (正确答案:强制类型转换)解析:57.下面程序的功能是根据公式 e1+11!+12!+13!+14!+计算 e 的近似值,精度要求为 10-5。请填空。main() int n;double e1.0,

26、t1.0;for(n1;U 【7】 /Un+);U 【8】 /Ue+=t;printf(“%f/n“,e); (分数:2.00)填空项 1:_ (正确答案:7tle-5;)解析:8t=t/n;58.以下程序的输出结果是U 【9】 /U。 double sub(double x,double y,double z) y-1.0; zz+x; return z; main() double a=2.5,b9.0; printf(“function running result is:%6.1f/n“,sub(b-a,a,A) ); (分数:2.00)填空项 1:_ (正确答案:function r

27、unning result is:9.0)解析:59.下面程序的功能是将字符串 s 中所有的字符 c 删除,补足所缺语句。 #includestdioh main() char s80; int i,j; gets(s); for(i=j=0;si!=/0;i+) if(si!c)U 【10】 /U; sj=/0; puts(s); (分数:2.00)填空项 1:_ (正确答案:sj+si)解析:60.下面程序调用 fun 函数动态分配两个整型存储单元,并通过形参传回这两个整型存储单元的地址给 s1和 s2,将程序补充完整。 main() int*s1,*s2; fun(U 【11】 /U); int fun(U 【12】 /U); *p=(int *)malloc(sizeof(int); *q=(int *)malloc(sizeof(int); (分数:2.00)填空项 1:_ (正确答案:11 U 【19】 /U; while(chgetchar()!=#) fputc(U 【20】 /U); fclose(fp);(分数:2.00)填空项 1:_ (正确答案:18fname,“#“)解析:19exit(0) 20ch,fp

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1