寻找c语言高手

来源:百度知道 编辑:UC知道 时间:2024/06/02 09:37:46
#include<stdio.h>
void main()
{
void sort(char *name[],int n);
void print(char *[],int n);
static char *name[]={"CHINA","AMERICA","AUSTRALIA","FRANCE","GERMAN"};
int n=5;
sort(name,n);
print(name,n);
getch();

}
void sort(char *name[],int n)
{
char *pt;
int i,j,k;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(strcmp(name[k],name[j])>0) k=j;
if(k!=i)
{
pt=name[i];
name[i]=name[k];
name[k]=pt;
}
}

}
void print(char *name[],int n)
{
int i;
for(i=0;i<n;i++)
printf("%s\n",name[i]);

} 请教c语言高手们,我不知道这段程序执行过程,你能告诉我吗?

两个函数一个是用于将那个数组排序,一个是打印字符串数组
程序先建立一个字符指针数组,存放那些字符串
然后调用Sort函数,把那些字符串按字母顺序排序
最后输出
然后按任意键结束程序
结果是
AMERICA
AUSTRALIA
CHINA
FRANCE
GERMAN