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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

【计算机类职业资格】福建省二级C语言-4 (1)及答案解析.doc

1、福建省二级 C 语言-4 (1)及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:20,分数:40.00)1.C 语言程序的基本单位是_。(分数:2.00)A.函数B.过程C.子例程D.子程序2.C 语言中基本数据类型有_。(分数:2.00)A.整型、实型、逻辑型B.整型、字符型、逻辑型C.整型、实型、字符型D.整型、实型、字符型、逻辑型3.依据 C 语言的语法规则,下列_是用户定义的合法标识符。(分数:2.00)A.elseB.ElseC.user$3D.5_object4.若已定义 int x=136, y; ,执行语句 y=x/10%10; 后,y 的值是_。(分

2、数:2.00)A.1B.3C.6D.05.语句 printf(“%c, %d/n“, 66, 66); 的输出结果是_。(分数:2.00)A.B,66B.B,BC.66,BD.66,666.以下程序运行结果是_。 #includestdio.h int main() int a=-1, b=3, k; k=(a=0) printf(“%d, %d, %d/n“, a, b, k); return 0; (分数:2.00)A.-1,1,1B.-1,1,0C.-1,3,1D.-1,3,07.以下四个运算符,按优先级由高到低的排列顺序是_。(分数:2.00)A.!、%、=、=B.%、!、=、=C.!

3、、%、=、=D.!、=、%、=8.执行以下程序,若从键盘输入 5,则输出结果是_。 #includestdio.h int main() int k; scanf(“%d“, switch(k) default: printf(“%d“, k); case 1: printf(“%d“, k); break; case 2: printf(“%d“, 2*k); case 3: printf(“%d“, 3*k); break; return 0; (分数:2.00)A.55B.5C.10D.159.设 E 为一表达式,以下与 dowhile(E);不等价的语句是_。(分数:2.00)A.do

4、while(!E=0);B.dowhile(E0|E0);C.dowhile(E=0);D.dowhile(E!=0);10.若已知 k 为一维整型数组,则表达式 sizeof(k)/sizeof(int)的值等于_。(分数:2.00)A.数组 k 所占用的字节数B.数组 k 中第一个元素的值C.数组 k 的元素个数D.数组 k 中非零元素的个数11.若已定义 int a3=1, 2, 5, 6, 8, 9, 11; ,则 a 数组第一维的大小是_。(分数:2.00)A.5B.4C.2D.312.若已定义 char str1=“good-bye“, str210; ,则对函数 strcpy 不

5、正确使用的是_。(分数:2.00)A.strcpy(str1, “hello11“);B.strcpy(str2, “hello12“);C.strcpy(str1, “hello13“);D.strcpy(str2, str1);13.在 C 语言中,下列叙述正确的是_。(分数:2.00)A.函数的定义允许嵌套,但函数的调用不允许嵌套B.函数的定义不允许嵌套,但函数的调用允许嵌套C.函数的定义和调用都不允许嵌套D.函数的定义和调用都允许嵌套14.以下含有宏定义的程序中,数组 a 的大小是_。 #includestdio.h #define N 10 int main() int aN, i;

6、 for(i=0; iN; i+) ai=i+2; for(i=0; iN; i+) printf(“%4d“, ai); return 0; (分数:2.00)A.9B.10C.11D.无法确定15.若有以下定义和语句:int a=4, b=3, *p, *q, *w; p= q= w=q; q=NULL; ,则以下错误的语句是_。(分数:2.00)A.*q=0;B.w=p;C.*p=a;D.*p=*w;16.若有以下定义和语句: int a35, (*p)5; p=a; 则能正确引用元素 a13的是_。(分数:2.00)A.*(*(p+3)+1)B.*(p+1)+3C.*(p+1)+3D.

7、*(*(p+1)+3)17.若有以下定义语句: struct person Int num; char name10; float weight; wei, lin; 下列叙述正确的是_。(分数:2.00)A.person 是结构类型名B.wei 是结构类型名C.struct 是结构类型名D.wei、lin 都是结构类型 person 的成员名18.若有以下说明,能正确引用“Li Ming“的方式是_。 struct stu char name20; int num; stu12=“Ma Hong“, 18, “Li Ming“, 17; struct stu*p=stu1;(分数:2.00)

