#include <stdio.h>
#include <stdlib.h>
void AlphaSort(char name[][12], int size)
{
int i,j;
char tmp[20];
for(i = 0; i < size; i++)
for(j = 0; j < size-1-i; j++)
{
if(strcmp(name[j], name[j+1]) > 0)
{
strncpy(tmp,name[j],strlen(name[j]));
strncpy(name[j],name[j+1],strlen(name[j+1]));
strncpy(name[j+1],tmp,strlen(name[j+1]));
}
}
for(i = 0; i < size; i++)
{
printf("%s\n",name[i]);
}
}
int main(void)
{
char name[][12] = {"hello","world","helloworld"};
int size = sizeof(name)/sizeof(name[0]);
AlphaSort(name, size);
return 0;
}
注意:参数不能写成char * name[ ]这样的话传入的将是一个常量字符串,指针指向的常量字符串是不能修改的,在复制操作是会出现段错误。