返回首页 返回题库

字符转换

C++ 简单 GESP三级真题 #字符串处理

题目描述

题面描述

小杨同学有一串字符,里面可能有:

  • 大写字母,比如 A 、 B 、 C
  • 小写字母,比如 a 、 b 、 c
  • 数字,比如 0 、 1 、 2


现在小杨同学想把这串字符变一变,规则如下:

  1. 如果是大写字母,就变成对应的小写字母;
  2. 如果是小写字母,就变成对应的大写字母;
  3. 如果是数字,就变成 * 。

请你按照这个规则,帮小杨把整串字符转换好。


输入格式

输入一共有两行。

第一行:一个整数,表示这串字符一共有多少个字符。

第二行:一串连续的字符,中间没有空格。


输出格式

输出转换后的字符。

注意:

输出时字符之间不要加空格。


样例1

输入:

5
aBc98

输出:

AbC**


样例解释

原来的字符是:aBc98

从左到右一个一个看:

  1. a 是小写字母,所以变成 A ;
  2. B 是大写字母,所以变成 b ;
  3. c 是小写字母,所以变成 C ;
  4. 9 是数字,所以变成 * ;
  5. 8 是数字,所以变成 * 。

所以最后输出:AbC**


数据范围

字符个数不会超过 1000 个。

每个字符只会是大写字母、小写字母或数字。


时间与内存限制

  • 时间限制:1.0 s
  • 内存限制:512.0 MB
💡 查看提示(先自己想一想再看)
考察知识点:字符串处理、条件判断、for循环;解题思路:逐个遍历输入的字符,根据字符类型分别进行转换后输出;常见易错点:大小写转换时注意ASCII码差值的正确使用('a' - 'A' = 32),数字判断不要遗漏0和9的边界,输出时不要添加空格。
⚙ 开始做这道题 0 人做过 · 2 收藏 · 16 浏览

讨论(0)