使用C++完成此程序:定义长度为3的整型数组,采用函数调用实现按照从大到小的顺序排序。在主函数中输出排序前和排序后的数组。按以下方式实现:实参为数组名,形参为指针变量
时间: 2024-03-20 18:43:46 浏览: 64
好的,以下是代码实现:
```cpp
#include <iostream>
using namespace std;
void swap(int* a, int* b)
{
int temp = *a;
*a = *b;
*b = temp;
}
void sort(int* arr)
{
if (arr[0] < arr[1]) {
swap(&arr[0], &arr[1]);
}
if (arr[0] < arr[2]) {
swap(&arr[0], &arr[2]);
}
if (arr[1] < arr[2]) {
swap(&arr[1], &arr[2]);
}
}
int main()
{
int arr[3];
cout << "请输入三个整数: ";
cin >> arr[0] >> arr[1] >> arr[2];
cout << "排序前的数组为: ";
for (int i = 0; i < 3; i++) {
cout << arr[i] << " ";
}
cout << endl;
sort(arr);
cout << "排序后的数组为: ";
for (int i = 0; i < 3; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
首先,定义了一个 `swap` 函数用于交换两个整数的值。接着,定义了一个 `sort` 函数,采用形参为指针变量的方式,实现对长度为3的整型数组按从大到小顺序排序。在 `sort` 函数中,使用了三个 `if` 语句,分别比较三个数的大小,并调用 `swap` 函数实现交换。最后,在 `main` 函数中,定义了一个长度为3的整型数组,从键盘上输入三个整数,并调用 `sort` 函数进行排序,输出排序前和排序后的数组。
阅读全文