📌  相关文章
📜  c中字符串中最长的单词 (1)

📅  最后修改于: 2023-12-03 15:14:24.812000             🧑  作者: Mango

在C语言中寻找字符串中最长的单词

在C语言中,字符串是由一系列的字符构成的。寻找字符串中最长的单词是C语言中一个常见的问题。

实现思路

通过遍历整个字符串,逐个字符进行判断,如果当前字符是字母,则将其加入当前单词中。当遇到非字母字符时,判断当前单词的长度是否大于之前记录的最长单词长度,如果是,则将当前单词更新为最长单词。

实现代码
#include <stdio.h>
#include <string.h>

int main() {
    char str[1000] = "This is a demo string for testing.";
    char longest_word[100];
    int i, j, current_word_length, longest_word_length;

    current_word_length = longest_word_length = 0;

    for (i = 0; i < strlen(str); i++) {
        if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) {
            current_word_length++;
        } else {
            if (current_word_length > longest_word_length) {
                longest_word_length = current_word_length;
                for (j = 0; j < current_word_length; j++) {
                    longest_word[j] = str[i - current_word_length + j];
                }
                longest_word[j] = '\0';
            }
            current_word_length = 0;
        }
    }

    printf("Longest word: %s\n", longest_word);

    return 0;
}
总结

以上就是在C语言中寻找字符串中最长的单词的实现代码和思路。这种方法只是一个简单的实现方式,还有很多其它的方法可以达到相同的结果,例如使用正则表达式等。