前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >题解 ~ 输出三个数中的最大值 ~ C++ 做法

题解 ~ 输出三个数中的最大值 ~ C++ 做法

作者头像
伪君子
发布2018-07-12 11:27:28
5.7K0
发布2018-07-12 11:27:28
举报
文章被收录于专栏:伪君子的梦呓

题目:

输入 a、b、c 三个值,输出其中最大值。

样例输入:

10 20 30

样例输出:

30

原题链接:输出 3 个数中的最大值 (点击阅读原文)

http://www.dotcpp.com/oj/problem1002.html

解题思路:

说实在话,这一题有很多方法可以解决。如果用 C 来实现,一般都是使用 if 来判断,说白了就是用两个 if else。

直接给出部分代码

代码语言:javascript
复制
    if (a > b)  //判断 a,b 哪个大,把大的数赋值给 x1
        x1 = a;
    else 
        x1 = b;
    if (x1 > c) //判断 x1,c 哪个大
        printf("%d", x1);  //如果是 x1 大,输出 x1
    else
        printf("%d", c);  //如果是 c 大,输出 c

如果用 C++ 来实现,那就有简单一点的做法, 还是先给出部分代码,这里涉及到 STL 算法,max 这个算法就是用来返回最大值的。

代码语言:javascript
复制
int x1 = max(a, b);
int x2 = max(x1, c);
cout << x2 << endl;

http://www.cplusplus.com/reference/algorithm/

参考代码:

先给 C 的代码

代码语言:javascript
复制
#include <stdio.h>
int main()
{
    int a, b, c,x1;
    scanf("%d%d%d",&a,&b,&c);
    if (a > b)  // 判断 a,b 哪个大,把大的数赋值给 x1
        x1 = a;
    else 
        x1 = b;
    if (x1 > c) // 判断 x1,c 哪个大
        printf("%d", x1);  // 如果是 x1 大,输出 x1
    else
        printf("%d", c);  // 如果是 c 大,输出 c
    return 0;
}

再给 C++ 的代码

代码语言:javascript
复制
#include<iostream>
#include <algorithm>
using namespace std;
int main()
{
    int a, b, c;
    cin >> a >> b >> c;
    int x1 = max(a, b);  // 把 a,b 中大的值赋给 x1
    int x2 = max(x1, c);  // 把 x1,c 中大的值赋给 x2
    cout << x2 << endl;  // 输出最大值
    return 0;
}

本地测试结果如下图:

题图:Photo by Dmitri Popov on Unsplash

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-06-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 伪君子的梦呓 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目:
  • 参考代码:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档