回 帖 发 新 帖 刷新版面

主题:我是新手。高手进来帮忙看下,随你输入几个数字,然后输出最大的。

这个程序怎么改???
#include <stdio.h>
void main()
{
    int max,m;
    max=0;
        for(;;)
        {
            printf("请输入数字\n");
            scanf("%d",&m);
            if (max<m) max=m;
            if (m==0) break;
            printf("max=%d\n",max);
        }
}

回复列表 (共5个回复)

沙发

只要把打印换到循环外面就好了

板凳


不行啊。。。。

3 楼

疏忽了,是因为break不能写在判断里,改用while就可以了
#include <stdio.h>
int main()
{
    int max=0,m=1;
    while(m!=0)
        {
            printf("请输入数字\n");
            scanf("%d",&m);
            if (max<m) max=m;

           }
    printf("max=%d\n",max);
    return 0;
}
这样不行?

4 楼

[color=FF0000]以下代码能够实现你所要求的,输入个数自己确定,可以参考一下:[/color]
#include <stdio.h>
#define N 10   /*定义一个常量,控制数组元素个数*/
main()
{
 int i,a[N],max;/*定义一个数组,元素个数由N控制*/
 for(i=0;i<N;i++)/*控制输入的个数*/
  scanf("%d",&a[i]);
  max=a[0]; /*假定最大值开始为数组第一个元素a[0]*/
 for(i=1;i<N;i++)
  {if(a[i]>max) /*输入元素与最大值进行比较*/
   max=a[i];    /*把大值赋给max*/
  }
  printf("%d",max);
  getch();
}

5 楼


这道题没有指明什么条件为输入结束,所以导致错误,
我也是新手,不会解决

我来回复

您尚未登录,请登录后再回复。点此登录或注册