C++【jzoj】计算英文字母的个数 题目描述 从键盘输入一串字符串,因输入的未知性,数组只接受英文字母,且以“.”结束,请计算出数组中英文字母出现的个数,并按照字母的ascII码从大到小按序输出。
时间: 2024-04-09 20:28:35 浏览: 15
可以使用一个大小为26的数组来统计英文字母的个数。首先,初始化数组的所有元素为0。然后,遍历输入的字符串,如果字符是英文字母,则将对应的数组元素加一。最后,按照字母的ASCII码从大到小的顺序输出数组元素不为0的字母及其个数。
以下是一个示例代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
int count[26] = {0};
cout << "请输入字符串:";
getline(cin, str);
for (char c : str) {
if (isalpha(c)) {
count[toupper(c) - 'A']++;
}
}
for (int i = 25; i >= 0; i--) {
if (count[i] > 0) {
cout << (char)('A' + i) << ": " << count[i] << endl;
}
}
return 0;
}
```
注意,这里使用了`isalpha`函数来判断字符是否是英文字母,使用了`toupper`函数来将小写字母转换为大写字母。
相关问题
C++题目:从键盘输入一个字符串到字符数组中,将其中的小写英文字母复制到另外一个字符数组中并输出。
好的,这是一个简单的 C++ 代码示例,可以实现你的要求:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
int main() {
const int MAX_LEN = 100;
char str[MAX_LEN];
char lower[MAX_LEN];
int len = 0, count = 0;
cout << "请输入一个字符串:";
cin.getline(str, MAX_LEN);
len = strlen(str);
for (int i = 0; i < len; i++) {
if (islower(str[i])) {
lower[count++] = str[i];
}
}
lower[count] = '\0';
cout << "小写字母为:" << lower << endl;
return 0;
}
```
代码中主要包括以下几个步骤:
1. 定义了两个字符数组 `str` 和 `lower`,分别用于存储用户输入的字符串和小写字母。
2. 通过 `cin.getline` 函数从键盘读入用户输入的字符串,存储在 `str` 数组中。
3. 使用 `strlen` 函数计算出字符串的长度,便于后续的遍历。
4. 遍历 `str` 数组,如果某个字符是小写字母,就将其复制到 `lower` 数组中。
5. 将 `lower` 数组最后一个元素赋值为 `'\0'`,表示字符串的结束。
6. 最后输出 `lower` 数组中的小写字母。
希望这个例子能够帮助到你!
从键盘输入一串字符并删除该字符串中所有大写字母字符c++编程
可以使用C++中的字符串处理函数erase和isupper来实现该功能。具体代码如下:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
getline(cin, str); // 从键盘输入一串字符
// 遍历字符串中的每个字符,如果是大写字母就删除
for (int i = 0; i < str.length(); i++) {
if (isupper(str[i])) {
str.erase(i, 1);
i--; // 删除后需要将i回退一位
}
}
cout << "删除大写字母后的字符串为:" << str << endl;
return 0;
}
```
其中,isupper函数判断一个字符是否为大写字母,如果是返回非零值,否则返回0。erase函数可以删除字符串中指定位置的字符。需要注意的是,每次删除后需要将索引i回退一位,避免跳过下一个字符。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)