C语言用冒泡法和选择法对10个数进行排序

学习 时间:2026-03-31 17:29:11 阅读:9492
C语言用冒泡法和选择法对10个数进行排序

最佳回答

甜甜的金鱼

自信的母鸡

2026-03-31 17:29:11

冒泡法:
#define N 10
#include<stdio。h>
maopao(int a[N])
{
int i,j,t;
for(j=0;j<N;j++)
for(i=0;i<N-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("排序后的数组为:\n");
for(i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
}
void main()
{
int i,a[N];
printf("请输入10个数:\n");
for(i=0;i<N;i++)
scanf("%d",&a[i]);
printf("\n");
maopao(a[N]);

}
选择法:
#include<stdio。h>
#define N 10
void main()
{
int i,j,k,t,a[N];
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N;i++)
{
k=i;
for(j=i+1;j<N;j++)
if(a[j]>a[k])
k=j;
if(k!=i)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}

}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);

}
printf("\n");
}

最新回答共有2条回答

  • 干净的花瓣
    回复
    2026-03-31 17:29:11

    冒泡法:#define N 10#include<stdio。h>maopao(int a[N]){ int i,j,t; for(j=0;j<N;j++) for(i=0;i<N-j;i++) if(a[i]>a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } printf("排序后的数组为:\n"); for(i=0;i<N;i++) printf("%d ",a[i]); printf("\n"); }void main(){ int i,a[N]; printf("请输入10个数:\n"); for(i=0;i<N;i++) scanf("%d",&a[i]); printf("\n"); maopao(a[N]); }选择法:#include<stdio。h>#define N 10void main(){ int i,j,k,t,a[N]; for(i=0;i<N;i++) scanf("%d",&a[i]); for(i=0;i<N;i++) { k=i; for(j=i+1;j<N;j++) if(a[j]>a[k]) k=j; if(k!=i) { t=a[i]; a[i]=a[k]; a[k]=t; } } for(i=0;i<10;i++) { printf("%d ",a[i]); } printf("\n");}

上一篇 我用过的车英语怎么说

下一篇 财务岗位经理用英语怎么说?