李心语


私信TA

用户名:tzu210341117

访问量:32906

签 名:

等  级
排  名 282
经  验 5555
参赛次数 0
文章发表 4
年  龄 0
在职情况 学生
学  校 泰州学院
专  业

  自我简介:

解题思路1:

        如果说要解这道题,还是很简单粗暴的:

        本题的三个数比大小的要求就是,比另外两个数都大,即a>b和a>c同时满足。同时满足就是和:&&

if (a>b&&a>c) printf("%d",a);

        所以,写三条条件判断就可以了。

参考代码1:

#include<stdio.h>
int main()
{
  int a,b,c;
  scanf("%d%d%d",&a,&b,&c);
  if (a>b&&a>c) printf("%d",a);
  if (b>a&&b>c) printf("%d",b);
  if (c>a&&c>b) printf("%d",c);
  return 0;
}


解题思路2:

        因为只要求最大值,不需要排序,所以,先两个数比较,第三个数只要跟前两个数中大的比,谁大就谁最大。

参考代码2:

#include<stdio.h>
int main()
{
  int a,b,c;
  scanf("%d%d%d",&a,&b,&c);
  if (a>b) 
  {
      if (c>a) printf("%d",c);
      if (c<a) printf("%d",a);
  }
  if (b>a)
  {
    if (c>b) printf("%d",c);
    if (c<b) printf("%d",b);
  }
   return 0;
}


解题思路3:

        在2的思路上,改代码,就是擂台法,定义变量的时候多定义一个d,谁大谁是d:

参考代码3:

#include<stdio.h>
int main()
{
  int a,b,c,d;
  scanf("%d%d%d",&a,&b,&c);
  if(a>b) d=a;
  else d=b;
  if(c>d) d=c;
  printf("%d",d);
  return 0;
}



 

0.0分

70 人评分

  评论区

我感觉不是很严谨啊,假如出现90 90 60这种情况呢,亦或者 60 60 60 这种情况呢,上面的这个程序只能比较三个不同大小的情况吧,是我理解有问题嘛,我想的是即便是三个数,只要有两个数不同,都能比较,就好像90 90 60,90就是这组数的最大值,60 60 60,三个都相同,就不能比较大小。
2024-04-10 15:41:56
#include<stdio.h>
int main()
{
	int a, b, c;//定义三个变量
	scanf_s("%d %d %d", &a, &b, &c); //输入三个随机整数
	int max;
	max = a > b ? a: b;
	max = max > c ? max : c;
	printf("最大值为%d", max);

	return 0;

	}
为啥这样不行啊
2024-02-29 16:34:27
#include<stdio.h>
int main()
{
    int a,b,c,max;
    scanf("%d%d%d",&a,&b,&c);
    max=t(a,b);
    max=t(c,max);
    printf("max=%d",max);
    return 0;
}
int t(int a,int b)
{
    int max;
    if(a<b) max=b;
    else max=a;
    return max;
     
}
这种方法可以吗
2024-02-27 22:47:09
#include<stdio.h>
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    a>b?a:a=b;
    a>c?a:a=c;
    printf("%d",a);
    return 0;
}
这哪里错了
2024-01-07 20:11:44
#include<stdio.h>
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    if(a>b&&a>c)
    {
        printf("%d",a);
    }
    else if(b>a&&b>c)
    {
        printf("%d",b);
    }
    else
    {
        printf("%d",c);
    }
	return 0;
}
2023-12-29 11:21:25
借楼,用逻辑运算符求三个数最大值。代码在vs上能用,不知道为什么在c语言网自带的码日运行不了。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
    int a,b,c,d;
    scanf("%d %d %d",&a,&b,&c);
    a<=b?d=b:d=a;
    d<=c?d=c:d=d;
    printf("%d",d);
    return 0;
}
2023-12-17 01:27:28
请问为什么显示答案错误
#include<stdio.h>
int main()
{
    int max,a,b,c;
    scanf("%d %d %d", &a,&b,&c);
    if(a>b){
        max=a;
    } else if (b>c) {max=b;
    } else {max=c;
    }
    
    printf("%d", max);
	return 0;
}
2023-10-30 08:48:52
为什么%d之间不用,隔开。我看有的题错误就是因为没有隔开啊
2023-09-29 19:12:09