c 语言 首字母变大写

/*****
题目描述
输入一个只包含大小写英文字母和空格的句子,将每个单词的第一个字母改成大写字母。

输入
输入一个长度不超过100的英文句子。

输出
请输出按照要求改写后的英文句子。

样例输入 Copy
i like ACM

样例输出 Copy
I Like ACM
*****/

#include <stdio.h>
#include <stdlib.h>

int islittle (char ch);
int main()
{
    char str[100];
    gets(str);
    int i;
    for(i = 0;str[i] != '\0';i++)
    {
        if(str[i] == ' ' && str[i+1] != ' ')///少了一种,如果开头为字母
        {
            if(islittle(str[i+1]))///如果是小写
            str[i+1] -= 32;
        }
    }
    if (str[0] != ' ' &&islittle(str[0]))
    str[0] -= 32;
    printf("%s",str);
    return 0;
}
int islittle(char ch)
{
    if(ch>='a' && ch <= 'z')
    return 1;
    else
    return 0;
}

发布了84 篇原创文章 · 获赞 0 · 访问量 1819

猜你喜欢

转载自blog.csdn.net/qq_39345244/article/details/104880760