这个C程序有助于找到给定数字中的最大数字,但它不起作用。我已经突出了问题所在的界限。
#include<stdio.h>
int main(){
int n,num,i;
int big;
printf("Enter the values of n: ");
scanf("%d",&n);
printf("Enter %d Numbers :",n);
scanf("%d",&big);
for(i=2;i<=n;i++){
scanf("%d",&num); //here is the problem..
//what it is reading as `num` without asking me to entering any thing ?
if(big<num)
big=num;
}
printf("Largest number is: %d",big);
return 0;
}
答案 0 :(得分:0)
如果您需要程序以用户可读的方式请求输入,您可以输入
printf("Enter number #%d:",i+1);
在使用scanf的那一行之前。
无论如何,如果删除所有printf
,程序将完成相同的工作(因此,不打印任何提示,只等待用户输入)。它们只是为了方便用户。
答案 1 :(得分:0)
您的第一个scanf命令仅从stdin中读取您的第一个数字。第14行的那个读取剩下的,每次循环一次。然后将每一个与变量&#34; big&#34;进行比较,并在必要时替换它。