描述 将字母的大小写转换一下,非字母字符原样输出。 格式 输入格式 输出格式 样例1 样例输入1 I like ACM/ICPC. Hello World! +-*/ are operators. 样例输出1 i LIKE acm/icpc. hELLO wORLD! +-*/ ARE OPERATORS.
时间: 2023-05-27 21:01:48 浏览: 191
算法1:
遍历字符串中的每个字符,如果该字符为字母,就将其转换为相反的大小写形式。
C++ 代码
算法2:
使用标准库函数isalpha判断字符是否为字母,若是,则使用标准库函数tolower或toupper转换其大小写形式。
C++ 代码
相关问题
描述 将字母的大小写转换一下,非字母字符原样输出。 格式 输入格式 输出格式 样例1 样例输入1 I like ACM/ICPC. Hello World! +-*/ are operators. 样例输出1 i LIKE acm/icpc. hELLO wORLD! +-*/ ARE OPERATORS. 代码写一下
实现思路:
1. 遍历字符串中每个字符;
2. 如果该字符是大写字母,则转换成小写字母;
3. 如果该字符是小写字母,则转换成大写字母;
4. 否则,原样输出该字符。
代码实现:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char str[100]; // 定义字符串数组,输入字符串
cin.getline(str, 100);
for(int i = 0; i < strlen(str); i++) {
if(str[i] >= 'A' && str[i] <= 'Z') {
str[i] += ('a' - 'A'); // 大写字母转小写字母
} else if(str[i] >= 'a' && str[i] <= 'z') {
str[i] -= ('a' - 'A'); // 小写字母转大写字母
}
cout << str[i]; // 输出字符
}
return 0;
}
注意事项:
1. 字符转换时,如果用字符常量,最好使用字符型变量对应的ASCII码值,不要使用直接的字符常量;
2. 输出时一定要输出字符而不是ASCII码值,否则结果不正确。
写一个Java程序 用acm模式 输入1到9点字符串 输出对应手机9键中字母的组合
好的,以下是Java程序的代码:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] letters = {"", "", "abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};
while (sc.hasNext()) {
String input = sc.next();
StringBuilder output = new StringBuilder();
for (int i = 0; i < input.length(); i++) {
int digit = input.charAt(i) - '0';
String letter = letters[digit];
output.append(letter.charAt(0));
}
System.out.println(output.toString());
}
}
}
这个程序使用了ACM模式,可以不断输入字符串并输出对应的字母组合。输入的字符串必须是1到9之间的数字,否则程序会出错。