|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本题要求编写程序,输入N个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。
输入格式:
输入在第一行中给出正整数N,第二行输入N个字符,最后一个回车表示输入结束,不算在内。
输出格式:
在一行内按照
letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数
的格式输出。请注意,等号的左右各有一个空格,逗号后有一个空格。
输入样例:
10
aZ &
09 Az
输出样例:
letter = 4, blank = 3, digit = 2, other = 1
这题用C或者C++怎么写
你可以使用C或C++来解决这个问题。以下是一个C++的示例代码:
- #include <iostream>
- using namespace std;
- int main() {
- int N;
- cin >> N;
- cin.ignore(); // 忽略第一行的回车
- int letter = 0, blank = 0, digit = 0, other = 0;
- char ch;
- for (int i = 0; i < N; i++) {
- cin.get(ch);
- if (isalpha(ch)) {
- letter++;
- } else if (ch == ' ' || ch == '\n') {
- blank++;
- } else if (isdigit(ch)) {
- digit++;
- } else {
- other++;
- }
- }
- cout << "letter = " << letter << ", blank = " << blank << ", digit = " << digit << ", other = " << other << endl;
- return 0;
- }
复制代码
这段代码首先读取输入的正整数N,然后使用 cin.ignore() 函数忽略第一行的回车。接下来,我们使用一个循环读取N个字符,逐个判断字符的类型并计数。
isalpha() 函数用于判断字符是否为英文字母, isdigit() 函数用于判断字符是否为数字字符。
最后,将统计结果按照要求的格式输出即可。
希望对你有所帮助!
|
|