2025-03-15 学习记录--C/C++-PTA 练习3-4 统计字符

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻

一、题目描述 ⭐️

练习3-4 统计字符

本题要求编写程序,输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。

输入格式:
输入为10个字符。最后一个回车表示输入结束,不算在内。

输出格式:

在一行内按照

letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数

的格式输出。

输入样例:

c 复制代码
aZ &
09 Az

输出样例:

c 复制代码
letter = 4, blank = 3, digit = 2, other = 1

二、代码(C语言)⭐️

c 复制代码
#include <stdio.h>  // 包含标准输入输出库,用于使用scanf和printf等函数

int main() {
    char strArr[12];  // 定义一个字符数组strArr,大小为12,用于存储输入的字符

    // 使用for循环从用户输入中读取10个字符,并存储到strArr数组中
    for(int i = 0; i < 10; i++) {
        scanf("%c", &strArr[i]);  // 从标准输入读取一个字符,并存储到strArr[i]中
    }

    // 定义四个整数变量n1, n2, n3, n4,用于统计不同类型的字符数量
    int n1 = 0, n2 = 0, n3 = 0, n4 = 0;

    // 使用for循环遍历strArr数组中的前10个字符
    for(int i = 0; i < 10; i++) {
        // 判断当前字符是否为字母(包括大小写)
        if((strArr[i] >= 'a' && strArr[i] <= 'z') || (strArr[i] >= 'A' && strArr[i] <= 'Z')) {
            n1++;  // 如果是字母,n1加1
        } 
        // 判断当前字符是否为空格或换行符
        else if(strArr[i] == ' ' || strArr[i] == '\n') {
            n2++;  // 如果是空格或换行符,n2加1
        } 
        // 判断当前字符是否为数字
        else if(strArr[i] >= '0' && strArr[i] <= '9') {
            n3++;  // 如果是数字,n3加1
        } 
        // 如果当前字符不是字母、空格、换行符或数字,则归类为其他字符
        else {
            n4++;  // 如果是其他字符,n4加1
        }
    }

    // 输出统计结果:字母数量、空格/换行符数量、数字数量、其他字符数量
    printf("letter = %d, blank = %d, digit = %d, other = %d", n1, n2, n3, n4);

    return 0;  // 程序正常结束,返回0
}
相关推荐
qq_284274052 小时前
机械设计基础·滚动轴承全解(类型·代号·选型·寿命)+轮系与蜗杆蜗轮传动
笔记·学习·自动化·制造
2603_965148117 小时前
社区与学习资源:从入门到精通的API选品学习路径
数据库·人工智能·python·学习·数据挖掘
Navigator_Z8 小时前
LeetCode //C - 1289. Minimum Falling Path Sum II
c语言·算法·leetcode
himobrinehacken8 小时前
取模运算的汇编奥秘揭秘
c语言·安全
kaixin_啊啊9 小时前
【用于更准确 G×E 基因组预测的大规模作物数据集与基于深度学习的多模态融合框架】论文学习
人工智能·深度学习·学习
xier_ran9 小时前
【infra之路】AI 编译器学习笔记(六):重拾 C++——lambda 与 MLIR 中的回调
c++·笔记·学习
别动我齐刘海11 小时前
Linux 系统调试学习2
linux·运维·c++·人工智能·学习·机器学习·机器人
青岚_Nox11 小时前
C语言实战:带你手写一个带"计时功能"的猜数字小游戏
c语言
m4Rk_11 小时前
【论文阅读】Agent 记忆机制(99):PrisMem——从整体分数搜索走向能力驱动的记忆自进化
论文阅读·人工智能·学习·开源·github
PC2005-cloud13 小时前
Mysql学习笔记:InnoDB Cluster 集群从零搭建实战,基于 Docker 实现高可用读写分离架构
笔记·学习·mysql