全国计算机等级考试二级教程高教版,全国计算机等级考试二级教程(高教版)习题(有答案).doc...

《全国计算机等级考试二级教程——C 语言程序设计》课后题及参考

答案

(教育部考试中心)高等教育出版社出版

(第一章、第二章、第三章)

第一章程序设计基本概念

1.3 结构化程序由_____、_____、_____三种基本结构组成。

答案:顺序、选择、循环

二、填空题

2.16 函数体由符号____开始,用符号____结束。函数体的前面是____部分,其后是____部分。

答案:{、}、定义、执行

第三章、顺序结构

一、选择题

3.1

3.2 以下选项中不是C 语句的是

A) {int i; i++; printf("%d\\n", i); }

B) ; C) a=5,c=10 D) { ; }

答案:C

分析:

语句必须以分号结尾。

选项A是一个复合语句,复合语句是用{}括号多条语句。

选项B是一个空语句,只有一个分号。

选项C不是语句,因为没有以分号结尾。

3.6 若变量已正确说明为float 类型,要通过以下赋值语句给a 赋予10、b 赋予22、c 赋予33,以下不正确

的输入形式是

A) 10 22 33 B) 10.0,22.0,33.0 C) 10.0 22.0 33.0 D) 10 22 33

scanf("%f %f %f", &a, &b, &c);

答案:B

分析:

使用scanf输入整数,输入的每个整数中间以空格、回车、tab作分隔,输入整数时要看scanf的格式控制符,如果格式控制符中除空格以外有其它字符要原样输入。

选项B格式不正确,因为scanf的格式控制符为"%f %f %f"并没有逗号,而输入10.0,22.0,33.0是不对的。

3.7 若变量以正确定义,要将a 和b 中的数进行交换,下面不正确的语句组是

A) a=a+b,b=a-b,a=a-b; B) t=a,a=b,b=t;

C) a=t; t=b; b=a; D) t=b; b=a; a=t;

答案:C

分析:

可以假设a和b的值分别为3、5

通过执行A、B、D中的语句发现都可以实现a和b的值交换。

选项C不能实现a、b值交换。

3.8

3.9

3.10

3.11 当运行以下程序时,在键盘上从第一列开始输入9876543210(此处代表Enter),则程序的输

出结果是

A) a=98,b=765,c=4321 B) a=10,b=432,c=8765

C) a=98,b=765.000000,c=4321.000000 D) a=98,b=765,c=4321.0

main()

{

int a; float b,c;

scanf("%2d%3f%4f",&a,&b,&c);

printf("\\na=%d,b=%f,c=%f\\n",a,b,c);

}

答案:C

分析:该题目考察对scanf格式控制符宽度的掌握。

在scanf函数格式控制符中间加一个整数用来表示匹配数据的宽度。

scanf("%2d%3f%4f",&a,&b,&c);匹配输入数据2位赋值给a,匹配输入数据3位赋值给b, 匹配输入数据4位赋值给c,本题目输入9876543210然后回车,即将98赋值给a,765赋值给b,4321赋值给c,使用

printf("\\na=%d,b=%f,c=%f\\n",a,b,c);输出a、b、c的值,a以整型输出,b和c以小数形式输出,即输出:98,765.000000,4321.000000

选项C正确。

scanf在输入多个数据是以回车、空格、tab作为分隔符,而当在格式控制符中间使用宽度时会依次配置输入数据的宽度,如果从输入数据中能够匹配到指定宽度的数据则scanf就对变量进行赋值,但是如果匹配不到则还是停留在输入状态让用户输入,例如:

输入:123回车

这时scanf先匹配两位数据12赋值给a,现在只剩下一位3赋值给b

这时再输入4 回车,将4赋值给c

例如:

输入:123456回车

将12赋值给a

将345赋值给b

将6赋值给c

大家多多练习体会一下格式控制符宽度的使用。

3.12 以下程序的输出结果是

A) a=%2,b=%5 B) a=2,b=5 C) a=%%d,b=%%d D) a=%d,b=%d

main()

{ int a=2,b=5;

printf("a=%%d,b=%%d\\n",a,b);

}

答案:D

分析:本题目考察输出%的问题。

格式控制符以%开头,如果要输出%符号则必须使用两个%号。

printf("a=%%d,b=%%d\\n",a,b);该语句输出:a=%d,b=%d,并没有输出a和b的值,可见当两个%符号一起使用时则输出%,而格式控制符不起作用。

3.13

3.14 以下程序段的输出是

A) *496 * B) * 49

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值