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

*/

相关推荐
不会算法的笨小孩4 小时前
异常的使用以及会出现的问题
开发语言·c++·c++11·异常
Hhy_11077 小时前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
starzy19907 小时前
深入理解Scala函数定义:从方法到函数的类型跨越
开发语言·scala
starzy19907 小时前
深入理解Scala递归函数:从栈溢出到尾调用优化
开发语言·scala
三*一7 小时前
Mapbox‑GL JS 多边形折点编辑工具:实现原理、功能拆解与踩坑总结
开发语言·javascript·ecmascript
YSL0701247 小时前
C++基础
开发语言·c++
若亦_7 小时前
Java中关于this的三种用法
java·开发语言·intellij-idea
2601_968793148 小时前
Python Requests 轻量自动化:无需浏览器,实现真人级账号浏览模拟
开发语言·python·自动化
eggwyw8 小时前
关于C++为什么不加入垃圾回收机制解析
开发语言·c++
曦樂~18 小时前
Cpp面筋
c语言·c++