C语言编程:将输入的N个整数采用冒泡排序按照从小到大的顺序排列并且输出。

只要编冒泡法 就够 了 因为就这个运行老错误

第1个回答  2007-07-11
void BubbleSort(int L[]) {
// 对顺序表L作冒泡排序
int i,j,fini = 0;
for (i = 1; i < n && !fini; i++) {
fini = 1;
for (j = 1; j <= n-i; j++)
if (L[j] > L[j+1]) {
L[0] = L[j];
L[j] = L[j+1];
L[j+1] = L[0];
fini = 0;
}
}
}本回答被网友采纳
第2个回答  2007-07-20
#include "stdio.h"
#include "stdlib.h"
int main()
{
int a[1000];
int b=0,c=0,e=0,w,q;
printf("请输入排序个数!\n\n");
scanf("%d",&w);
system("cls");
for(e=0;e<w;e++)
{
scanf("%d",&a[e]);
}
system("cls");
b=0;
printf("1.从小到小\t2.从大到大\n\n");
scanf("%d",&q);
switch(q)
{/*awitch q*/
case 1:
{ /*case 1*/
for(b=0;b<w;b++)
{
for(c=0;c<w-1;c++)
{
if(a[c]>a[c+1])
{
int k;
k=a[c];
a[c]=a[c+1];
a[c+1]=k;
}
}
}
break;
}/*case 1*/
case 2:
{ /*case 2*/
for(b=0;b<w;b++)
{
for(c=0;c<w-1;c++)
{
if(a[c]<a[c+1])
{
int k;
k=a[c];
a[c]=a[c+1];
a[c+1]=k;
}
}
}
break;
} /*case 2*/

} /*switch q*/
int l;

for(l=0;l<w;l++)
{
printf("%d",a[l]);
printf(" ");
}
printf("\n\n");
system("pause");
}
相似回答