输入 输入为一行,为一个字符串,且都是小写字母;长度不超过1000 输出 输出为一行,为一个小写字母和一个整数,分别表示出现次数最高的小写字母及其对应的出现次数,中间用单个空格隔开。(如有多个频次相同的字母,取在字符串中最先出现的字母)c++代码
时间: 2023-06-03 07:02:39 浏览: 43
```
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int cnt[26]; // 存储每个字母出现的次数
int main() {
string s;
cin >> s;
int len = s.length();
for (int i = 0; i < len; i++) {
cnt[s[i] - 'a']++; // 统计出现次数
}
int maxn = 0; // 出现最多的次数
int maxc = 0; // 对应的字母
for (int i = 0; i < 26; i++) {
if (cnt[i] > maxn) {
maxn = cnt[i];
maxc = i;
}
}
cout << (char)(maxc + 'a') << ' ' << maxn << endl; // 输出结果
return 0;
}
```
相关问题
输入一行字符串,将其中中所有大写字母转换为小写字母小写字母转换为大写字母c语言
实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int len, i;
printf("请输入字符串:");
gets(str); // 输入字符串
len = strlen(str); // 获取字符串长度
for(i = 0; i < len; i++) {
if(str[i] >= 'A' && str[i] <= 'Z') {
str[i] = str[i] + 32; // 大写字母转换为小写字母
}
else if(str[i] >= 'a' && str[i] <= 'z') {
str[i] = str[i] - 32; // 小写字母转换为大写字母
}
}
printf("转换后的字符串为:%s\n", str);
return 0;
}
```
注意:
1. 使用 `gets()` 函数输入字符串,可以输入包含空格的字符串。
2. 大写字母和小写字母在 ASCII 码表中相差 32,所以对应的转换操作为加/减 32。
题目描述 把一个字符串里所有的大写字母换成小写字母,小写字母换成大写字母,其他字符保持不变。 输入 输入为一行字符串,其中不含空格,长度不超过80个字符。 输出 输出转换好的字符串。 C++
以下是C++实现代码:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cin >> s;
for (int i = 0; i < s.size(); i++) {
if (s[i] >= 'a' && s[i] <= 'z') {
s[i] = s[i] - 'a' + 'A';
} else if (s[i] >= 'A' && s[i] <= 'Z') {
s[i] = s[i] - 'A' + 'a';
}
}
cout << s << endl;
return 0;
}
```
首先读入字符串,然后遍历字符串中的每个字符。如果字符是小写字母,则将其转换为大写字母;如果字符是大写字母,则将其转换为小写字母。最后输出转换后的字符串即可。