#include <iostream>
#include <string>
using namespace std;

int main() {
    string str;
    while (getline(cin,str)) { // 注意 while 处理多个 case
        for(int i=0;i<str.size();i++){
            if(i==0 && str[i]<='z' && str[i]>='a'){
                str[i]-=32;
            }else if(str[i]==' ' || str[i]=='\t' || str[i]=='\r' || str[i]=='\n'){
                if(str[i+1]<='z' && str[i+1]>='a')str[i+1]-=32;
            }
        }
        cout<<str<<endl;
    }
}
// 64 位输出请用 printf("%lld")

关键点:大小写字符转换,小写字母的ASCII码比大写字母的ASCII码大32;

  • 字符 ± 字符 → 结果为整数(ASCII 码的加减)。
  • 字符 ± 整数 → 结果为新字符(原 ASCII 码 ± 整数对应的字符),常用于字符编码的偏移(如大小写转换)