利用指针将一个包含多个单词的字符串拆分每个单词,找到长度最长的单词并输出。若有多个单词长度一样的,输出最早拆分出的单词。
时间: 2024-06-17 16:02:30 浏览: 74
在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。(C语言)
要将一个包含多个单词的字符串拆分成每个单词,可以使用指和字符串处理函数来实现。以下是一个示例代码:
```c++
#include <iostream>
#include <cstring>
int main() {
char str[] = "Hello CSDN AI Assistant";
char* word;
char* longestWord;
int maxLength = 0;
// 使用strtok函数拆分字符串
word = strtok(str, " ");
while (word != nullptr) {
// 输出每个单词
std::cout << word << std::endl;
// 检查单词长度并更新最长单词
int length = strlen(word);
if (length > maxLength) {
maxLength = length;
longestWord = word;
}
// 继续拆分下一个单词
word = strtok(nullptr, " ");
}
// 输出最长的单词
std::cout << "最长的单词是:" << longestWord << std::endl;
return 0;
}
```
运行以上代码,输出结果为:
```
Hello
CSDN
AI
Assistant
最长的单词是:Assistant
```
阅读全文