#include <stdio.h>
/**
* 主函数:通过用户输入创建一个数组,并将其进行排序后打印。
*/
int main(){
// 定义一个排序函数,接受一个整型数组和数组长度作为参数
void sort (int array[],int n);
int a[10],i; // 定义一个10个元素的整型数组a和一个整型变量i
printf("请输入数组:\n");
// 通过循环从用户输入读取数组元素
for(i=0;i<10;i++)
scanf("%d",&a[i]);
// 调用排序函数对数组进行排序
sort(a,10);
printf("排序后的数组为:\n");
// 循环打印排序后的数组元素
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
/**
* 排序函数:对整型数组进行冒泡排序。
* @param array 要排序的整型数组
* @param n 数组的长度
*/
void sort(int array[],int n){
int i,j,k,t;
// 外层循环控制排序轮数
for(i=0;i<n-1;i++){
k=i; // 记录当前最小值的索引
// 内层循环比较并交换元素
for(j=i+1;j<n;j++)
if(array[j]<array[k]){
k=j; // 更新最小值索引
t=array[k]; // 交换最小值
array[k]=array[i];
array[i]=t;
}
}
}