高级语言程序设计第三次个人作业
这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzu/2024C
这个作业要求在哪里:https://edu.cnblogs.com/campus/fzu/2024C/homework/13284
学号:102400111
姓名:蔡伟仡
4.8.2
题目:编写一个程序,提示用户输入名字,并执行以下操作:
a.打印名字,包括双引号:
b.在宽度为20的字段右端打印名字,包括双引号;
c.在宽度为20的字段左端打印名字,包括双引号;
d.在比姓名宽度宽3的字段中打印名字 (没说要打双引号)
问题与解决:不知道如何计算字符串长度,请教同学
不知道使用<string.h>库,翻课本
4.8.3
题目::编写一个程序,读取一个浮点数,首先以小数点计数法打印,然后以指数计数法打印。用下面的格式进行输出:
a. The input is 21.3 or 2.1e+001.
b. The input is +21.290 or 2.129E+001
4.8.4
题目:编写一个程序,提示用户输入身高(单位:英寸)和姓名,然后以下面的格式显示用户刚才输入的信息:
Dabney, you are 6.208000 feet tall
使用 float 类型,并用/作为除号。如果你愿意,可以要求用户以厘米为单位输入身高,并以米为单位显示出来。
4.8.6
题目:编写一个程序,先提示用户输入名,然后提示用户输入姓。在一行打印用户输入的名和姓,下一行分别打印名和姓的字母数。字母数要与相应名和姓的结尾对齐,如下所示:
Melissa Honeybee
7 8
接下来,再打印相同的信息,但是字母个数与相应名和姓的开头对齐,如下所示:
Melissa Honeybee
7 8
问题与解决:不会使用d,请教同学
4.8.7
题目:编写一个程序,将一个double类型的变量设置位1.0/3.0,一个float类型的变量设置为1.0/3.0。分别显示两次计算的结果各三次:一次显示小数点后面6位数字。一次显示小数点后面12位数字,一次显示小数点后面16位数字。程序中要搬float.h文件夹,并显示FIT-DIG和DBL-DIG的值。1.0/3.0的值与这些值一致嘛?
4.8.8
题目:编写一个程序,提示用户输入旅行的里程和消耗的汽油量。然后计算并显示消耗每加仑汽油行驶的英里数,显示小数点后面一位数字。接下来,使用一加仑大约3.785升,一英里约为1.609千米,把单位是英里/加仑的值转换为 升/100公里,并显示结果,显示小数点后面1位数字。注意,美国采用的方案测量消耗单位燃料的行程,而欧洲则采用单位距离消耗的燃料测量方案。使用#deifne创建符号常量或使用const限定符。
问题与解决:数学换算出了问题,静下心认真想了一下
5.1.1
题目:编写一个程序,把用分钟表示的时间转换成用小时和分钟表示的时间。使用#define或const创建一个表示60的符号常量或const变量。通过while循环让用户重复输入值,直到用户输入小于或等于0的值才停止循环.
5.1.2
题目:编写一个程序,提示用户输入一个整数,然后打印从该数到比该数大10的所有整数(例如:用户输入5,则打印5-15的所有整数,包括5和15).要求打印的各值之间用一个空格,制表符或换行符分开。
问题与解决:不知道使用哪种循环,请教同学
5.1.3
题目:编写一个程序,提示用户输入天数,然后将其转换成周数和天数。例如,用户输入18,则转换成2周4天。以下面的格式显示结果:18 days are 2 weeks,4 day,通过while循环让用户重复输入天数,当用户输入一个非正值时(如0或-20),循环结束。
5.1.4
题目:编写一个程序,提示用户输入一个身高(单位:厘米),并分别以英尺和英寸为单位显示该值,允许有小数部分。程序应该能让用户重复输入身高,直到用户输入一个非正值。其输出示例如下:
Enter a height in centimeters: 182
182.0 cm = 5 feet, 11.7 inches
Enter a height in centimeters (<=0 to quit): 168.7
168.7 cm = 5 feet, 6.4 inches
Enter a height in centimeters (<=0 to quit): 0
bye
问题与解决:inch转换出现问题,认真思考
5.1.5
题目:修改程序addemup.c(程序清单5.13),你可以认为addemup.c是计算20天里赚多少钱的程序(假设第一天赚$1、第二天赚$2、第三天赚$3,以此类推)修改程序,使其可以与用户交互,根据用户输入的数进行计算(即,用读入的一个变量来代替20)
5.1.6
题目:修改编程练习5的程序,使其能计算整数的平方和(可以认为第一天赚$1、第二天赚$4、第三天赚$9,以此类推,这看起来还不错)。c没有平方函数,但是可以用nn来表示n的平方。编写一个程序。提示用户输入一个double类型的数,并打印该数的立方值。自己设计一个函数计算并打印立方值。main()函数要把用户输入的值传递给该函数。
5.1.7
题目:编写一个程序。提示用户输入一个double类型的数,并打印该数的立方值。自己设计一个函数计算并打印立方值。main()函数要把用户输入的值传递给该函数
5.1.8
题目:编写一个程序,显示求模运算的结果。(求模即求余运算)把用户输入的第1个整数作为求模运算符的第2个运算对象,该数在运算过程中保持不变。用户后面输入的数是第1个运算对象。当用户输入一个非正值时,程序结束。其输出示例如下:
This program computes moduli.
Enter an integer to serve as the second operand: 256
Now enter the first operand: 438
438 % 256 is 182
Enter next number for first operand (<= 0 to quit): 1234567
1234567 % 256 is 135
Enter next number for first operand (<= 0 to quit): 0
Done
问题与解决:输入0后也会输出一段取模的代码,调换代码位置
5.1.9
题目:编写一个程序,要求用户输入一个华氏温度。程序应读取double 类型的值作为温度值,并把该值作为参数传递给一个用户自定义的函数Temperatures() 。该函数计算摄氏温度和开氏温度,并以小数点后面两位数字的精度显示3种温度。要使用不同的温标来表示这3个温度值。下面是华氏温度转摄氏温度的公式:
摄氏温度 = 5.0 / 9.0 * (华氏温度 - 32.0)
开氏温标常用于科学研究,0 表示绝对零,代表最低的温度。下面是摄氏温度转开氏温度的公式:
开氏温度 = 摄氏温度 + 273.16
Temperatures() 函数中用const 创建温度转换中使用的变量。在main() 函数中使用一个循环让用户重复输入温度,当用户输入q 或其他非数字时,循环结束。scanf() 函数返回读取数据的数量,所以如果读取数字则返回1 ,如果读取q 则不返回1 。可以使用==运算符将scanf() 的返回值和1 作比较,测试两值是否相等。
思想与总结:本次作业较为困难,有许多不理解的函数例如最后一题的温度函数,应该熟悉课本。