8、A.stu11.nameB.p-nameC.stu1.nameD.(*p+).name19.以下关于 typedef 的叙述不正确的是_。(分数:2.00)A.使用 typedef 便于程序的通用B.用 typedef 可以增加新类型C.用 typedef 只是将已存在的类型用一个新的名称来表示D.用 typedef 可以定义各种类型名,但不能用来定义变量20.若已定义:FILE*fp; ,要在文本文件 data.txt 后追加数据,应使用语句_。(分数:2.00)A.fp=fopen(“data.txt“, “wb+“)B.fp=fopen(“data.txt“, “wt“)C.fp=fop

9、en(“data.txt“, “rb+“)D.fp=fopen(“data.txt“, “at+“)二、程序填空题(总题数:1,分数:20.00)(在每对/*/之间填写内容,完成题目的要求)(分数:20.00)(1).以下程序用以查找 1100 之间含有 3 或 7 数字的所有整数,并按每行最多打印 10 个数的形式输出。 #includestdio.h int find(/*/ 1/*/) int a, flag=0; while(y!=0) a=/*/ 2/*/; if(a=3)|(a=7) flag=1; break; y=y/10; return/*/ 3/*/; int main()

10、 int x, n=0; for(x=1; x100; x+) if(find(/*/ 4/*/) printf(“%2d“, x); n+; if(n%10=0) printf(“/n“); return 0; (分数:10.00)(2).以下程序中的 fun 函数用以输出一个数除 1 和本身外的所有因子,如无因子,则提示为素数。 #includestdio.h /*/ 1/*/fun(int x) int i, mark=0; for(i=2; i=x/2; i+) if(/*/ 2/*/=0) printf(“%2d“, i); mark=1; if(mark=0) printf(“%d

11、 is a prime number!“, x); printf(“/n“); int main() int a; printf(“Input a number:“); scanf(“%d“, fun(/*/ 3/*/); return 0; (分数:10.00)三、程序改错题(总题数:1,分数:20.00)(修改每对/*/之间存在的错误,完成题目的要求)(分数:20.00)(1).以下程序以每行最多 12 个的方式打印 101000 之间满足正序读和反序读都相同的所有数,如55、232 等。 #includestdio.h int main() /*/ 1 int i, n/*/; for(

12、i=10; i=99; i+) if(i/10=i%10) printf(“%5d“, i); n+; if(/*/ 2 n%12=0/*/) printf(“/n“); for(i=100; i=999; i+) if(/*/ 3 i/100=i/10/*/) printf(“%5d“, i); n+; if(n%12=0) printf(“/n“); return 0; (分数:10.00)(2).以下程序中 dele(char*s)函数的功能是删除字符串 s 中所有非字母字符,并将字符串压缩。例如原字符串为:abcl2ef5ghij8#%yz,处理后的字符串为:abcefghijyz。

13、#includestdio.h void dele(/*/ 1 char s /*/) int i=0, t; while(*(s+i)!=“/0“) if(/*/ 2*(s+i)“A“|(*(s+i)“Z“ while(*(s+t)!=“/0“) *(s+t)=*(s+t+1); /*/ 3 i+/*/; else i+; int main() char str1100; printf(“Enter a string:“); gets(str1); dele(str1); printf(“Now string is:%s/n“, str1); return 0; (分数:10.00)四、编程

