在C语言中,统计符号个数可以通过遍历字符串的方式实现,以下是一个简单的示例,用于统计给定字符串中的各种符号(包括字母、数字、空格、标点符号等)的个数。
我们需要了解C语言中的字符类型,在C语言中,字符类型使用char
关键字表示,它可以存储一个ASCII字符,ASCII字符集包含了英文字母、数字、标点符号等常见的符号。
接下来,我们可以使用一个数组来存储各种符号的计数器,数组的索引表示符号的类型,例如0表示空格,1表示字母,2表示数字,以此类推,数组的值表示该类型的符号在字符串中出现的次数。
为了遍历字符串并统计符号个数,我们可以使用一个循环,循环从字符串的第一个字符开始,逐个检查每个字符的类型,并将其对应的计数器加1,当循环结束时,数组中的值就是各种符号的个数。
下面是一个完整的C语言程序,用于统计给定字符串中的各种符号的个数:
#include <stdio.h> #include <string.h> int main() { char str[] = "Hello, World! 123"; // 输入字符串 int count[32] = {0}; // 初始化计数器数组 int len = strlen(str); // 获取字符串长度 // 遍历字符串并统计符号个数 for (int i = 0; i < len; i++) { char ch = str[i]; if (ch >= ' ') { // 判断是否为空格或标点符号 count[ch ' ']++; // 将对应的计数器加1 } else if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) { // 判断是否为字母 count[ch 'a']++; // 将对应的计数器加1 } else if (ch >= '0' && ch <= '9') { // 判断是否为数字 count[ch '0' + 26]++; // 将对应的计数器加1 } } // 输出结果 printf("Spaces: %d ", count[0]); printf("Letters: %d ", count[1]); printf("Numbers: %d ", count[2]); printf("Punctuation: %d ", count[3]); printf("Others: %d ", count[4]); return 0; }
在这个程序中,我们首先定义了一个字符串str
和一个计数器数组count
,我们使用strlen
函数获取字符串的长度,并使用一个循环遍历字符串中的每个字符,在循环中,我们使用条件语句判断字符的类型,并将其对应的计数器加1,我们输出各种符号的个数。
需要注意的是,这个程序只统计了空格、字母、数字和标点符号这四种类型的符号,如果需要统计其他类型的符号,可以在计数器数组中添加相应的索引,并在条件语句中添加相应的判断条件,这个程序假设输入的字符串只包含ASCII字符,如果需要处理非ASCII字符,可以使用宽字符类型wchar_t
和相关的库函数。
原创文章,作者:酷盾叔,如若转载,请注明出处:https://www.kdun.com/ask/379502.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复