检查以下程序#include<stdio.h> int main() {double term; double rate,total,principal; scanf("%f%f",&term,&principal); switch(term) { case 0.5:rate=0.0225;break; case 1:rate=0.0275;break; case 2:rate=0.0335;break; case 3:rate=0.04;break; case 5:rate=0.0475;break; default:break; return 0;} total =principal*(1+rate*term); printf("%.2f",total); return 0; }
时间: 2024-03-06 18:49:01 浏览: 121
c语言函数库-第一章(C标准库)
这段程序可能会出现错误,因为在输入参数的时候使用了错误的格式化符号。程序中使用了%f来读取输入,但是输入的参数是double类型,应该使用%lf来读取。因此,程序应该修改为:
```
#include<stdio.h>
int main() {
double term, principal, rate, total;
scanf("%lf%lf", &term, &principal);
switch(term) {
case 0.5: rate = 0.0225; break;
case 1: rate = 0.0275; break;
case 2: rate = 0.0335; break;
case 3: rate = 0.04; break;
case 5: rate = 0.0475; break;
default: break;
}
total = principal * (1 + rate * term);
printf("%.2f", total);
return 0;
}
```
这样修改后,程序就可以正确地读取输入参数并计算出结果了。
阅读全文