题目要求
将3个数按从小到大的顺序输出。
算数分析:
只需要将两个数两两比较,然后将小的写在前面,大的数写在后面。
所以我们应该创建一个转换变量,swap(int i,int j)将里面的数从小到大排序。
核心代码如下:
void swap(int &i,int &j)
{
i=i^j;
j=i^j;
i=i^j;
}
全部代码如下:
#include<stdio.h>
#include<stdlib.h>
void swap(int &i,int &j)
{
i=i^j;
j=i^j;
i=i^j;
}
int main()
{
int a,b,c;
printf("请输入a,b,c三个数字:\n");
scanf("%d %d %d",&a,&b,&c);
if(a>b)
swap(a,b);
if(a>c)
swap(a,c);
if(b>c)
swap(b,c);
printf("a,b,c三个数的从小到大顺序依次是:\n%d < %d < %d\n",a,b,c);
system("pause");
return 0;
}
展示一下运行结果: