信息学奥赛一本通 2053:【例3.3】三个数
【题目链接】
ybt 2053:【例3.3】三个数
【题目考点】
1. if语句嵌套
2. if…else if语句
【解题思路】
if语句嵌套
如果a>=b,那么再判断b,c的大小:- 如果b>=c,那么a>=b>=c。
- 如果c > b,那么判断a,c的大小:
- 如果a更大,那么a>=c>=b
- 否则c>=a>=b。
如果b > a,那么判断a,c的大小:
- 如果a >= c,那么b>=a>=c。
- 如果c > a,那么判断b,c的大小:
- 如果b更大,那么b>=c>=a
- 否则,c>=b>=a
if…else if语句配合逻辑表达式
如果a>=b>=c,那么其逻辑表达式为:a >= b && b >= c
如果a>=c>=b,那么其逻辑表达式为:a >= c && c >= b
如果b>=a>=c,那么其逻辑表达式为:b >= a && a >= c
如果b>=c>=a,那么其逻辑表达式为:b >= c && c >= a
如果c>=a>=b,那么其逻辑表达式为:c >= a && a >= b
如果c>=b>=a,那么其逻辑表达式为:c >= b && b >= a
以上即为a,b,c所有排序对应的逻辑表达式,用if…else if语句列举所有情况,针对不同情况做输出。降序排序
可以将这3个数字输入数组,做降序排序,而后输出。本题本意只是考察if语句,并非考察排序。对3个数字就用排序算法,有些杀鸡用牛刀了,因而这里不提供排序相关方法。如果想练习排序,请自行搜索排序相关的问题。
【题解代码】
解法1:if语句嵌套
#include<bits/stdc++.h>
using namespace std;
int main()
{int a, b, c;cin >> a >> b >> c;if(a >= b){if(b >= c)cout << a << ' ' << b << ' ' << c << endl;else{if(a >= c)cout << a << ' ' << c << ' ' << b << endl;else //a < ccout << c << ' ' << a << ' ' << b << endl;}}else//a < b{if(a >= c)cout << b << ' ' << a << ' ' << c << endl;else//a < c{if(b >= c)cout << b << ' ' << c << ' ' << a << endl;else//b < ccout << c << ' ' << b << ' ' << a << endl;}}return 0;
}
解法2:if…else if语句
#include<bits/stdc++.h>
using namespace std;
int main()
{int a, b, c;cin >> a >> b >> c;if(a >= b && b >= c)cout << a << ' ' << b << ' ' << c << endl;else if(a >= c && c >= b)cout << a << ' ' << c << ' ' << b << endl;else if(b >= a && a >= c)cout << b << ' ' << a << ' ' << c << endl;else if(b >= c && c >= a)cout << a << ' ' << c << ' ' << b << endl;else if(c >= a && a >= b)cout << c << ' ' << a << ' ' << b << endl;else if(c >= b && b >= a)cout << c << ' ' << b << ' ' << a << endl;return 0;
}
信息学奥赛一本通 2053:【例3.3】三个数相关推荐
- 信息学奥赛一本通 1155:回文三位数
[题目链接] ybt 1155:回文三位数 [题目考点] 1. 回文数 2. 质数 [解题思路] 设函数判断一个数是不是回文的三位数 只要一个三位数的个位和百位相同,这个三位数就是回文的 设函数判断一 ...
- 信息学奥赛一本通(1067:整数的个数)
1067:整数的个数 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 42345 通过数: 29494 [题目描述] 给定k(1<k<100)个 ...
- 信息学奥赛一本通 1095:数1的个数 | OpenJudge NOI 1.5 40
[题目链接] ybt 1095:数1的个数 OpenJudge NOI 1.5 40:数1的个数 [题目考点] 1. 分离整数的各位数字 对于数字a,a%10可以取到其个位,a/=10(整除)可以去掉 ...
- 信息学奥赛一本通(1409:判决素数个数)
1409:判决素数个数 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 14839 通过数: 8685 [题目描述] 输入两个整数XX和YY,输出两者之间的 ...
- 信息学奥赛一本通(1046:判断一个数能否同时被3和5整除)
1046:判断一个数能否同时被3和5整除 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 60977 通过数: 39835 [题目描述] 判断一个数n 能否 ...
- 信息学奥赛一本通1095:数1的个数 AC——王曙翰
1095:数1的个数 [题目描述] 给定一个十进制正整数n(1≤n≤10000)n(1≤n≤10000),写下从11到nn的所有整数,然后数一下其中出现的数字"1"的个数. 例如当 ...
- 信息学奥赛一本通:1129:统计数字字符个数
1129:统计数字字符个数 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 65820 通过数: 35377 [题目描述] 输入一行字符,统计出其中数字字符 ...
- 信息学奥赛一本通C++语言-----2036:【例5.3】开关门
[题目描述] 宾馆里有n(2≤n≤1000)n(2≤n≤1000) 个房间,从1∼n1∼n 编了号.第一个服务员把所有的房间门都打开了,第二个服务员把所有编号是22 的倍数的房间"相反处理& ...
- 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离
首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...
最新文章
- Nginx+Keepalived+Proxy_Cache 配置高可用集群和高速缓存
- 划痕麻点检测程序_精密外观检测机设计
- 2015年12月份学习总结,前端开发工程师的知识库指引
- python类的成员函数_Python为类对象动态添加成员函数
- 【python】内存相关
- 使用fping 查看局域网中有哪些ip
- 离开小厂进大厂的第一周:我“后悔”了
- 实现 select中指定option选中触发事件
- 面试了一个6年的Java,竟然什么都不会!
- 前端:用css打造炫酷3d特效- css3d立方体
- 深度学习资料整理(深度神经网络理解)
- Tomcat9 配置HTTPS连接
- 马拉车算法(Manacher's Algorithm)
- 里氏转换,arraylist,path,file
- Pointnet网络结构与代码解读
- 英雄无敌王朝 服务器维护,魔法门之英雄无敌王朝全新护国神器玩法介绍_魔法门之英雄无敌王朝全新护国神器怎么玩_玩游戏网...
- 北京海淀区千峰计算机学校,千锋Java学院-Java培训|Java开发培训|Java工程师培训开拓者...
- Linux学习1-Vmware创建虚拟机以及Xshell连接
- python图片水印
- Vue-cli 脚手架一
热门文章
- Django源代码阅读分析-2:持久层结构分析
- 10本最火的中台与数字化转型图书,朋友圈都在传
- STM32之串口原理
- DALI调光的计算方式
- windows虚拟机_iOS 版虚拟机:在 iPhone 上运行 Windows 系统
- 按home键退出的activity可以不进入stop模式码_用了几年的iPhone,竟然不知道苹果手机还有“游戏模式”?...
- 输出以下图案菱形7行_华丽大气的手工围巾,颜值丝毫不输大牌商品,一款花式菱形围巾!...
- 新款iPad,抱回家!
- 基于SpringBoot的开源免费微信管家平台,Jeewx-Boot 1.0 版本发布
- Jeecg引领企业开发潮流,开启插件开发时代,微信企业号插件(jeecg-p3-biz-qywx)首次发布