iT邦幫忙

0

能請問一下我的程式有哪個部分寫錯嗎? 按 Enter後跑出的結果都是0 謝謝

  • 分享至 

  • xImage

#include <stdio.h>

int main(void) {

double x,y,z,pay,rate,loan;



scanf("%.2f\n%.2f\n%.2f", &loan, &rate, &pay);


x=loan-pay+rate/12*0.01*loan;
y=x-pay+rate/12*0.01*x;
z=y-pay+rate/12*0.01*y;

printf("%.2f\n", x);
printf("%.2f\n", y);
printf("%.2f", z);

return 0;

}

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

1
海綿寶寶
iT邦大神 1 級 ‧ 2020-09-29 00:21:32
最佳解答
scanf("%.2f\n%.2f\n%.2f", &loan, &rate, &pay);

改成

scanf("%lf\n%lf\n%lf", &loan, &rate, &pay);

試試看

另外,點這裡是我這次鐵人賽唯一的一篇文章,喜歡的話左上角點 Like

看更多先前的回應...收起先前的回應...

可以了,謝謝你
我能問一下為甚麼原本會錯嗎?

*.*這個是限定輸出時的小數點,不能在scanf用。

因為 printf 可以用 .2f 指定小數點位數
scanf 沒有

謝謝

我要發表回答

立即登入回答