//代码的修改如下。 重要的是,要知道不同维的数组名称表示不同的逻辑指针。 这里的str指针是辅助指针。
//移动时的偏移因逻辑电平而异。
#包含
#包含
voidsort(char*str )//str是接收数组中第一个元素的一级指针
{
for(intI=0; i4; I )//冒泡排序方法
{
for(intj=I; j5; j )
{
char* pre=new char[50];
char*next=new char[50];
pre=str 50*i; //请求数组时,每个数组的大小为50,因此每个元素的偏移为50
next=str 50*j;
if(strcmp(pre,next )0)//比较
{
char temp[50];
strcpy(temp,pre ); //交换
strcpy(pre,next ); //交换
strcpy (下一步,temp ); //交换
}
}
}
}
Void主() )
{
char str[5][50];
for(intI=0; i5; I )
scanf('%s ',* ) *(str i ); //输入字符串
sort(str[0]; //在此传递数组的第一个元素
for(intk=0; k5; k//输出在这里也需要调用函数时,模仿上述方法即可
{
printf(%s(t ),str[k];
}
printf((n );
}
//这个程序我上次也帮过忙。 可以在车站里搜索。 上面的代码是本人以前回答类似问题的。 请作为参考!