例10.27将若干字符串按字母顺序(由小到大)输出。
main()
{void Sort(char *name[ ],int n);
void print(char *name[ ],int n);
char *name[]={"Follow me","BASIC","Great Wall","FORTRAN","Computer DeSiGn"};
int n=5;
Sort(name,n);
print(name,n);
}
void Sort(char *name[ ],int n)
{chartemp;
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)
{temp=name[i]; name[i]=name[k]; name[k]=temp;}
}
}
void print(char *name[ ],int n)
{int i;
for(i=0;i<n;i++)
printf("%S\n",name[i]);
}
运行结果为:
BASIC
Computer DeSiGn
FORTRAN
Follow me
Great Wall
main()
{void Sort(char *name[ ],int n);
void print(char *name[ ],int n);
char *name[]={"Follow me","BASIC","Great Wall","FORTRAN","Computer DeSiGn"};
int n=5;
Sort(name,n);
print(name,n);
}
void Sort(char *name[ ],int n)
{chartemp;
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)
{temp=name[i]; name[i]=name[k]; name[k]=temp;}
}
}
void print(char *name[ ],int n)
{int i;
for(i=0;i<n;i++)
printf("%S\n",name[i]);
}
运行结果为:
BASIC
Computer DeSiGn
FORTRAN
Follow me
Great Wall