#include<stdio.h>#include<string.h>#define LENGTH 20#define N 5void main(){void sort(char *name[],int n);void print(char *name[],int n);int i;char string[N][LENGTH];char *p;char *temp[N]; for(i=0;i<N;i++) { printf("Please input the %d compare string:\n",i+1); p=*(string+i);/*二维数组对应一行的首地址传给一个指针*/ gets(p); temp[i]=p; } sort(temp,N); print(temp,N);}void sort(char *name[],int n)/*从小到大排序的函数*/{char *temp;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)/*只有上一个if成立才执行*/ { temp=name[i]; name[i]=name[k]; name[k]=temp; } } }}void print(char *name[],int n)/*用于输出的函数*/{ int i; printf("The compared strings is:\n"); for(i=0;i<n;i++) printf("%s\n",name[i]);}

评论