写一函数,用“冒泡法”对输入的10个数字由小到大排列顺序,并输出。\n\n要求:(1)排序的函数名为sort。\n\n(2)排序前后的输入输出都应在主函数中完成。\n\n(3)使用数组作为函数参数。
时间: 2023-03-16 16:47:17 浏览: 112
以下是用冒泡法对输入的10个数字由小到大排列顺序的函数sort的代码:
```c++
void sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
```
其中,arr是输入的数组,n是数组的长度。函数中使用了两层循环,外层循环控制排序的轮数,内层循环控制每一轮中相邻两个元素的比较和交换。如果前一个元素比后一个元素大,则交换它们的位置。最终,数组中的元素就会按照从小到大的顺序排列。
在主函数中,可以先读入10个数字,然后调用sort函数进行排序,最后输出排序后的结果。以下是完整的代码:
```c++
#include <iostream>
using namespace std;
void sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int arr[10];
cout << "请输入10个数字:" << endl;
for (int i = 0; i < 10; i++) {
cin >> arr[i];
}
sort(arr, 10);
cout << "排序后的结果为:" << endl;
for (int i = 0; i < 10; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
阅读全文