用C++写代码:从键盘上输入一串字符,分别统计其中的大写字母、小写字母、数字的个数,然后将非大写字母、小写字母、数字的字符全部用‘#’代替,最后输出更改后的字符串。
时间: 2023-11-27 13:50:32 浏览: 68
以下是用C++编写的代码:
```c++
#include <iostream>
using namespace std;
int main() {
string str;
int upperCnt = 0, lowerCnt = 0, digitCnt = 0;
cout << "请输入一串字符:";
getline(cin, str);
for (int i = 0; i < str.length(); i++) {
if (str[i] >= 'A' && str[i] <= 'Z') {
upperCnt++;
} else if (str[i] >= 'a' && str[i] <= 'z') {
lowerCnt++;
} else if (str[i] >= '0' && str[i] <= '9') {
digitCnt++;
} else {
str[i] = '#';
}
}
cout << "大写字母个数:" << upperCnt << endl;
cout << "小写字母个数:" << lowerCnt << endl;
cout << "数字个数:" << digitCnt << endl;
cout << "更改后的字符串:" << str << endl;
return 0;
}
```
代码思路:
1. 定义一个字符串变量 `str`,并从键盘输入一串字符;
2. 定义三个计数器变量 `upperCnt`、`lowerCnt` 和 `digitCnt`,分别用于统计大写字母、小写字母、数字的个数;
3. 遍历字符串中的每个字符,根据其 ASCII 码值判断其类型,并分别累加相应的计数器变量;
4. 如果字符不是大写字母、小写字母、数字,则将其替换为 `#`;
5. 输出统计结果和更改后的字符串。
运行示例:
```
请输入一串字符:Hello 123 World!
大写字母个数:2
小写字母个数:8
数字个数:3
更改后的字符串:Hello###World#
```
阅读全文