企业高管培训课程 交大:c爱好者进来看看这里有什麼错误

来源:百度文库 编辑:神马品牌网 时间:2024/04/30 00:09:59
void Sort(char *str[5],int n);
void Print(char *str[5],int n);
int Accept(char *str[5][10]);
void main()
{
char *str[5];
int n;
n=Accept(char *str[5][10],n);
Sort(char *str[5],n);
Print(char *str[5],n);
}
int Accept(char *str[5][10])
{
int m,i,sum;
printf("Please input the number of string:\n");
scanf("%d",&m);
for(i=0;i<m;i++)
{
str=(char*)malloc(10);
printf("Please input %d string:\n",i+1);
scanf("%s",str[i][10]);
sum=str[i][10];
sum++;
}
free(str);
return sum;
}
void Sort(char *str[5],int n)
{
int i;
int j;
char *temp;
for(i=0;i<n-1;j++)
for(j=i+1;j<n;j++)
if(strcmp(*(str+i),*(str+j)>0))
{
temp=*(str+i);
*(str+i)=*(str+j);
*(str+j)=temp;
}
}
void Print(char *str[5],int n)
{
int i;
printf("The result is:\n");
for(i=0;i<n;i++)
printf("%s\n",(str+i));
}

不止一次看到这个程序了,风格太差,语法太差,错误太多……
错误类型:一、调用函数不给声明;二、函数参数及变量类型与使用不匹配(最多的错误类型);三、调用函数接口写成声明形式……
建议楼主好好把书读过后重写!

你的程序错误太多了。我的QQ号8047256
而且编程风格挺差的。以后不要这样用。

函数的两个实参是什么??没赋初值。
int Accept(char *str[5][10]);
n=Accept(char *str[5][10],n);
这个函数里面还有一个形参n到哪里去了??