1. 程式人生 > >把字串按從小到大順序輸出

把字串按從小到大順序輸出

/*輸入五個字元,按由小到大的
順序輸出*/
#include <stdio.h>
#include <stdlib.h>
#include"string.h"
int main()
{
    char *p[5];
    char str[80];
    char *temp;
    int i,j,min;
    for(i=0;i<=4;i++){
        gets(str);
        p[i]=(char *)malloc(sizeof(char)*(strlen(str)+1));
        strcpy(p[i],str);
    }

    for(i=0;i<=3;i++){
        min=i;/*陣列元素涉及到交換,用下標*/
        for(j=i+1;j<=4;j++){
            if(strcmp(p[j],p[min])<0)
                min=j;
        }
        temp=p[i];
        p[i]=p[min];
        p[min]=temp;
    }
    for(i=0;i<=4;i++)
        puts(p[i]);

    return 0;
}