《全国计算机等级考二级教程——C语言程序设计》习题分析与解答(二)--3 4 5
《全国计算机等级考试二级教程——C语言程序设计》习题分析与解答(二)
第三章 顺序结构习题分析与解答
一、选择题 (单选题)
3.1 【参考答案】 C)
3.2 【参考答案】 C)
3.3 【参考答案】 D)
3.4 【参考答案】 C)
3.5 【参考答案】 D)
3.6 【参考答案】 B)
3.7 【参考答案】 C)
3.8 【参考答案】 C)
3.9 【参考答案】 A)
3.10 【参考答案】 B)
3.11 【参考答案】 C)
3.12 【参考答案】 D)
3.13 【参考答案】 D)
3.14 【参考答案】 A)
3.15 【参考答案】 C)
3.16 【参考答案】 C)
3.17 【参考答案】 C)
3.18 【参考答案】 D)
3.19 【参考答案】 C)
3.20 【参考答案】 B)
二、 填空题
3.21 【参考答案】
(1) -200,2500 (2) i=-200,j=2500
(3) i=-200
j=2500
3.22 【参考答案】 [1] 12 [2] 0 [3] 0
3.23 【参考答案】 [1] 一条语句 [2] 分号(或;)
3.24 【参考答案】 分号(;)
3.25 【参考答案】
[1]:100 25.82 1.89234
[2]: 100
25.82
1.89234
[3]:100 25.82 1.89234
3.26 【参考答案】 x=127, x= 127, x= 177,x= 7f, x= 127
3.27 【参考答案】 x=127, x=127 , x=$127 ,x=$ 000127, x=%06d
3.28 【参考答案】 a=513.789215,a= 513.79,a= 513a= 513三、 编程题和改错题
3.29 【分析与解答】
(1) 主函数名main后应有一对圆括号。
(2) 变量定义语句中,v的前面缺逗号。
(3) 第三行的printf语句用以提示输入,但是原样输出的字符串没有用双引号括起来;另外,从输入的形式看,输入的数据紧跟在提示之后,因此,printf格式串中最后不应该有换行符——\n。
(4) 因为输入项a、b、c从定义和计算结果来看都是double类型,因此,第四行scanf语句格式串中的格式说明不应当用%d而应当用%lf;且每一个变量之前应该加地址运算符&。
(5) 第七行的printf语句中应当把%d都改成%lf或%f;按输出要求在格式串中应添加相应的原样输出的字符;因为下一个printf的输出从新的一行开始,因此在本输出语句的格式串的最后应当加换行符——\n。
(6) 第八行的printf语句中应当把格式串整理合并放在输出项的前面,输出项放在后面,%d都改成%lf或%f;中间的\n删去。
(7) 请读者自己写出修改后的程序,并上机调试。
3.30 【分析与解答】
(1) 分析:可用算术式560÷60把分钟换算成小时和分钟,商数就是小时数,余数就是分钟数。
(2) 确定变量的名字和定义变量的类型:在程序中把小时数放在变量h中,把分钟数放在变量m中。这两个变量的类型可以是整型(本题中采用整型),也可以是实型。
(3) 确定所用算法:求〖SX()560〖〗60〖SX〗〗的商数,在C语言中可以用整除的算法,语句是h=560/60;。求余数可用求余运算符 %:560%60,其值放入变量m中的语句是:m=560%60;。(4) 设计输出格式。若输出的形式定为:小时:分钟,则按此形式设计输出语句。
(5) 把以上内容放在主函数的一对花括号中。
(6) 编写程序如下:
main()
{ int h, m;
h=560/60;
m=560%60;
printf(″The result: %3d : %3d\n″, h,m);
}
运行结果是:
The result: 9 : 20
3.31 【分析与解答】
(1) 确定变量的