C语言| 三个整数从小到大排序

【分析思路】

三个整数从小到大排序

这个程序的算法是:

先把第一个数num1跟它后面所有的数相比较,找出最小的,通过中间变量temp交换,赋给num1;

接着中间值num2和它后面所有的数相比较,找出第二小的,然后赋给num2

......以此类推,直到比完了所有的数。

【代码】

#include <stdio.h>

int main(void)

{

int num1, num2, num3, temp;

printf("请输入三个整数:");

scanf("%d %d %d", &num1, &num2, &num3);

//num1是最小值,num2是中间值,num3是最大值

//如果num1比num2大,那么交换num1, num2;

if(num1 > num2)

{

//交换两个数,利用temp过渡

temp = num1;

num1 = num2;

num2 = temp;

}

//如果num1比num3大,那么互换num1, num3

if(num1 > num3)

{

temp = num1;

num1 = num3;

num3 = temp;

}

//如果num2比num3大,那么互换num2,num3

if(num2 > num3)

{

temp = num2;

num2 = num3;

num3 = temp;

}

printf("这三个整数从小到大排序为:num1 = %d, num2 = %d, num3 = %d\n", num1, num2, num3);

return 0;

}

/*

在VC++6.0输出的结果是


请输入三个整数:45 33 66

这三个整数从小到大排序为:num1 = 33, num2 = 45, num3 = 66


请输入三个整数:88 99 33

这三个整数从小到大排序为:num1 = 33, num2 = 88, num3 = 99


请输入三个整数:33 88 22

这三个整数从小到大排序为:num1 = 22, num2 = 33, num3 = 88

*/

相关推荐
m0_73457176几秒前
深入理解C++ 析构函数<二>析构顺序
开发语言·c++
T1mzhou10 分钟前
ARM64 Linux 6.10 内核驱动(14):drivers/base/platform.c:板级设备主战场
linux·c语言·开发语言·arm开发
小孩玩什么10 分钟前
深入理解字符串匹配算法:BF算法,KMP算法
java·c语言·开发语言·数据结构·c++·算法
clz131452121 分钟前
设备反欺诈的四大支柱:从设备指纹到关联图谱
开发语言·php
clear sky .42 分钟前
内存8字节对齐是什么?
c语言·stm32·嵌入式硬件
无忧.芙桃1 小时前
C++内存管理
c语言·开发语言·c++·青少年编程
Patrick在香港1 小时前
Python 分析香港 AQHI 归档 1644 天:同一天的空气,早上 8 点报 3,下午 5 点报 10
开发语言·python·数据分析·api·restful·数据可视化·开放数据
晴天161 小时前
JavaScript 与 Java 垃圾回收机制对比
java·开发语言·javascript
金金计较.1 小时前
Go语言-2
开发语言·算法·golang
3Q工具箱 - BraggTroy1 小时前
Python + PyInstaller 实战:从零打造 10 个 Windows 桌面小工具(附全部踩坑记录与核心代码)
开发语言·windows·python