酷代码 AI
菜单

输入一行字符,统计出其中数字字符, 大写字符, 小写字符, 空格字符和 特殊字符的个数。 注: 除了数字字符, 大写字符, 小写字符, 空格字符 以外的字符都是特殊字符 输入 一行字符串,总长度不超1000。 输出 分别输出数字字符, 大写字符, 小写字符, 空格 和 特殊字符的个数。中间由空格隔开 不需要统计换行!

以下是使用不同编程语言实现统计输入字符串中数字字符、大写字符、小写字符、空格字符和特殊字符个数的代码: Python 实现 ```python # 获取用户输入的字符串 input_str = input() # 初始化各类字符的计数为 0 digit_count = 0 upper_count = 0 lower_count = 0 space_count = 0 special_count = 0 # 遍历输入字符串中的每个字符 for char in input_str: if char.isdigit(): digit_count += 1 elif char.isupper(): upper_count += 1 elif char.islower(): lower_count += 1 elif char.isspace(): space_count += 1 else: special_count += 1 # 输出各类字符的计数,用空格分隔 print(digit_count, upper_count, lower_count, space_count, special_count) ``` 代码解释 - 首先使用 `input()` 函数获取用户输入的字符串。 - 然后初始化五个变量分别用于统计数字字符、大写字符、小写字符、空格字符和特殊字符的个数。 - 接着遍历输入字符串中的每个字符,根据字符的类型增加相应的计数。 - 最后将各类字符的计数用空格分隔后输出。 Java 实现 ```java import java.util.Scanner; public class CharacterCount { public static void main(String[] args) { // 创建 Scanner 对象用于读取用户输入 Scanner scanner = new Scanner(System.in); // 获取用户输入的字符串 String inputStr = scanner.nextLine(); scanner.close(); // 初始化各类字符的计数为 0 int digitCount = 0; int upperCount = 0; int lowerCount = 0; int spaceCount = 0; int specialCount = 0; // 遍历输入字符串中的每个字符 for (int i = 0; i < inputStr.length(); i++) { char c = inputStr.charAt(i); if (Character.isDigit(c)) { digitCount++; } else if (Character.isUpperCase(c)) { upperCount++; } else if (Character.isLowerCase(c)) { lowerCount++; } else if (Character.isWhitespace(c)) { spaceCount++; } else { specialCount++; } } // 输出各类字符的计数,用空格分隔 System.out.println(digitCount + " " + upperCount + " " + lowerCount + " " + spaceCount + " " + specialCount); } } ``` 代码解释 - 使用 `Scanner` 类获取用户输入的字符串。 - 初始化五个变量用于统计各类字符的个数。 - 通过 `for` 循环遍历输入字符串的每个字符,利用 `Character` 类的方法判断字符类型并增加相应的计数。 - 最后将各类字符的计数用空格分隔后输出。 C++ 实现 ```cpp #include <iostream> #include <string> int main() { // 获取用户输入的字符串 std::string inputStr; std::getline(std::cin, inputStr); // 初始化各类字符的计数为 0 int digitCount = 0; int upperCount = 0; int lowerCount = 0; int spaceCount = 0; int specialCount = 0; // 遍历输入字符串中的每个字符 for (char c : inputStr) { if (std::isdigit(c)) { digitCount++; } else if (std::isupper(c)) { upperCount++; } else if (std::islower(c)) { lowerCount++; } else if (std::isspace(c)) { spaceCount++; } else { specialCount++; } } // 输出各类字符的计数,用空格分隔 std::cout << digitCount << " " << upperCount << " " << lowerCount << " " << spaceCount << " " << specialCount << std::endl; return 0; } ``` 代码解释 - 使用 `std::getline` 函数获取用户输入的字符串。 - 初始化五个变量用于统计各类字符的个数。 - 通过范围 `for` 循环遍历输入字符串的每个字符,利用 `<cctype>` 头文件中的函数判断字符类型并增加相应的计数。 - 最后将各类字符的计数用空格分隔后输出。 [2025-12-07 17:35:36 | AI问答 | 1035点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多