繁体   English   中英

检查字符串的WORDS中是否有相同的第一个和最后一个字母

[英]Check if there are same first and last letter in WORDS of a string

我的任务是编写一个 C 程序,用户在其中输入一个句子,程序会检查是否有以相同字母开头和结尾的单词(例如 eye、roar、sos 等)。我写了这个,但我没有确定它会起作用。

我也有一个错误:

使用了未初始化的局部变量“p2”。

有人可以说我应该在哪里初始化它吗?

也许有人可以添加一些改进的技巧?

#include <string.h>
#include<ctype.h>

int main()
{
    char str[100], prev, nev;
    int length = 0, sym, i, k=0;

    printf("Enter a string:\n");
    while ((getchar()) != '.' || (getchar()) != '\n')
    {
        gets_s(str);
    }

    length = strlen(str);

    prev = str[0];
    nev = str[0];
    for (i = 0; i < length; i++)
    {
        if (i == 0)
        {
            str[i] = toupper(str[i]);
        }
        else if (str[i] == ' ' || i == (length - 1))
        {
            str[i - 1] = nev;
            if (prev=nev)
            {
                for (i=k;str[k]=nev;k++)
                {
                    printf("%s", str[k]);
                }
            }
        }
        prev = str[i + 1];
    }

    printf("String after capitalizing first and last letter of each word:\n%s", str);

    return 0;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM