输入三个字符串,找出输出其中的最大一个字符串,哪儿错了

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

少做了一次比较,三个字符串至少要比较两次吧