文章

14

粉丝

58

获赞

5

访问

9.2k

头像
首字母大写 题解:getline()+首字母单独处理+单词首字母前面一定是空白字符+大小写转换
P1240 北京大学机考题
发布于2024年3月15日 19:15
阅读数 813

#include <bits/stdc++.h>
using namespace std;

int main(){
	string str;
	while( getline( cin, str ) ){
	    //句子首字母单独处理
		if( str[0] >= 'a' && str[0] <= 'z' )
			str[0] -= 32;
		//处理后续字符
		for( int i=1; i < str.size(); i++ )
			//单词首字母前面一定是空白字符
			if( ( str[i] == ' ' || str[i] == '\t' || str[i] == '\r' || str[i] == '\n' ) && ( str[i+1] >= 'a' && str[i] <= 'z' ) )
				str[i+1] -= 32;   //这里是str[i+1],不是str[i]
		cout << str << endl;
	}
    return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发