用C语言编写一个程序,输入一个字符串,统计其中各个字符出现的次数

如题所述

要编写一个C语言程序,用于统计输入字符串中各个字符出现的次数,可以参考以下代码片段:

首先,包含必要的头文件:

c
#include "pch.h"
#include
#include // 用于判断字符类型

接下来,定义主函数,初始化计数器变量:

c
int main() {
char c;
int num_count = 0, // 数字个数
bigalp_count = 0, // 大写字母个数
littlealp_count = 0, // 小写字母个数
emp_count = 0, // 空格个数
els_count = 0; // 其他字符个数

while((c = getchar()) != '\n') { // 读取输入直到换行符
// 判断字符类型并更新计数
if((c >= '0' && c <= '9')) {
num_count++;
} else if((c >= 'a' && c <= 'z')) {
littlealp_count++;
} else if((c >= 'A' && c <= 'Z')) {
bigalp_count++;
} else if(c == ' ') {
emp_count++;
} else {
els_count++;
}
}

最后,输出统计结果:

c
printf("数字个数:%d\n小写字母个数:%d\n大写字母个数:%d\n", num_count, littlealp_count, bigalp_count);
printf("空格个数:%d\n其他字符个数:%d\n", emp_count, els_count);
return 0;
}

这个程序通过遍历输入字符串,根据字符的ASCII值来判断其类型并统计出现次数。如果你想进一步优化,可以使用`ctype.h`库中的`isspace()`函数来判断空白字符。例如:

c
#include
...
while(*p) {
if(*p >= '0' && *p <= '9') {
num_count++;
} else if(isspace(*p)) {
space_count++;
} else {
other_count++;
}
p++;
}

这样可以简化判断条件。运行程序后,它将输出字符串中数字、字母、空格和其他字符的具体计数。
温馨提示:内容为网友见解,仅供参考
无其他回答

用C语言编写一个程序,输入一个字符串,统计其中各个字符出现的次数_百 ...
printf("数字个数:%d\\n小写字母个数:%d\\n大写字母个数:%d\\n", num_count, littlealp_count, bigalp_count);printf("空格个数:%d\\n其他字符个数:%d\\n", emp_count, els_count);return 0;} 这个程序通过遍历输入字符串,根据字符的ASCII值来判断其类型并统计出现次数。如果你想进一步优化...

用c语言怎么统计字符串中某一字符出现的次数
1、连接运算 concat(s1,s2,s3…sn) 相当于s1+s2+s3+…+sn.例:concat(‘11’,'aa’)='11aa’;2、求子串。 Copy(s,I,I) 从字符串s中截取第I个字符开始后的长度为l的子串。例:copy(‘abdag’,2,3)=’bda’3、删除子串。过程 Delete(s,I,l) 从字符串s中删除第I个字符开始后的长...

编写一个C语言程序:从键盘读入一行文本,统计每个英文字母出现的次数...
include#include#defineMAX100intmain(){charstr[MAX];\/\/输入的字符串,最大长度是MAX-1,因为有一个字符串结束符inti=0,count[52]={0};\/\/count数组用来存储各个字母出现的次数scanf("%s",str);while(str[i]!='\\0'){if(str[i]>='a'&&str[i]count[str[i]-97+26]++;}if(str[i]>...

c语言输入一行字符串,如何统计其中的字母和数字的个数
int other=0;char input[1000];int i;scanf("%s",input);for(i=0;input[i]!='\\0';i++){ if(input[i]>=65&&input[i]=97&&input[i]<=122){ letters++;} else if(input[i]==' '){ space++;} else if(input[i]>=48&&input[i]<=57){ digit++;} else { other++;} } ...

C语言程序设计,用户输入一个字符串,一个字符,统计该字符在字符串中出现...
printf("输入字符串(按Enter结束):\\n");gets(s);printf("输入字符(按Enter结束):");c=getchar();for(i=0;i<99;i++){if(c==s[i])n++;} printf("字符串%s中字符%c出现%d次",s,c,n);} \/\/看时间,你是用不到了,留个要学习的看吧。(字符串中可能有空格,所有不要用scanf...

用C语言编写,统计各种字符个数
1、首先打开Visual Studio软件,新建一个Win32应用程序,并且在项目下新建C语言文件,如下图所示 2、然后我们在C语言文件中导入程序要用到的库文件,如下图所示 3、接下来我们就开始实现字符统计的功能,主要是挨个读取字符串中的字符,然后判断字符的类别,如下图所示 4、最后我们运行程序,输入一个...

c语言编程。从标准输入设备上输入一个字符串,分别统计其中每个数字...
while((c=getchar()) !='\\n'){ stringss[j] = c;j++;} for(i=0;i<j;i++)\/\/统计字符串,遇到'\\0'结束 { if(stringss[i]>='0'&&stringss[i]<='9')\/\/统计数字个数 num[0]++;else if(stringss[i]==' ')\/\/统计空格 num[1]++;else if(stringss[i]>='A'&&stringss...

用c语言编程,字符统计:输入一个文本文件,分别统计出其中英文字母、空格...
int letters=0,space=0,digit=0,other=0;printf("请输入一行字符:");while ((c=getchar())!='\\n'){ if (c >= 'a'&&c <= 'z' || c >= 'A'&&c <= 'Z'){ letters++;} else if (c == ' '){ space++;} else if (c >= '0'&&c <= '9'){ digit++;} else {...

C语言编写:输入任意一串字符串,统计该字符串中出现的字符a的个数,并输...
\/*编程从键盘输入一个字符串,统计该字符串中从'a'到'z'共26个小写字母各自出现的次数,将结果存入数组中,并输出*\/ include<stdio.h> include<string.h> define N 100 main(){int i,j=0,c[26]={0};char str[N];printf("请输入一个字符串:");gets(str);for(i=0;i<strlen(str);...

C语言编写:输入任意一串字符串,统计该字符串中出现的字符a的个数,并输...
在C语言中,你可以使用以下代码来实现输入任意一串字符串并统计其中字符 'a' 出现的次数。以下是一个详细的步骤和代码片段:首先,我们需要定义一个函数来完成这个任务。以下是一个简单的示例:c include include void count_a_in_string(char *str) { int count = 0;for (int i = 0; i < ...

相似回答
大家正在搜