C语言中,下面编写的程序,编译无错误,执行时显示有一个错误,怎么回事呢?

#include<stdio.h>
#include<string.h>
void main()
{
char string[20];
char str[3][20];
int i;
for(i=0;i<=2;i++)
gets(str[i]);
if(strcmy(str[0],str[1])>0)
strcmp(string,str[0]);
else
strcmp(string,str[1]);
if(strcmp(str[2],string)>0)
strcpy(string,str[2]);
printf("\nthe largest string is:\n%s\n",string);
}

第10行,strcmy,改成strcmp
你这程序逻辑混乱了哦。。。strcmp这个函数是比较的意思,对原来的数据不会进行任何修改的,而且返回值是0和1,你也没有变量接收返回值。如果没有理解错你的意思的话,你应该把if和else下面的函数也改成strcpy
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-11
拼错了strcmy ->strcmp
第2个回答  2013-08-11

拼错了

相似回答