统计各类字符个数pta

时间: 2023-11-15 14:26:17 浏览: 46
好的,这是一个常见的字符串统计问题。你可以使用一个长度为 256 的整数数组来记录每个字符出现的次数,然后遍历字符串并更新数组中对应字符的计数器即可。以下是实现该算法的 C++ 代码示例: ```c++ #include <iostream> #include <cstring> using namespace std; int main() { char str[1000]; int count[256] = {0}; // 读入字符串 cin.getline(str, 1000); // 统计字符个数 int len = strlen(str); for (int i = 0; i < len; i++) { count[str[i]]++; } // 输出结果 for (int i = 0; i < 256; i++) { if (count[i] > 0) { printf("%c:%d\n", i, count[i]); } } return 0; } ``` 这段代码可以统计输入字符串中每个字符出现的次数,并输出结果。注意,该算法假定输入的字符串只包含 ASCII 码字符。如果输入的字符串中包含其它字符集中的字符,需要对代码进行相应的修改。
相关问题

分类统计各类字符个数

以下是分类统计各类字符个数的示例代码: ```c #include <stdio.h> #include <ctype.h> void StringCount(char *s) { int upper = 0, lower = 0, space = 0, digit = 0, other = 0; while (*s != '\0') { if (isupper(*s)) { upper++; } else if (islower(*s)) { lower++; } else if (*s == ' ') { space++; } else if (isdigit(*s)) { digit++; } else { other++; } s++; } printf("%d %d %d %d %d", upper, lower, space, digit, other); } ``` 该函数接收一个字符串指针作为参数,然后遍历整个字符串,统计其中大写字母、小写字母、空格、数字以及其它字符的个数,并按照 大写字母个数 小写字母个数 空格个数 数字个数 其它字符个数 的格式输出。

c语言统计各类字符个数

以下是C语言统计各类字符个数的代码实现: ```c #include <stdio.h> #include <ctype.h> int main() { char ch; int letter = 0, digit = 0, space = 0, other = 0; while ((ch = getchar()) != EOF) { if (isalpha(ch)) // 判断是否为字母 { letter++; } else if (isdigit(ch)) // 判断是否为数字 { digit++; } else if (isspace(ch)) // 判断是否为空格 { space++; } else // 其他字符 { other++; } } printf("字母个数:%d\n", letter); printf("数字个数:%d\n", digit); printf("空格个数:%d\n", space); printf("其他字符个数:%d\n", other); return 0; } ```

相关推荐

最新推荐

recommend-type

Python实现统计英文单词个数及字符串分割代码

主要介绍了Python实现统计英文单词个数及字符串分割方法,本文分别给出代码实例,需要的朋友可以参考下
recommend-type

C语言中使用lex统计文本文件字符数

主要介绍了C语言中使用lex统计文本文件字符数,本文直接给出实现代码,需要的朋友可以参考下
recommend-type

python统计字母、空格、数字等字符个数的实例

今天小编就为大家分享一篇python统计字母、空格、数字等字符个数的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

C语言统计一串字符中空格键、Tab键、回车键、字母、数字及其他字符的个数(Ctrl+Z终止输入)

主要介绍了C语言统计一串字符中空格键、Tab键、回车键、字母、数字及其他字符的个数(Ctrl+Z终止输入) ,需要的朋友可以参考下
recommend-type

C语言实现将字符串转换为数字的方法

主要介绍了C语言实现将字符串转换为数字的方法,涉及系统函数atoi()函数的使用技巧,需要的朋友可以参考下
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

用matlab绘制高斯色噪声情况下的频率估计CRLB,其中w(n)是零均值高斯色噪声,w(n)=0.8*w(n-1)+e(n),e(n)服从零均值方差为se的高斯分布

以下是用matlab绘制高斯色噪声情况下频率估计CRLB的代码: ```matlab % 参数设置 N = 100; % 信号长度 se = 0.5; % 噪声方差 w = zeros(N,1); % 高斯色噪声 w(1) = randn(1)*sqrt(se); for n = 2:N w(n) = 0.8*w(n-1) + randn(1)*sqrt(se); end % 计算频率估计CRLB fs = 1; % 采样频率 df = 0.01; % 频率分辨率 f = 0:df:fs/2; % 频率范围 M = length(f); CRLB = zeros(M,1); for
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。