没有合适的资源?快使用搜索试试~ 我知道了~
C语言程序设计(第2版)何钦铭高等教育出版社课后习题答案.pdf
5星 · 超过95%的资源 8 下载量 136 浏览量
2022-11-03
14:22:20
上传
评论 5
收藏 4.84MB PDF 举报
温馨提示
试读
106页
C语言程序设计(第2版)_何钦铭_高等教育出版社_课后习题答案
资源推荐
资源详情
资源评论
11
39
开始 结果
语法
错误
源程序
.c / .cpp
目标程序
.obj
可执行程序
.exe
编辑 编译 连接 运行
连接
错误
运行
错误
C语言程序的调试、运行步骤
修改程序,观察语法错误、逻辑错误及改
正方法。
² 语法错误:可以删除一个分号,使编
译出现错误提示,改正之,再编译。
类比写文章有错别字。
² 逻 辑 错 误 : 将 sum=sum+i 改 为
sum=sum-i,编译、连接、运行,发现
运行结果不符合题目要求。找出错误
(调试),改正之,再编译、连接、运
行,看结果。类比写文章词不达意。
1.3 习题参考答案
1.对 C语言来说,下列标识符中哪些是合法的,哪些是不合法的?
total, _debug, Large&Tall, Counter1, begin_
解答:Large&Tall不合法,其余都合法。
2.改写本章 1.4 节中的流程图 1.2,求 1~100 中能被 6 整除的所有整数的和。
解答:
sum = 0
i = 1
i <= 100
?
i
能被
6
整除?
sum = sum + i
i = i + 1
打印
sum
假
假
真
真
图 1.1 “求 1~100 中能被 6 整除的所有整数的和”的流程图
12
解答:
#include <stdio.h>
int main(void)
{
int i, sum = 0;
for(i = 1; i <= 100; i++)
if (i%6 == 0) sum = sum + i;
printf("%d", sum);
return 0;
}
运行结果:816
4.对于给定的整数 n(n>1),请设计一个流程图判别 n 是否为一个素数(只能被 1 和自己整
除的整数),并分析该流程图中哪些是顺序结构、哪些是分支结构与循环结构。
解答: 在流程图中,分支结构和循环结构如图 1.2 所示,自上而下的 2 个实线框和 2 个虚线组
成了顺序结构。
i = 2
i<=n/2
?
n
能被
i
整除?
i = i + 1
假
假
真
真
i>n/2
?
假真
打印
n
是素数
打印
n
不是素数
输入
n
循环结构
分支结构
图 1.2 “判别 n 是否为素数”的流程图
该程序的运行结果。
3.改写本章 1.4 节中的程序,求 1~100 中能被 6 整除的所有整数的和,并在编程环境中验证
14
#include <stdio.h>
int main(void )
{
printf(" A\n");
printf("A A\n");
printf(" A\n");
return 0;
}
18
2.3 练习与习题参考答案
2.3.1 练习参考答案
2-1 编写程序,在屏幕上显示一个短句“Programming in C is fun!”。
解答:
#include <stdio.h>
int main(void)
{
printf("Programming in C is fun!\n");
return 0;
}
2-2 下列语句的运行结果是什么?与例 2-2 的运行结果有何不同?为什么?
printf("Programming is fun. And Programming in C is even more fun!\n");
解答:
运行结果:Programming is fun. And Programming in C is even more fun!
例 2-2 的运行结果分 2 行显示。原因在于,例 2-2 中在每条输出语句的结尾都采用了‘\n’
换行。
2-3 编写程序,在屏幕上显示如下图案。
****
***
**
*
解答:
int main(void)
{
printf("* * * *\n * * *\n * *\n *\n");
return 0;
}
19
2-4 编写程序,求华氏温度 150°F 对应的摄氏温度(计算公式同例 2-3)。
解答:
#include <stdio.h>
int main(void)
{
int celsius, fahr;
fahr = 150;
celsius = 5 * (fahr – 32) / 9;
printf("fahr = %d, celsius = %d\n", fahr, celsius);
return 0;
}
2-5 算术表达式 5*(fahr-32)/9 能改写成 5(fahr-32)/9 吗?为什么?如果将其改写为
5/9*(fahr-32),会影响运算结果吗?
解答:
5(fahr-32)/9 不是合法的 C 表达式,因为不能省略运算符*;5/9*(fahr-32)的值为 0。
2-6 一个物体从 100 米的高空自由落下,编写程序,求它在前 3 秒内下落的垂直距离。设重
力加速度为 10m/s
2
。
解答:
#include <stdio.h>
int main(void)
{
double height;
height = 0.5 * 10 * 3 * 3;
printf("height = %.2f\n", height);
return 0;
}
2-7 输入提示和输入语句的顺序应该如何安排?例 2-5 中,scanf("%d%d%lf", &money, &year,
&rate) 能改写为 scanf("%d%lf%d", &money, &year, &rate) 吗?为什么?能改写为
scanf("%d%lf%d", &money, &rate, &year) 吗?如果可以,其对应的输入数据是什么?
解答:
输入提示在前,输入语句在后。
不能改写为 scanf("%d%lf%d", &money, &year, &rate),因为%lf 与整型变量 money 不匹
配,%d 与浮点型变量 rate 不匹配。
与 scanf("%d%lf%d", &money, &rate, &year)对应的输入数据为:1000 0.025 3
2-8 编写程序,输入华氏温度,输出对应的摄氏温度,计算公式同例 2-3。
解答:
#include <stdio.h>
int main(void)
{
int celsius, fahr;
剩余105页未读,继续阅读
资源评论
- 马虫医生2023-07-28这个文件提供了对C语言程序设计的深入理解,非常适合初学者。
- 卡哥Carlos2023-07-28这个文件详细回答了C语言程序设计中遇到的各种问题,对解决问题非常有帮助。
- 普通网友2023-07-28通过这个文件,读者可以提升自己的C语言编程水平,非常推荐给想要深入学习C语言的人。
- 豆瓣时间2023-07-28这份文件对于掌握C语言编程技巧来说非常实用,其中的课后习题答案让学习更加方便。
- 英次2023-07-28这本书的课后习题答案清晰明了,为读者提供了很好的学习指导。
小鸭文库
- 粉丝: 141
- 资源: 5901
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功