第1个回答 2013-10-19
可以使用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。#include "stdio.h"
#include "conio.h"
#define N 10
main()
{
int i,j,min,tem,a[N];
printf("请输入数值:\n");
for(i=0;i<N;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
printf("\n");
for(i=0;i<N;i++)
printf("%5d",a[i]);
printf("\n");
for(i=0;i<N-1;i++)
{
min=i;
for(j=i+1;j<N;j++)
if(a[min]>a[j])
min=j;
tem=a[i];
a[i]=a[min];
a[min]=tem;
}
printf("按升序排列如果如下: \n");
for(i=0;i<N;i++)
printf("%5d",a[i]);
getch();
}本回答被网友采纳
第2个回答 2013-10-19
public class SortTest {
public static void main(String[] args) {
int temp =0;
int[] num ={12,2,4,13,53,512,153,532,532,54};
//用于排序
for(int i=0; i<num.length-1; i++){
for(int j=0; j<num.length-i-1; j++){
if(num[j]>num[j+1]){
temp = num[j];
num[j] = num[j+1];
num[j+1] = temp;
}
}
}
//循环输出
System.out.println("排序后为:");
for(int i = 0; i < num.length; i++){
System.out.println(num[i]);
}
}
}