#include "stdio.h"
#include "stdlib.h"
//float tol_traveled(float beg_od, float end_od);
float reimbursment(float beg_od, float end_od);
int main(){
float beg_od, end_od;
printf("MILEAGE REIMBURSEMENT CALCULATOR\n");
printf("Enter beginning odometer reading=>");
scanf("&f", beg_od);
printf("\n");
printf("Enter ending odometer reading=>");
scanf("&f", end_od);
printf("\n");
printf("You traveled %.1f miles. At $0.35 per mile,\n", beg_od - end_od);
printf("your reimbursment is %.2f.\n", reimbursment(beg_od, end_od));
system("PAUSE");
return 0;
}
/*float tol_traveled(float beg_od, float end_od){
return end_od - beg_od;
}*/
float reimbursment(float beg_od, float end_od){
return (beg_od - end_od) * 0.35;
}
运行到第二个scanf的时候直接跳过了然后最后输出的都是-0.0 -0.00。。。。。求解
7 个解决方案
#1
scanf("
%f",
&beg_od);
scanf(" %f", &end_od);
scanf(" %f", &end_od);
#2
scanf("%f",&beg_od);
你的格式写粗了!
你的格式写粗了!
#3
++
#4
++
#5
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
#6
要多看书啊,你这个有些粗心啊,应该说要是写成这样,你的代码应该有警告啊,做程序首先不但要该对所有的错误,并且要改所有的警告啊。加油啊!书中自有黄金屋啊。
#7
#1
scanf("
%f",
&beg_od);
scanf(" %f", &end_od);
scanf(" %f", &end_od);
#2
scanf("%f",&beg_od);
你的格式写粗了!
你的格式写粗了!
#3
++
#4
++
#5
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。
#6
要多看书啊,你这个有些粗心啊,应该说要是写成这样,你的代码应该有警告啊,做程序首先不但要该对所有的错误,并且要改所有的警告啊。加油啊!书中自有黄金屋啊。