14、题(总题数:1,分数:20.00)(补充每对/*/之间的程序段,完成题目的要求)(分数:20.00)(1).程序中的 fun()函数,用以完成如下数学表达式。 (分数:10.00)_(2).程序中 fun()函数的功能是根据整型参数 n,计算 (分数:10.00)_福建省二级 C 语言-4 (1)答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:20,分数:40.00)1.C 语言程序的基本单位是_。(分数:2.00)A.函数 B.过程C.子例程D.子程序解析:2.C 语言中基本数据类型有_。(分数:2.00)A.整型、实型、逻辑型B.整型、字符型、逻辑型C.整型、实型、

15、字符型 D.整型、实型、字符型、逻辑型解析:3.依据 C 语言的语法规则,下列_是用户定义的合法标识符。(分数:2.00)A.elseB.Else C.user$3D.5_object解析:4.若已定义 int x=136, y; ,执行语句 y=x/10%10; 后,y 的值是_。(分数:2.00)A.1B.3 C.6D.0解析:5.语句 printf(“%c, %d/n“, 66, 66); 的输出结果是_。(分数:2.00)A.B,66 B.B,BC.66,BD.66,66解析:6.以下程序运行结果是_。 #includestdio.h int main() int a=-1, b=3,

16、 k; k=(a=0) printf(“%d, %d, %d/n“, a, b, k); return 0; (分数:2.00)A.-1,1,1B.-1,1,0C.-1,3,1 D.-1,3,0解析:7.以下四个运算符,按优先级由高到低的排列顺序是_。(分数:2.00)A.!、%、=、= B.%、!、=、=C.!、%、=、=D.!、=、%、=解析:8.执行以下程序,若从键盘输入 5,则输出结果是_。 #includestdio.h int main() int k; scanf(“%d“, switch(k) default: printf(“%d“, k); case 1: printf(“

17、%d“, k); break; case 2: printf(“%d“, 2*k); case 3: printf(“%d“, 3*k); break; return 0; (分数:2.00)A.55 B.5C.10D.15解析:9.设 E 为一表达式,以下与 dowhile(E);不等价的语句是_。(分数:2.00)A.dowhile(!E=0);B.dowhile(E0|E0);C.dowhile(E=0); D.dowhile(E!=0);解析:10.若已知 k 为一维整型数组,则表达式 sizeof(k)/sizeof(int)的值等于_。(分数:2.00)A.数组 k 所占用的字节数

18、B.数组 k 中第一个元素的值C.数组 k 的元素个数 D.数组 k 中非零元素的个数解析:11.若已定义 int a3=1, 2, 5, 6, 8, 9, 11; ,则 a 数组第一维的大小是_。(分数:2.00)A.5B.4C.2D.3 解析:12.若已定义 char str1=“good-bye“, str210; ,则对函数 strcpy 不正确使用的是_。(分数:2.00)A.strcpy(str1, “hello11“);B.strcpy(str2, “hello12“);C.strcpy(str1, “hello13“); D.strcpy(str2, str1);解析:13.在

19、 C 语言中,下列叙述正确的是_。(分数:2.00)A.函数的定义允许嵌套,但函数的调用不允许嵌套B.函数的定义不允许嵌套,但函数的调用允许嵌套 C.函数的定义和调用都不允许嵌套D.函数的定义和调用都允许嵌套解析:14.以下含有宏定义的程序中,数组 a 的大小是_。 #includestdio.h #define N 10 int main() int aN, i; for(i=0; iN; i+) ai=i+2; for(i=0; iN; i+) printf(“%4d“, ai); return 0; (分数:2.00)A.9B.10 C.11D.无法确定解析:15.若有以下定义和语句:i

20、nt a=4, b=3, *p, *q, *w; p= q= w=q; q=NULL; ,则以下错误的语句是_。(分数:2.00)A.*q=0; B.w=p;C.*p=a;D.*p=*w;解析:16.若有以下定义和语句: int a35, (*p)5; p=a; 则能正确引用元素 a13的是_。(分数:2.00)A.*(*(p+3)+1)B.*(p+1)+3C.*(p+1)+3D.*(*(p+1)+3) 解析:17.若有以下定义语句: struct person Int num; char name10; float weight; wei, lin; 下列叙述正确的是_。(分数:2.00)A

21、.person 是结构类型名 B.wei 是结构类型名C.struct 是结构类型名D.wei、lin 都是结构类型 person 的成员名解析:18.若有以下说明,能正确引用“Li Ming“的方式是_。 struct stu char name20; int num; stu12=“Ma Hong“, 18, “Li Ming“, 17; struct stu*p=stu1;(分数:2.00)A.stu11.name B.p-nameC.stu1.nameD.(*p+).name解析:19.以下关于 typedef 的叙述不正确的是_。(分数:2.00)A.使用 typedef 便于程序的

22、通用B.用 typedef 可以增加新类型 C.用 typedef 只是将已存在的类型用一个新的名称来表示D.用 typedef 可以定义各种类型名,但不能用来定义变量解析:20.若已定义:FILE*fp; ,要在文本文件 data.txt 后追加数据,应使用语句_。(分数:2.00)A.fp=fopen(“data.txt“, “wb+“)B.fp=fopen(“data.txt“, “wt“)C.fp=fopen(“data.txt“, “rb+“)D.fp=fopen(“data.txt“, “at+“) 解析:二、程序填空题(总题数:1,分数:20.00)(在每对/*/之间填写内容,完

23、成题目的要求)(分数:20.00)(1).以下程序用以查找 1100 之间含有 3 或 7 数字的所有整数,并按每行最多打印 10 个数的形式输出。 #includestdio.h int find(/*/ 1/*/) int a, flag=0; while(y!=0) a=/*/ 2/*/; if(a=3)|(a=7) flag=1; break; y=y/10; return/*/ 3/*/; int main() int x, n=0; for(x=1; x100; x+) if(find(/*/ 4/*/) printf(“%2d“, x); n+; if(n%10=0) print

