#include
#include
int main()
{
int i=0,j;
char a[100][100],b[100],str[100];
char c;
gets(str);
for(j=0;(c=str[i])!='\0';j++)
{if(c==' ') i=i+1;
else
a[i][j]=c;
}
for(i=0;i<99;i++)
{
if(strlen(a[i])<=strlen(a[i+1]))
strcpy(b,a[i+1]);
}
printf("%s",b);
return 0 ;
}
if(strlen(a[i])<=strlen(a[i+1]))
这只是相邻两个字符串比较,你要和当前最长字符串比较才行啊
#include <stdio.h>
#include<string.h>
int main()
{
int i=0,j,k=0;
char a[100][100]={0},b[100]={0};
char c,str[100]={0};
gets(str);
for(j=0;(c=str[i])!='\0';)
{
if(c==' ')
{
k++;
j=0;
}
else
{
a[k][j]=c;
j++;
}
i++;
}
for(i=0;i<99;i++)
{
if(strlen(a[i])> strlen(b))
strcpy(b,a[i]);
}
printf("%s",b);
return 0 ;
}