编写程序:有 N个国家名,要求按字母先后顺序排列(用起泡排序法)后输出。
运行效果:
请输入5个地名:
Shanghai
Beijing
Shenzhen
Lasa
Wulumuqi
排序后的地名顺序为:
Beijing
Lasa
Shanghai
Shenzhen
Wulumuqi
编写程序:有 N个国家名,要求按字母先后顺序排列(用起泡排序法)后输出。
运行效果:
请输入5个地名:
Shanghai
Beijing
Shenzhen
Lasa
Wulumuqi
排序后的地名顺序为:
Beijing
Lasa
Shanghai
Shenzhen
Wulumuqi
用字符类型的二维数组,然后进行冒泡排序就行了啊。字符串比较用strcmp
#include <stdio.h>
#include <string.h>
int main()
{
char s[100][50] = {0},char t[50];
int N;
scanf("%d",&N);
for(int i=0;i<N;i++)
gets(s[i]);
for(int i=0;i<N-1;i++)
for(int j=0;j<N-i-1;j++)
{
if(strcmp(s[j],s[j+1]) == 0)
{
strcpy(t,s[j]);
strcpy(s[j],s[j+1]);
strcpy(s[j+1],t);
}
for(int i=0;i<N;i++)
printf("%s\n",s[i]);
}