字符串排序

#include<stdio.h>

#include<stdlib.h>

#include<math.h>

#include<string.h>

int n;

char str1[500][20];

void p_quick_sort(char str[500][20],int i,int j);



void  main()

{

    int i;

    while(1)

    {



    printf("请输入字符串个数:\n");

    scanf("%d",&n);

    for(i=0;i<n;i++)

        scanf("%s",str1[i]);



    p_quick_sort(str1,0,n-1);

    for(i=0;i<n;i++)

        printf("%s\n",str1[i]);

    }

}

void p_quick_sort(char str[500][20],int i,int j)

{

    int index,start=i,end=j;  if(i>=j)return ;

    char temp[20];

    strcpy(temp,str[i]);;



    while(i<j)

    {

        while(strcmp(str[j],temp)>=0&&i<j)

        {

            j--;

        }

        if(i<j)

        {

            strcpy(str[i],str[j]);



        }

        while(strcmp(str[i],temp)<0&&i<j)

        {

            i++;

        }

        if(i<j)

        {

            strcpy(str[j],str[i]);

        }



    }

strcpy(str[i],temp);

    p_quick_sort(str,start,i-1);

    p_quick_sort(str,i+1,end);



}

你可能感兴趣的:(字符串)