编辑代码

#include <stdio.h>
#include <ctype.h>

// 将字符串中每个单词的第一个字母改为大写
void capitalize(char *str) 
{
    int flag = 1; // 标记是否为单词的首字母

    // 遍历整个字符串
    while (*str)
    {
        if (isalpha(*str)) 
        { // 判断字符是否为字母
            if (flag) 
            { // 如果是单词的首字母
                *str = toupper(*str); // 将字母转换为大写
                flag = 0; // 设置标记为非首字母
            }
        } 
        else 
        {
            flag = 1; // 遇到非字母字符,标记为下一个单词的首字母
        }
        str++; // 指针移动到下一个字符
    }
}

int main() 
{
    char sentence[100]; // 存储输入的句子

    printf("请输入一句英文:");
    fgets(sentence, sizeof(sentence), stdin); // 从标准输入读取句子

    capitalize(sentence); // 调用函数将句子中每个单词的首字母改为大写

    printf("处理后的句子为:%s\n", sentence); // 输出处理后的句子

    return 0;
}