#include <stdio.h>
#include <string.h>
int main()
{
int maxlen,curlen,maxpos; //三个变量分别代表:最大单词长度,目前单词长度,最长单词末字符位置。
char str[]="find the longest word in the string"; //定义字符串
for (int i=0; i<strlen(str); i++) //利用for循环遍历字符串的每个字符
{
if ((str[i]!=' ')&&(str[i]!='\0'))
curlen++; //如果字符不为空格或者\0则当前单词长度+1
else
{
if (curlen>maxlen) //如果当前单词长度大于最长单词长度
{
maxlen=curlen; //将此单词长度赋值给最长单词长度
maxpos=i; //将最长单词长度末字符位置记录下来
}
curlen=0; //重置当前单词长度
}
}
int j;
for(j=maxpos-maxlen+1;j<=maxpos;j++)
printf("%c",str[j]); //遍历最长单词的每个字符并打印
return 0;
} |
|