0
我写了下面的代码:迭代程序
#include <stdio.h>
/* max_number.c: outputs the largest number of five numbers entered */
void main(void) {
int i, num, max;
for (i = 1; i <= 5; i++) {
printf("Enter a number: ");
scanf("%d", &num);
if (num >= max)
max = num;
}
printf("The maximum number is %d\n", max);
}
当我与任何类型的数据运行程序我不断地得到“最大数量为14”。有人可以请我指出我做错了什么吗?谢谢!
没错。 14必须来自某个确定性的地方,但这是未初始化的价值。 – Holly 2014-09-20 20:43:17
有趣。为什么不将max初始化为一个值会导致程序给我这种输出?谢谢! – user3727648 2014-09-20 20:46:06
@ user3727648未初始化的变量仍具有一定的价值。如果'max'在你的情况下恰好有值'14',我不会感到惊讶。如果你输入的内容少于或等于'14',那么这是最终结果。 – AlexD 2014-09-20 20:47:22