黑马程序员技术交流社区
标题:
怎么查找英文句子 最长的单词
[打印本页]
作者:
dayuanzhang
时间:
2016-6-10 22:29
标题:
怎么查找英文句子 最长的单词
急求,一点思路都没
作者:
呵呵哒哒
时间:
2016-6-10 23:33
int main(int argc, const char * argv[]) {
// 定义一个字符数组,用来接收控制台的输入
char inputStr[100];
printf("Please input a string:\n");
// 接收控制台输入,scanf和gets,推荐gets
gets(inputStr);
// length表示字符串的长度
int length = (int)strlen(inputStr);
// 标志位,表示是否是上一个单词结束
int isWord = 0;
// 记录每个单词的长度
int wordLength = 0;
int maxLength = 0;
for (int i = 0; i < length; i++) {
char c = inputStr
;
// 是一个空格,空格表示上一个单词结束
if (c == ' ') {
isWord = 0;
}
// 说明开始了一个新的单词,处理单词首字母
else if (!isWord) {
// 标记为开始一个新的单词
isWord = 1;
// 开始计算当前单词的长度,把长度重置为0
wordLength = 0;
// 单词的首字母属于单词的一部分,所以长度+1
wordLength++;
}
// 新单词中除了首字母之外的其它字符
else if (isWord) {
wordLength++;
// 此处说明上一个单词已经结束了,可以拿到上一个单词的长度,和最大的长度进行比较
if (wordLength > maxLength) {
maxLength = wordLength;
}
}
}
printf("%d\n", maxLength);
return 0;
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2