用一个函数实现将一行字符串中最长的单词输出
时间: 2023-04-26 07:03:58 浏览: 112
可以使用以下函数实现将一行字符串中最长的单词输出:
```python
def longest_word(sentence):
words = sentence.split() # 将句子拆分成单词列表
longest = "" # 初始化最长单词为空字符串
for word in words:
if len(word) > len(longest): # 如果当前单词比最长单词长
longest = word # 更新最长单词
return longest # 返回最长单词
```
使用示例:
```python
sentence = "I love programming and artificial intelligence"
print(longest_word(sentence)) # 输出:programming
```
相关问题
用一个函数来实现将一行字符串中最长的单词输出
我们可以使用 Python 的 split() 函数将字符串分割为单词列表,然后使用 len() 函数计算每个单词的长度,最后使用 max() 函数获取最长的单词。代码如下:
```
def longest_word(sentence):
words = sentence.split()
longest = max(words, key=len)
return longest
```
使用这个函数,例如:
```
longest_word("The quick brown fox jumps over the lazy dog")
```
输出:'jumps'
用一个函数来实现将一行字符串中最长的单词输出。四行字符串从主函数传递给次函数。
要在C语言中实现一个函数,将一行字符串中最长的单词输出,并且从主函数传递四行字符串给次函数,可以按照以下步骤进行:
1. 编写一个函数来查找并输出最长单词。
2. 在主函数中定义四行字符串并调用该函数。
以下是实现该功能的C语言代码:
```c
#include <stdio.h>
#include <string.h>
// 函数声明
void findLongestWord(char *str);
int main() {
// 定义四行字符串
char line1[] = "This is a sample string";
char line2[] = "Another line with some words";
char line3[] = "A third line with longer words";
char line4[] = "The last line with the longest word";
// 调用函数处理每行字符串
findLongestWord(line1);
findLongestWord(line2);
findLongestWord(line3);
findLongestWord(line4);
return 0;
}
// 函数定义
void findLongestWord(char *str) {
char *word = strtok(str, " ");
char *longestWord = word;
while (word != NULL) {
if (strlen(word) > strlen(longestWord)) {
longestWord = word;
}
word = strtok(NULL, " ");
}
printf("Longest word: %s\n", longestWord);
}
```
### 解释
1. **函数声明和主函数**:
- `findLongestWord`函数接受一个字符串作为参数。
- 在`main`函数中,定义四行字符串并调用`findLongestWord`函数来处理每一行。
2. **函数定义**:
- `findLongestWord`函数使用`strtok`函数来分割字符串中的单词。
- `strtok`函数通过空格来分割字符串,并返回第一个单词。
- 使用`strlen`函数比较单词的长度,找到最长的单词并存储在`longestWord`中。
- 最后,使用`printf`函数输出最长的单词。
阅读全文