C语言第一次作业
一、PTA实验作业
1.温度转换
本题要求编写程序,计算华氏温度150°F对应的摄氏温度。计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。
(1).实验代码
int celsius,fahr;
fahr=150;
celsius=5*(fahr-32)/9;
printf("fahr = 150, celsius = %d",celsius);
(2)设计思路
- 定义整数变量fahr,celsius,fahr存入华氏温度,celsius存入摄氏温度
- 赋值fahr=150
- 进行运算
(3)调试问题及解决方法
- 在scanf的语句中忘记在变量前面加入&
- 没有在main函数的最后加上return 0;
- 没有按照题目要求的输出
2.将x的平方赋值给y
假设x的值为3,计算x的平方并赋值给y,分别以“y = x ∗ x”和“x ∗ x = y”的形式输出x和y的值。
(1).实验代码
int x,y;
x=3;
y=x*x;
printf("%d = %d * %d\n%d * %d = %d",y,x,x,x,x,y);
(2)设计思路
- 先定义整数变量x,y
- 赋值x=3
- 计算y=x*x的值
- 按题目要求,以“y = x ∗ x”和“x ∗ x = y”的形式输出x和y的值
(3)调试问题及解决方法
- 在Devc++中编译时发现出错,原因是有一个中文字符的;
- %d的%错写成&
- %d与变量没有一一对应
3.是不是太胖了
据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤是公斤的两倍。现给定某人身高,请你计算其标准体重应该是多少?(顺便也悄悄给自己算一下吧……)
(1).实验代码
int height;
double weight;
scanf("%d",&height);
weight=(height-100)*0.9*2;
printf("%.1f",weight);
(2)设计思路
- 定义整数变量height(身高),双精度浮点型变量weight(体重)
- 输入height(身高)的值
- 按公式weight=(height-100)0.92进行运算得出weight(体重)的值
- 以保留一位小数点的形式输出weight(体重)的值
(3)调试问题及解决方法
- PTA的格式错误,原因是在scanf语句前多了一句提示输入的printf语句
- 把体重一起定义成了整数型变量
4.输出各位数字
给定一个三位正整数,输出其百位数字、十位数字及个位数字。
(1).实验代码
int a;
scanf("%d",&a);
printf("%d,%d,%d",a/100,(a/10)%10,(a%100)%10);
(2)设计思路
- 定义整数变量a
- 若要输出三位正整数的百位数字,则要将三位正整数乘0.01,因为变量形式的关系,小数点后的数字会被舍去
- 若要输出三位正整数的十位数字,则要将三位正整数乘0.1,再求10的余数,就能输出十位数
- 若要输出三位正整数的个位数字,则要将三位正整数先求100的余数,再求10的余数,就能输出个位数
- 简化程序,将计算放在printf语句里进行,并用逗号隔开三个数字
(3)调试问题及解决方法
- 数学表达式在写成代码的计算中出的错,如a/10%10之类
- 在scanf语句之前又写了个printf语句
二、截图本周题目集的PTA提交列表及最后排名。
1、PTA提交列表
2、PTA排名
三、本周学习总结
1.你学会了什么?
- 学习了如何写出简单的代码语句,以及如何使用Dev c++进行简单的程序调试,
- 学习了如何用代码表达出数学的表达式,
- 学习了scanf、printf、if-else语句的简单应用,
- 明白了如何使用int、float、double之类的变量类型。
2.本周的内容,你还不会什么?
- 循环语句的应用
- 对各个变量类型所对应的读入所使用的 "%" 还不是很清楚
3.你碰到什么困难,打算如何解决?
- 对题目的思考程度不够深,总是要重复多次才能做对;多看书本,多思考题目的要求