白糖894 2021-11-30 15:38 采纳率: 76.9%
浏览 30
已结题

运行超时了怎么改啊?

单词首字母大写
输入一个英文句子,要求将每个单词的首字母改成大写字母。
输入格式:

测试数据有多组,处理到文件尾。每组测试输入一行,包含一个长度不超过100的英文句子(仅包含大小写英文字母和空格),单词之间以一个空格间隔。

输出格式:

对于每组测试,输出按照要求改写后的英文句子。

输入样例:

I like acm
i want to get accepted
输出样例:

I Like Acm
I Want To Get Accepted
出处:

HDOJ 2026

#include"stdio.h"
main(){
char str[1000],max;
int i,a,t;
while(gets(str)!=EOF){
t=strlen(str);
max=str[0];
for(i=0;i<t;i++){
if(max<str[i]){
max=str[i];
}
}
for(i=0;i<t;i++){
printf("%c",str[i]);
if(str[i]==max)
printf("(max)");
}
puts(" ");
}
}

  • 写回答

1条回答 默认 最新

  • -Undefined_ 2021-11-30 16:10
    关注
    #include<stdio.h>
    #include<string.h>
    int main() {
        char str[1000], word[100];
        int i, j, t;
        while(gets(str)) {
            t = strlen(str);
            j = 0;
            memset(word, 0, sizeof(word));
            for(i = 0; i < t; i++) {
                if(str[i] != ' ') {
                    word[j++] = str[i];
                } else {
                    if(word[0] >= 'a' && word[0] <= 'z') {
                        word[0] -= 32;
                    }
                    printf("%s ", word);
                    memset(word, 0, sizeof(word));
                    j=0;
                }
            }
            if(word[0] >= 'a' && word[0] <= 'z') {
                word[0] -= 32;
            }
            printf("%s\n", word);
        }
        return 0;
    }
    

     觉得有用的话采纳一下哈

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月8日
  • 已采纳回答 11月30日
  • 创建了问题 11月30日

悬赏问题

  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上