注册 登录
编程论坛 C语言论坛

新手求助 求3个数的最大值输出

乌拉达 发布于 2021-11-08 22:47, 1738 次点击
#include<stdio.h>
int main()   
{
    float a,b,c,max;
    printf( "Please input:a,b,c\n");
    scanf("%f%f%f",&a,&b,&c);
    max=a;
    if(max<b)b=max;
    if(max<c)max=c;
    printf("%f\n",max);
    return 0;
7 回复
#2
白白白小白2021-11-09 00:11
#include<stdio.h>
int main()
{
  float a,b,c;
  scanf("%f %f %f",&a,&b,&c);
  double max=a;
  if(b>c){
      if(b>a){
          max=b;
        }else{
            max=a;
        }
    }else{
        if(c>a){
            max=c;
        }
    }
    printf("the max is %f\n",max);
    return 0;
}
#3
D22845814702021-11-09 08:27
/*三个数的最大数*/
#include <stdio.h>
int main()
{
    int x, n = 3, max = 0;
    while (n--)
    {
        scanf("%d", &x);
        if (x > max) max = x;
    }
    printf("max = %d\n", max);
    return 0;
}
#4
乌拉达2021-11-09 15:58
我想问我的这个哪里错了
#5
lin51616782021-11-10 08:56
   max=a;
    if(max<b)b=max;
    if(max<c)max=c;
#6
diycai2021-11-10 11:44
void main(){int a,b,c;while(scanf("%d%d%d",&a,&b,&c))printf("%d\n",a>b&&a>c?a:b>a&&b>c?b:c);}
#7
Hhu_TF2021-11-10 19:50
回复 楼主 乌拉达
楼主,你的代码第八行错了。
你的是if(max<b)b=max;意思是max赋值给b,但正确的应该是b赋值给max。
所以第八行改为if(max<b)max=b;就可以了。
#8
Hhu_TF2021-11-10 19:51
回复 4楼 乌拉达
上面回答
1