#include <stdio.h>
#define F(x) 32 + (x*9)/5
int main(void)
{
int F,C;
printf ("Enter temperature in celsius=");
scanf ("%d",&C);
F(C);
printf (" %d fahrenheit = %d celsius\n", F, C);
return 0;
}
當我輸入10攝氏度,談到了一些爲:邏輯錯誤 - 轉換華氏攝氏度到
1798680630 fahrenheit = 10 celsius
難道我錯寫公式?我似乎無法弄清楚這個錯誤。 只是一個初學者,通過我的教程。謝謝!
你忘了添加一個'F ='在'F(C)',因爲要分配值前你的變量'F'。 http://ideone.com/Xc6c3x – mch
[爲什麼讓人們困惑?](https://blog.codinghorror.com/coding-for-violent-psychopaths/) –
首先,鑑於這些是整數,你可能會失去分割時太多的信息。其次,你不應該(不能)有一個變量F和一個宏F,它肯定會有錯誤。請參閱下面的答案,瞭解您的代碼爲什麼不起作用 – neoaggelos