一道简单C++ 题,在线等。

来源:百度知道 编辑:UC知道 时间:2024/05/05 08:44:48
void intSort(int& num1, int& num2, int& num3, int& num4)
使用IntOrder 和 IntSwap,让这四个数从小到大排列。
(例如 x1 = 6, x2 = 3, x3 = -5 and x4 = 1, intSwap(x1, x2, x3, x4) ,最后得到x1 = -5, x2 = 1, x3 = 3 and x4 = 6.)

void swap(int& x1, int& x2, int& x3, int& x4)
{
int a[4] = {x1,x2,x3,x4};
int min = 0;
int swapMem = 0;

for(int i = 0; i < 4; i++)
{
min = i;
for(int j = i; j < 4; j++)
{
if(a[j] < a[min])
{
min = j;
}
}

if(i != min)
{
swapMem = a[i];
a[i] = a[min];
a[min] = swapMem;
}
}

x1 = a[0];
x2 = a[1];
x3 = a[2];
x4 = a[3];
}

#include<iostream>
using namespace std;
void intSort(int& , int& , int& , int& );
void intOrder(int& , int& , int&);
void intSwap(int&,int&);
int main()
{
int x1,x2,x3,x4;
cin>>x1>>x2>>x3>>x4;
intSort(x1, x2, x3, x4);
cout<<x1<<' '<<x2<<' '<<x3<<' '<<x4<<endl;

return 0;
}

void intSort(