解题思路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.0分

59 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 39 条评论

韩照普爱信息 2年前 回复TA
需要大于等于吧?
amdying 2年前 回复TA
@thiszwiner 赞,这个在相等的时候也能输出,楼主这个有相等的两数就输出空白了
渭北春树 2年前 回复TA
楼主好厉害
thiszwiner 2年前 回复TA
int max = a;
	if(max < b) max = b;
	if(max < c) max = c;
	printf("%d\n", max);
lu89110308 2年前 回复TA
@一个人也要好好吃饭呀 可,[]改成(),从新定义一个函数引用就行了
一个人也要好好吃饭呀 2年前 回复TA
为什么在这不能直接用语句max[a,max[b,c]]
poetrose 2年前 回复TA
@陈鸿志 是不是没加#define _CRT_SECURE_NO_WARNINGS
wdgwthw 2年前 回复TA
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    int a[205];
    for (int i = 1;i <= 3;i ++) cin >> a[i];
    sort(a+1,a+4);
    cout << a[3];
    return 0;
}
个人认为这个比较简便
陈鸿志 2年前 回复TA
为什么Visual Studio 2019不行