HDOJ 2026頭文字が大文字になる

3230 ワード

頭文字が大文字になる
Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 28018    Accepted Submission(s): 15543
Problem Description
英語の文を入力し、各単語の最初のアルファベットを大文字に変更します.
 
 
Input
入力データには複数のテストインスタンスが含まれており、各テストインスタンスは100を超えない英語の文で、1行を占めています.
 
 
Output
要求通りに書き換えた英語の文を出力してください.
 
 
Sample Input
i like acm i want to get an accepted
 
 
Sample Output
I Like Acm I Want To Get An Accepted
 
 
Author
lcy
 問題解決レポート:
この問題は要求が高くなく,ずいぶん簡略化された.文字列の0番目の文字を大文字にしてから、1番目の文字から文字列を巡ります.i-1番目のアルファベットがスペースで、i番目のアルファベットがアルファベットで、i番目のアルファベットを大文字にします.
 1 #include<stdio.h>
 2 #include<string.h>
 3 int main()
 4 {
 5     char buf[100];
 6     int i, len;
 7     while(gets(buf))
 8     {
 9         len = strlen(buf);
10         buf[0] -= 32;
11         for(i = 1; i <= len; i++)
12         {
13             if(buf[i-1] == ' ' && buf[i] != ' ')
14                 buf[i] -= 32;
15         }
16         puts(buf);
17     }
18     return 0;
19 }