#include
#include
int main()
{
char s[4][20];//定义一个二维数组
char temp[20];//定义一个用于交换的中间变量
int i,j;
puts("\nenter string:");
for(i=0;i<4;i++)
gets(s[i]);
for(i=0;i<3;i++)
{
int max=i;
for(j=i;j<4;j++)
if(strcmp(s[i],s[j])>0)
max=j;//交换下标
strcpy(temp,s[max]);
strcpy(s[max],s[i]);
strcpy(s[i],temp);
}
for(i=0;i<4;i++)
puts(s[i]);
return 0;
}
#define N 5
void sort(char *p[],int n){
char *str;
int i,j,k;
for(i=0;i
k=i;
strcpy(str,p[i]);
for(j=i+1;j
if(strcmp(p[j],str)<0)
{
k=j;
}
}
if(i!=k)
{
strcpy(p[i],p[k]);
strcpy(p[k],str);
}
}
}
void print(char *p[],int n){
int i;
printf("\n\nHere is the sorted result:\n");
for(i=0;i
printf("%s\n",p[i]);
}
}
main(){
char *strarray[N];
int i;
printf("Please input characters:\n");
for(i=0;i
gets(strarray[i]);
}
sort(strarray,N);
print(strarray,N);
}