关于自己在函数里编写并且调用strcmp strcpy函数!。。。。。。。
#include<stdio.h>#define max 6
int StrCmp(char a[max][100],char b[max][100]);
void StrCpy(char a[max][100],char b[max][100]);
int main()
{
char ch[max][100];
char temp[100];
char null[1][100]="0";
int i,j;
for(i=0;i<6;i++){
printf("Enter your string:"); //获取输入
gets(ch[i]);
for(i=0;i<6;i++){
for(j=i+1;j<6;j++){
if(StrCmp(ch[i],ch[j])==0&&StrCmp(ch[j],null[0])!=0)
StrCpy(ch[j],null[1]);
}
}
for(i=0;i<5;i++){
for(j=i+1;j<6;j++)
{
if(StrCmp(null[0],ch[i])==0&&StrCmp(null[0],ch[j])!=0)
{
StrCpy(temp,ch[i]);
StrCpy(ch[i],ch[j]);
StrCpy(ch[j],temp);
}
}
}
for(i=0;i<6;i++)
if(StrCmp(null,ch[i])!=0)
puts(ch[i]);
}
int StrCmp(char a[max][100],char b[max][100]){
int i,j=0;
int res;
while(!(res=a[i][j]-b[i][j])&&b[i][j]) j++;
if(res<0) res=-1;
else if(res>0) res=1;
return res;
}
void StrCpy(char a[max][100],char b[100]){
int i=0,j=0;
while(b[j]!="0"){
a[i]=b[j];
i++;
j++;
}
}
}
已经完全混乱了 二维数组什么的声明还有调用 还有传递都搞不清了 求指导!。。。。