#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 码 ± 整数对应的字符),常用于字符编码的偏移(如大小写转换)

京公网安备 11010502036488号