24、f(“/n“); return 0; (分数:10.00)解析:int y y%10 flag x(2).以下程序中的 fun 函数用以输出一个数除 1 和本身外的所有因子,如无因子,则提示为素数。 #includestdio.h /*/ 1/*/fun(int x) int i, mark=0; for(i=2; i=x/2; i+) if(/*/ 2/*/=0) printf(“%2d“, i); mark=1; if(mark=0) printf(“%d is a prime number!“, x); printf(“/n“); int main() int a; printf(“In

25、put a number:“); scanf(“%d“, fun(/*/ 3/*/); return 0; (分数:10.00)解析:void x%i a三、程序改错题(总题数:1,分数:20.00)(修改每对/*/之间存在的错误,完成题目的要求)(分数:20.00)(1).以下程序以每行最多 12 个的方式打印 101000 之间满足正序读和反序读都相同的所有数,如55、232 等。 #includestdio.h int main() /*/ 1 int i, n/*/; for(i=10; i=99; i+) if(i/10=i%10) printf(“%5d“, i); n+; if(

26、/*/ 2 n%12=0/*/) printf(“/n“); for(i=100; i=999; i+) if(/*/ 3 i/100=i/10/*/) printf(“%5d“, i); n+; if(n%12=0) printf(“/n“); return 0; (分数:10.00)解析:int i, n=0 n%12=0 i/100=i%10(2).以下程序中 dele(char*s)函数的功能是删除字符串 s 中所有非字母字符,并将字符串压缩。例如原字符串为:abcl2ef5ghij8#%yz,处理后的字符串为:abcefghijyz。 #includestdio.h void del

27、e(/*/ 1 char s /*/) int i=0, t; while(*(s+i)!=“/0“) if(/*/ 2*(s+i)“A“|(*(s+i)“Z“ while(*(s+t)!=“/0“) *(s+t)=*(s+t+1); /*/ 3 i+/*/; else i+; int main() char str1100; printf(“Enter a string:“); gets(str1); dele(str1); printf(“Now string is:%s/n“, str1); return 0; (分数:10.00)解析:char*s *(s+i)“A“|(*(s+i)“Z“ if(x0) y=1+exp(x); else if(x=0) y=1; else y=log(x*x); return y;(2).程序中 fun()函数的功能是根据整型参数 n,计算 (分数:10.00)_正确答案:()解析:double y=0.0, t; int i; for(i=1; i=n; i+) t=(2.0*i-1)*(2.0*i+1)/(i*2.0); if(i%2=1) y+=t; else y-=t; return(y);

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