编程在一个已知的字符串中找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。

来源:互联网 发布:linux 查看压缩包 编辑:程序博客网 时间:2024/04/26 12:00

编程在一个已知的字符串中找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。比如:"ni hao world”,最长单词是 world

    char c[] = "ni hao world";

    int a = 0,b = 0,length = 0;//b:最长单词前面空格的下标,a:最近出现的空格或'\0'

    for (int i = 0; i<= strlen(c); i++) {

        if (c[i] == ' ' || c[i] == '\0') {

           

            if (length < i-a) {

                length = i-a;

                b = i -length;

            }

            a = i;

        }

    }

    printf("最长单词是:");

    for (int i = b+1; c[i]!=' ' && c[i] != '\0'; i++) {

        printf("%c",c[i]);

    }

     

0 0