先判断第一个字符是否为小写,再遍历后面的字符即可



using namespace std;
#include <string>

/*空格(' ')、制表符('\t')、回车符('\r')、换行符('\n')。*/


int main() {
    string str;
    while (getline(cin, str)) {
            //处理首字母
        if (str[0] >= 'a' && str[0] <= 'z') {
            str[0] = str[0] - 'a' + 'A';
        }

        for (int i = 1; i < str.size(); i++) {
            if ((str[i - 1] == ' ' || str[i - 1] == '\t' ||
                str[i - 1] == '\r') && (str[i] >= 'a' && str[i] <= 'z')) {
                str[i] = str[i] - 'a' + 'A';

            }

        }

        cout << str << endl;
    }
    
    return 0;
}