C语言用选择法对10个整数排序。10个整数用scanf函数输入。

用选择法对10个整数排序。10个整数用scanf函数输入。利用数组
1楼这个错了 没有按大小排序。。。

#include <stdio.h>

void sort(int data[])//选择法10个整数排序
{
int i,j,index,temp;
for(i=0;i<9;i++)
{
index=i;
for(j=i+1;j<10;j++)
{
if(data[j]<data[index])
index=j;
}
temp=data[i];
data[i]=data[index];
data[index]=temp;
}
}

int main()
{
int data[10],i;//存储10个整数
for(i=0;i<10;i++)
scanf("%d",&data[i]);//输入10个整数
sort(data);
for(i=0;i<10;i++)
printf("%d ",data[i]);
printf("\n");
return 0;
}
选择法排序函数是sort()已经编写了。可以运行,已经测试了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-12-16
main()
{
int i,a[10];
printf("Please input the number:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
printf("\na[%d]=%d",i,a[i]);
}
在tc环境下运行一下,看看是不是你想要的结果。
第2个回答  2019-05-10
用冒泡法解决挺方便的,程序如下:
#include<stdio.h>
void
main()
{
int
a[10];
int
i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
for(i=0;i<10;i++)
printf("%d",a[i]);
}
相似回答