对字符串排序怎么有时不输出呢?
#include<stdio.h>
#include<string.h>
#include<iostream.h>
int main()//对四个字符串排序
{
void sort(char (*s)[6]);//形参为指向6个字符串数组的指针
int i;
char str[4][6];
char (*p)[6];
cout<<"input the four words:"<<endl;
for(i=0;i<4;++i)
cin>>str[i];
p=str;//输入字符串后使指针指向str[4][6];
sort(p);//使实参也是指针
cout<<"now new array is:"<<endl;
for(i=0;i<4;++i)
cout<<str[i]<<" ";
return 0;
}
void sort(char (*s)[6])//排序函数
{
int i,j;
char temp[6];
char *t=temp;
for(i=0;i<3;++i)
for(j=i+1;j<4;++j)
{
if(strcmp(s[j],s[i])<0)
{
strcpy(t,s[j]);
strcpy(s[j],s[i]);
strcpy(s[i], t );
}
}
}