题目:
结果示例:
解答:
#include <stdio.h>
#include <string.h>
#define N 30
void SortString(char str[][N],int n);
//交换法实现字符串按字典序排序
void SortString(char str[][N],int n)
{
int i,j;
char temp[N];
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)//选择排序
{
if(strcmp(str[j],str[i])<0)//ASCII值大小比较:A<a<b
{
strcpy(temp,str[i]);//将str[1]复制到temp;
strcpy(str[i],str[j]);
strcpy(str[j],temp);
}
}
}
}
int main()
{
int i;
char name[10][N];
printf("Input country's name:\n");
for(i=0;i<10;i++)
gets(name[i]);
SortString(name,10);
printf("\nSort result:\n");
for(i=0;i<10;i++)
puts(name[i]);
}