例题:用冒泡排序法实现对10个数字由高到低排序
int main(){
int i,j,k,math[N];
printf("请输入10个数字\n");
for(i=0;i<N;i++){
//此处循环获取输入
scanf("%d",&math[i]);
}
for(j=0;j<N-1;j++){
//外循环控制比较的轮数
for(i=0;i<N-1-j;i++){
//内循环控制比较的次数
if(math[i]>math[i+1]){
k=math[i+1];
math[i+1]=math[i];
math[i]=k;
}
}
}
printf("数字排序由小到大为:\n");
for(i=0;i<N;i++){
//此处循环实现输出
printf("%d\n",math[i]);
}
}
1. 冒泡排序法的原理
第一轮:让两个相邻的数字进行比较,数值较大的后移,依次和整组数值比较得出最大值。
第二轮:同样让两个相邻的数字比较,得出第二大数字。
。。。
第N轮:排序完毕。
注意:外循环控制比较轮数
内循环控制比较次数