#include "Stdio.h"
int main(void)
{
int arr[10],i,j,temp,k;
printf("please input ten data : ");
for(i=0;i<10;i++)
scanf("%d",&arr[i]);
/*从小到大排序*/
for(i=0;i<9;i++){
temp = arr[i];
for(j=i+1;j<10;j++){
if(temp>arr[j])
k = j;
}
arr[i] = arr[k];
arr[k] = temp;
}
for(i=0;i<10;i++)
printf("%-5d",arr[i]);
getch();
return 0;
}
我测试过了。。。。希望对有帮助。。。。使用的是选择排序法。。。
#include
void main()
{
int ar[10],i,j,temp=0;
printf("请输入十个整数:\n");
for(i=0;i<=9;i++)
scanf("%d",&ar[i]);//输入循环
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
if(ar[j]>ar[j+1])
{temp=ar[j];ar[j]=ar[j+1];ar[j+1]=temp;}//冒泡排序
for(i=0;i<=9;i++)
printf("%d ",ar[i]);//输出循环
}
利用冒泡法排序。
for(i=0;i<10;i++)
scanf("%d",&s[i]);
for(i=0;i<9;i++)
{
for(j=i+1;j<10;j++)
在第一个for循环结束时,i的值已经为10,所以第二个for循环根本就不会运行,你把第二个for循环的i改成k,然后看看行不行!
#include
int main()
{
int a[10];
int i,j,t;
printf("input 10 number:\n");
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;
}
printf("teh sorted numbers:\n");
for(i=0;i<10;i++)
printf("%5d",a[i]);
printf("\n");
return 0;
}
正向输出;
main ()
{int i,a[10];
printf("innput 10 number :");
for(i=0;i<=9;i++)
scanf("%d",&a[i]);
for(i=0;i<=9;i++0
printf("%-4d",a[i]):}