C语言题目:输入若干整数,以零作为结束标志,输出最大值

如题所述

思路:定义一个变量max,接着键盘先输入一个数赋值给max,接着while(n&&scanf("%d",&n)&&n),直到输入零为止,依次判断输入的数和max的大小,确保max始终是最大值,最后输出max。

#include<stdio.h>
int main()
{
int n,max;
scanf("%d",&n);
max=n;
while(n&&scanf("%d",&n)&&n){
if(n>max)
max=n;
}
printf("%d\n",max);
return 0;
}
/*
运行结果: 
5 12 -3 6 78 23 6 0
78
*/
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-04-21
#include<stdio.h>
int main()
{
int n,maxval,i=0;
while(scanf("%d",&n),n)
{
if(i==0)  {maxval = n;i=1;}
else
{
if(maxval<n) maxval = n;
}
}
printf("%d\n",maxval);
return 0;
}

第2个回答  2015-04-21
#include <stdio.h>
main()
{
int x,m;
scanf("%d",&x);
m=x;
while(1){
scanf("%d",&x);
if (x==0)break;
if (x>m)m=x;
}
printf("%d\n",m);
return 0;
}本回答被网友采纳
第3个回答  2015-04-21
#include "stdio.h"
int main()
{
int max,n;
scanf("%d",&n);
max=n;
while(n!=0)
{
scanf("%d",&n);
max=max>n?max:n;
}
printf("%d",max);
return 0;
}本回答被提问者采纳
第4个回答  2015-04-21
#include <stdio.h>
void main ()
{
int max (int x,int y;
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("The largest number is:%d\n",c);
}
int max (int x,int y)
{
int q;
q=x;
if (q<y)
q=y;
return (q);
}