C语言根据国家英文首字母进行排序

C语言根据国家英文首字母进行排序

#include <stdio.h>
#include <string.h>
#define MAX_LEN 10
#define N       150
void SortString(char str[][MAX_LEN],int n);
int main()
{
    int i,n;
    char name[N][MAX_LEN];
    printf("How many countries ?\n" );
    scanf("%d",&n);
    getchar();
    printf("Input their names:\n");
    for(i=0;i<n;i++){
        gets(name[i]);
    }
    SortString(name,n);
    printf("Sorted results:\n");
    for(i=0;i<n;i++){
        puts(name[i]);
    }
}
void SortString(char str[][MAX_LEN],int n)
{
    int i,j;
    char temp[MAX_LEN];
    //遍历所有国家名称
    for(i=0;i<n-1;i++)  
    {
        //遍历每个国家的首字母
        for(j=i+1;j<n;j++)
        {
            if(strcmp(str[j],str[i])<0)
            {
                strcpy(temp,str[i]);
                strcpy(str[i],str[j]);
                strcpy(str[j],temp);
            }
        }
    }
}

效果截图
效果截图

posted @ 2017-09-08 20:21  Newtol  阅读(2257)  评论(0编辑  收藏  举报