要求:输入n个数进行排序
实现:使用冒泡排序算法,使用C语言实现
冒泡排序的基本原理:
- 比较相邻元素:从数组的开始位置,比较每对相邻的元素。如果前一个元素大于后一个元素,则交换它们。
- 重复过程:对每一对相邻元素进行相同的操作,直到没有需要交换的元素为止。这样,最大的元素会"冒泡"到数组的末尾。
- 多次遍历:重复以上过程,逐渐缩小比较的范围,直到整个数组有序。
具体代码:
cpp
#include<stdio.h>
void bubbleSort(int arr[],int n){
int i,j,temp;
for(i=0;i<n-1;i++){
for(j=0;j<n-1;j++){
if(arr[j]>arr[j+1]){
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
int main(){
int n,i;
printf("输入需要输入数的数量:");
scanf("%d",&n);
int arr[n];
printf("输入%d个数:",n);
for(i=0;i<n;i++){
scanf("%d",&arr[i]);
}
bubbleSort(arr,n);
printf("排序后的数为:");
for(i=0;i<n;i++){
printf("%d,",arr[i]);
}
return 0;
}
测试输出结果:
输出结果正确!
觉得有帮助的话点个赞吧!