冒泡排序

问题:对N个整数,由键盘输入,进行升序排序。

设计:首先定义一个数组,可以盛放n个元素,利用for循环输入数组中每个元素的值,定义for循环j=1,j<=n-1,j++经过举例,需要n-1个轮回,j的for循环中嵌套i的for循环,i=0;i<n-j,i++经过举例,每次比较的次数为n-j次,因为j次轮回时,最后的j个元素就已经是按顺序排好的升序排列。

#include<stdio.h>
#define N 10
int main()
{
int i,j,temp;
int a[N];
for(i=0;i<N;i++)
{
scanf("%d",&a[i]);
}
for(j=1;j<=N-1;j++)
{
for(i=0;i<N-j;i++)
{
if(a[i]>a[i+1])
{
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}

}

 

}
j=0;

for(i=0;i<=N-1;i++)
{
printf("%d",a[i]);
j++;
if(j%5==0)
{
printf("\n");
}


}
return 0;

}

 

posted @ 2023-04-20 20:10  千恒  阅读(16)  评论(0编辑  收藏  举报