-4

为什么这个基本代码返回不正确的值?我对编程比较陌生,我不明白为什么这个基本功能不起作用。我有这个程序的工作版本,所以我不明白这个问题。

#include <stdio.h>
int main (void)
{

int fahrenheit;

printf("Enter the temperature in degrees fahrenheit:\n");
scanf("%d", &fahrenheit);
printf("\n%d \n", &fahrenheit);
system("PAUSE");

return 0;

}

输出:

Enter the temperature in degrees fahrenheit:
53

2686788
Press any key to continue . . .
4

2 回答 2

10

printf不期望指向您的变量的指针,例如scanf,它期望数据。

尝试printf("\n%d \n", fahrenheit);

于 2013-09-03T00:15:55.227 回答
4

只需从 printf 行中取出 & 即可。

改变:

printf("\n%d \n", &fahrenheit);

至:

printf("\n%d \n", fahrenheit);
于 2013-09-03T00:16:45.027 回答