定义函数void sort(int a[],int n),用选择法对数组a中的元素排序。自己定义main函数,并在其中调用sort函数。
时间: 2024-05-11 10:17:34 浏览: 26
好的,这是一道编程问题。
以下是参考代码:
```
#include <stdio.h>
void sort(int a[], int n) {
int i, j, min, temp;
for (i = 0; i < n - 1; i++) {
min = i;
for (j = i + 1; j < n; j++) {
if (a[j] < a[min]) {
min = j;
}
}
if (min != i) {
temp = a[i];
a[i] = a[min];
a[min] = temp;
}
}
}
int main() {
int a[10] = {9, 2, 5, 1, 7, 4, 8, 3, 6, 0};
int n = 10;
sort(a, n);
printf("排序结果:\n");
for (int i = 0; i < n; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
以上代码使用选择排序法对一个长度为10的整数数组进行排序,输出排序结果。如果您需要对其他数据进行排序,可以修改数组大小以及数组元素的值。
相关问题
定义函数void sort(int a[],int n),用选择法对数组中a中的元素排序。自己定义main函数,并在其中调用sort函数
可以的,我完全理解您的要求。为了回答您的问题,我先向您介绍一下选择排序法。
选择排序法,是一种简单直观的排序方法,大致思想是:每次从待排序元素中选出最小(或最大)的元素,放入已排好序的序列的末尾,直到全部元素排序完成。
下面是函数sort的代码实现:
```
#include<bits/stdc++.h>
using namespace std;
void swap(int &x,int &y){ //定义一个用于交换两个数值的函数
int z=x;
x=y;
y=z;
}
void sort(int a[],int n){
for(int i=0;i<n-1;i++){
int min=i;
for(int j=i+1;j<n;j++){
if(a[j]<a[min]){
min=j;
}
}
if(min!=i){
swap(a[min],a[i]); //交换a[min]和a[i]的值
}
}
}
int main(){
int n;
cout<<"请输入数组的长度:";
cin>>n;
int a[n];
cout<<"请输入 "<<n<<" 个元素:";
for(int i=0;i<n;i++){
cin>>a[i];
}
sort(a,n); //调用sort函数,将a数组中的元素进行排序
cout<<"排序后的结果为:";
for(int i=0;i<n;i++){
cout<<a[i]<<" ";
}
cout<<endl;
return 0;
}
```
在main函数中,我们先输入了数组的长度n和n个元素,然后调用了sort函数将a数组中的元素进行排序,并最后输出排序后的结果。
希望我对您的问题解答清楚,如还有疑问可以继续提出哦。
定义函数void sort(int a[],int n),用选择法对数组中a中的元素排序。定义main函数,并在其中调用sort函数
好的,你想让我展示一个用选择排序算法对数组进行排序的程序,是吗?
下面是示例代码:
```
#include <stdio.h>
void sort(int a[], int n) {
int i, j;
int minIndex, tmp;
for (i = 0; i < n - 1; i++) {
minIndex = i;
for (j = i + 1; j < n; j++) {
if (a[j] < a[minIndex]) {
minIndex = j;
}
}
if (minIndex != i) {
tmp = a[i];
a[i] = a[minIndex];
a[minIndex] = tmp;
}
}
}
int main() {
int a[] = {4, 2, 1, 5, 3};
int n = sizeof(a) / sizeof(a[0]);
int i;
sort(a, n);
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
这个程序定义了一个名为 `sort` 的函数,它使用选择排序算法对传入的整型数组进行排序。然后在 `main` 函数中,它创建了一个包含一些随机元素的整型数组,并调用 `sort` 函数将其排序。最后,它遍历整个数组并将其元素打印到控制台上。
如果你有任何关于此代码的问题,请随时问我。