直接使用字符串的 upper 方法,把所有小写字母转换成大写后输出。
OJ: luogu
题目 ID: P5733
难度:入门
标签:字符串模拟python
日期: 2026-07-15 20:30
题意
输入一个长度不超过 100、不含空格的字符串。把其中所有小写字母改成大写字母,其他字符保持不变。
思路
Python 字符串自带 upper() 方法,它会把英文字母转成大写,数字、标点等非小写字母不会受到影响。
这题的重点是认识字符串方法,不创建 brute.py。
Python 知识
/home/rainboy/mycode/hugo-blog/content/program_language/python/input_output_and_strings.md:input()读取不含空格的一行字符串。/home/rainboy/mycode/hugo-blog/content/program_language/python/oj_input_output_cheatsheet.md:不含空格的字符串直接用s = input()。s.upper()返回一个新字符串,原字符串不会被原地修改。
代码
python
s = input()
print(s.upper())cpp
/**
* Author by Rainboy blog: https://rainboylv.com github: https://github.com/rainboylvx
* rbook: -> https://rbook.roj.ac.cn https://rbook2.roj.ac.cn
* rainboy的学习导航网站: https://idx.roj.ac.cn
* create_at: 2026-07-27 00:00
* update_at: 2026-07-27 00:00
*/
#include <bits/stdc++.h>
using namespace std;
char s[105]; // 输入的字符串
int main() {
cin >> s;
int len = strlen(s);
for (int i = 0; i < len; i++) {
if (s[i] >= 'a' && s[i] <= 'z')
s[i] = s[i] - 'a' + 'A'; // 小写转大写
}
cout << s;
return 0;
}Pythonic 写法
用 str.upper() 一行完成大小写转换:
python
print(input().upper())复杂度
设字符串长度为 n,时间复杂度是
总结
遇到整串大小写转换时,优先使用 Python 字符串方法,比手动逐个字符判断更清楚。