|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
#include <math.h>
int main()
{
float a, b, d, e;
char name[8];
printf("请输入华氏度:");
scanf("%f", &a);
while (getchar() != '\n')
;
b = (a - 32) * 5 / 9;
printf("转换为摄氏度是%.2f\n", b);
printf("请输入您的姓名:");
scanf("%s", name);
while (getchar() != '\n')
;
printf("请输入您的身高(cm):");
scanf("%f", &d);
while (getchar() != '\n')
;
printf("请输入您的体重(kg):");
scanf("%f", &e);
while (getchar() != '\n')
;
printf("========== 正在为您转换 ==========\n");
d = d / 2.5;
e = 2.2 * e;
printf("%s的身高是%.2f(in),体重是%.2f(lb)",name, d, e);
return 0;
}
输出:
请输入华氏度:45
转换为摄氏度是7.22
请输入您的姓名:发发发
请输入您的身高(cm):170
请输入您的体重(kg):69。1
========== 正在为您转换 ==========
zsh: abort
问1:以上是什么问题,怎么解决
问2:修改代码第一次摁运行是从 请输入您的身高(cm): 开始,这是为什么。之后在运行就是正常从华氏度开始
- #include <stdio.h>
- int main(void)
- {
- float a , b , d , e ;
- char name[8] ;
- printf("请输入华氏度 : ") ;
- scanf("%f" , & a) ;
- b = (a - 32) * 5 / 9 ;
- printf("转换为摄氏度是%.2f\n", b) ;
- printf("请输入您的姓名 : ") ;
- scanf("%s" , name) ;
- printf("请输入您的身高(cm) : ") ;
- scanf("%f" , & d) ;
- printf("请输入您的体重(kg) : ") ;
- scanf("%f" , & e) ;
- printf("========== 正在为您转换 ==========\n") ;
- d = d / 2.5;
- e = 2.2 * e;
- printf("%s 的身高是 %.2f(in) , 体重是 %.2f (lb)\n" , name , d , e) ;
- }
复制代码
编译、运行实况:
- D:\[00.Exercise]\[C]>g++ -o x x.c
- D:\[00.Exercise]\[C]>x
- 请输入华氏度 : 45
- 转换为摄氏度是7.22
- 请输入您的姓名 : 发发发
- 请输入您的身高(cm) : 170
- 请输入您的体重(kg) : 69.1
- ========== 正在为您转换 ==========
- 发发发 的身高是 68.00(in) , 体重是 152.02 (lb)
- D:\[00.Exercise]\[C]>
复制代码
|
|