高级语言程序设计课程第二次个人作业

这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzu/2024C

这个作业要求在哪里:https://edu.cnblogs.com/campus/fzu/2024C/homework/13282

学号:102400124

姓名:邱语堂

书本第3章3.11 编程练习题目中的第1题~第8题。
1.通过试验(即编写带有此类问题的程序)观察系统如何处理整数上溢、浮点数上溢和浮点数下溢情况。

2、编写一个程序,要求提示输入一个 ASCI码值(如,66),然后打印输入的字符。

3.编写一个程序,发出一声警报,然后打印下面的文本:Startled by the sudden sound, sally shouted,
"By the Great Pumpkin, what was that!"

4.编写一个程序,读取一个浮点数,先打印成小数点形式,再打印成指数形式。然后,如果系统支
再打印成p记数法(即十六进制记数法)。按以下格式输出(实际显示的指数位数因系统而异)

5、一年大约有 3.156x107秒。编写一个程序,提示用户输入年龄,然后显示该年龄对应的秒数。

6.1个水分子的质量约为3.0x10-23克。1夸脱水大约是 950克。编写一个程序,提示用户输入水的
脱数,并显示水分子的数量。

7.1英寸相当于 2.54厘米。编写一个程序,提示用户输入身高(/英寸),然后以厘米为单位显示身高。

8、在美国的体积测量系统中,1品脱等于2杯,1杯等于8盎司,1盎司等于2大汤勺,1大汤勺等于3 茶勺。编写一个程序,提示用户输入杯数,并以品脱、盎司、汤勺、茶勺为单位显示等价容量。
思考对于该程序,为何使用浮点类型比整数类型更合适?

答:因为单位换算中经常会出现小数,采用浮点数可以有效增加数值的准确性。

将书本中给的程序清单3.1~3.10的示例程结果输出(无需代码,截图程序输出结果)。






3.7的例子在运行时发生严重的问题,查询多种途径依然无法解决编译器版本问题,回到学校后询问了同学的建议后,将long double改为double,输出了正确的数值。
原因可能是教材中和运行电脑的long double变量位数不一样导致,而电脑上的long double位数更多,导致输出结果变成000000000了。



总结:c语言编译器的版本不同可能会导致很多严重错误并且难以被发现,在编写代码时需要注意,并且在编译程序是尽量避免使用long double等容易出现数值错误的变量。

posted @ 2024-10-07 23:02  邱语堂  阅读(6)  评论(0编辑  收藏  举报