输入五个国家的名称按字母顺序排列输出

本题编程思路如下:五个国家名应由一个二维字符数组来处理。然而C语言规定可以把一个二维数组当成多个一维数组处理。 因此本题又可以按五个一维数组处理, 而每一个一维数组就是一个国家名字符串。用字符串比较函数比较各一维数组的大小,并排序, 输出结果即可。

include<stdio.h>
#include
<conio.h>
void main()
{
    
char st[20],cs[5][20];
    
int i,j,p;
    printf(
"input country's name:\n");
    
for(i=0;i<5;i++)
        gets(cs[i]);
    printf(
"\n");
    
for(i=0;i<5;i++)
    { p
=i;strcpy(st,cs[i]);
      
for(j=i+1;j<5;j++)
          
if(strcmp(cs[j],st)<0) p=j;
      
if(p!=i)
      {
          strcpy(st,cs[i]);
          strcpy(cs[i],cs[p]);
          strcpy(cs[p],st);
      }
      puts(cs[i]);
    }
    printf(
"\n");
    getch();
}
posted @ 2007-07-06 09:22  齐心  Views(5870)  Comments(0Edit  收藏  举报