代码如下:
望采纳
#include <stdio.h>
/*
@ arr 数组名
@ n 数组元素个数
*/
int ArrSort(int arr[], int n)
{
int flag = 0;
for(int i=0; i<n-1; i++){
flag = 0;
for(int j=0;j<n-i-1;j++){
if(arr[j] < arr[j+1]){
++ flag; //进行了位置交换,flag加一
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
if(0 == flag) //如果没有进行位置交换,则代表以及排序完毕,退出循环
break;
}
return 0;
}
/*
@ arr 数组名
@ n 数组元素个数
*/
void input_number(int arr[],int n)
{
for(int i=0; i<n; i++)
scanf("%d",&arr[i]);
}
/*
@ arr 数组名
@ n 你要输出的元素个数
*/
void printf_number(int arr[], int n)
{
for(int i=0; i<n; i++)
printf("%d ",arr[i]);
}
int main()
{
int a[30] = {0};
input_number(a, 30);
ArrSort(a, 30);
printf_number(a, 10);
return 0;
}