题解 | #首字母大写#
首字母大写
https://www.nowcoder.com/practice/91f9c70e7b6f4c0ab23744055632467a
//描述 //对一个字符串中的所有单词,如果单词的首字母不是大写字母, // 则把单词的首字母变成大写字母。 在字符串中,单词之间通过空白符分隔, // 空白符包括:空格(' ')、制表符('\t')、回车符('\r')、换行符('\n')。 //输入描述: //输入一行:待处理的字符串(长度小于100)。 //输出描述: //可能有多组测试数据,对于每组数据, 输出一行:转换后的字符串。 //输入: // //if so, you already have a google account. you can sign in on the right. // //输出: // //If So, You Already Have A Google Account. You Can Sign In On The Right. #include <cstdio> #include <algorithm> #include <string> #include <iostream> using namespace std; int main(){ string str; while(getline(cin,str)){ str.insert(0," "); for(int i=0;i<str.size();i++){ if((str[i]==' '||str[i]=='\t'||str[i]=='\r'||str[i]=='\n')&&str[i+1]>='a'&&str[i+1]<='z'){ str[i+1]=str[i+1]-32; } } cout<<str.substr(1,str.size())<<endl; } }