- /*
-
- 7、 在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。(C语言)
-
- */
- #include <stdio.h>
- int main(int argc, const char * argv[]) {
- //定义一个数组存放用户输入的字符串
- char string[100];
- //定义一个指针指向该字符串的首地址
- char *p=string;
- //定义变量作为计数器和最长单词数
- int count=0,max=0;
- //提示用户输入一个字符串
- printf("请输入一个字符串,空格用来分隔不同单词,并以回车键结束:\n");
- //接收用户输入的字符串
- gets(string);
- //循环结束条件判断
- while (*p!='\0') {
- //判断是否是空格
- if (*p==' ') {
- //比较字符串长度,将较长的长度赋值给max,计数器归零
- if (max<=count)
- max=count;
- count=0;
- }
- //计数
- else count++;
- //使指针的指向下移
- p++;
- }
- //比较最后一个字符串长度与之前最长的字符串长度并赋值
- if (max<=count)max=count;
- printf("字符串中最长单词的长度为%d\n",max);
- return 0;
- }
复制代码 |
|