#学编程的小白# 2023-08-21 20:09 采纳率: 100%
浏览 17
已结题

输入一段英文句子,让首字母大写。

题目描述
输入一个英文句子,将每个单词的第一个字母改成大写字母。

输入格式
输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。

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

样例输入
i like acm
i want to get an accepted
样例输出
I Like Acm
I Want To Get An Accepted

我的代码在做题网站上无法通过,显示答案错误,但我在编译器中又没有问题,有没有佬知道的回答一下非常感谢。

#include<stdio.h>
#include<string.h>
int main() {
    char arr[999]={0};
    while (fgets(arr,sizeof(arr),stdin)) {
        int len = strlen(arr);
        arr[0] = arr[0] - 32;
        for (int i = 1; i < len; i++) {
            if (arr[i - 1] == ' ') {
                arr[i] -= 32;
            }
        }
        for (int i = 0; i < len; i++) {
            printf("%c", arr[i]);
        }//printf("\n");
    }return 0;
}

  • 写回答

3条回答 默认 最新

  • qzjhjxj 2023-08-22 08:44
    关注

    供参考:

    #include<stdio.h>
    int main()
    {
        int  i;
        char s[101];
        while (gets(s) != NULL) {
            for (i = 0; s[i] != '\0'; i++)
            {
                if (i == 0 && s[i] >= 'a' && s[i] <= 'z')
                    s[i] = s[i] - 32;
                else if (s[i] >= 'a' && s[i] <= 'z' && s[i - 1] == ' ')
                    s[i] = s[i] - 32;
            }
            puts(s);
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月5日
  • 已采纳回答 8月28日
  • 创建了问题 8月21日

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集