#include <stdio.h>
#include <stdlib.h>
int main (void)
{
double f;
printf ("What is the temperature in Fahrenheit?\n");
scanf ("%d", &f);
double x = (f-32)*(5/9);
printf ("%d degrees Fahrenheit \n",f);
printf ("%d degrees Celsius",x);
system("PAUSE");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
f似乎是变量f的打印地址而不是值,它可能是一个语法错误.
%d应为%f:
printf ("%f degrees Farenheit \n",f);
printf ("%f degrees Celsius",x);
Run Code Online (Sandbox Code Playgroud)
编辑:正如乔纳森所说,你需要改变:
double x = (f-32)*(5/9);
Run Code Online (Sandbox Code Playgroud)
至
double x = (f-32)*(5.0/9);
Run Code Online (Sandbox Code Playgroud)
在C中,整数除法(除数和除数都是整数类型的除法)截断,因此5/9总是0.