为什么我的printf返回不正确的值?

时间:2013-09-03 00:14:29

标签: c

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

#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 . . .

2 个答案:

答案 0 :(得分:10)

printf不期望指向scanf等变量的指针,它会预期数据。

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

答案 1 :(得分:4)

只需带上&amp;离开printf线。

变化:

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

要:

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