#include<stdio.h>
void main()
{
int a[10]; //定义一个数组既它的元素为10
int i,j,temp; //定义3个变量
printf("输入10个整数:
a");
for(i=0;i<10;i++)
scanf("%d",&a[i]); //依次输入10个整数
for(i=0;i<9;i++) //进行9轮排序
{
for(j=0;j<9-i;j++) //每轮进行9-i次交换
if(a[j]>a[j+1]) //(>升序,<降序)
{
temp=a[j];
a[j]=a[j+1]; //大的沉底,小的上浮
a[j+1]=temp;
}
}
printf("排序结果:");
for(i=0;i<10;i++) //依次输出排序结果
printf("%d ",a[i]);
}
/*
冒泡排序(假设升序):外层循环的循环次数和:就是求每一次最大值的次数之和(把每一次求最大值当作一次次数);
内层循环的循环次数和:就是在每一次求最大值中两两进行比较大小的次数和
eg:假设求6个数进行升序排大小
外层循环的循环次数 内层循环的循环次数
(共6-1次)
求最大值: 第一次: 5次
第二次: 4
第三次: 3
第四次: 2
第五次: 1
*/