C语言,给出一个文本,怎么分别字符进行统计?

发布网友

我来回答

3个回答

热心网友

#include<stdio.h>

char s[10000];

int main()

{

int a=0,b=0,c=0,d=0;

gets(s);

int i;

for(i=0;s[i]!='\0';i++)

{

if(s[i]<='z'&&s[i]>='a'||s[i]>='A'&&s[i]<='Z')

a++;//字母数 

else if(s[i]==' ')

b++;//空格数 

else if(s[i]>='0'&&s[i]<='9')

c++;//数字数 

else 

d++;//其他字符

}

printf("字母%d个\n空格%d个\n数字%d个\n其他字符%d个",a,c,b,d);

return 0;

}

热心网友

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

int main() {

char s[100];

int countLetter = 0;

int countNum = 0;

int countSpace = 0;

int countOther = 0;

printf("请输入一个字符串:");

scanf("%[^\n]",s);

for(int i = 0;i< strlen(s);i++){

if((*(s+i)>='A'&&*(s+i)<='Z')||(*(s+i)>='a'&&*(s+i)<='z')) {

countLetter++;

continue;

}

if(*(s+i)>='0'&&*(s+i)<='9') {

countNum++;

continue;

}

if(*(s+i)==' ') {

countSpace++;

continue;

}

else

countOther++;

}

printf("字母有:%d个  数字有:%d个  空格有:%d个  其他字符有:%d个",

countLetter,countNum,countSpace,countOther);

return 0;

}

热心网友

您好,很高兴回答您的问题。
您说的这个问题,不是很复杂。主要就是要学会输入一串字符,这个可以用gets函数实现;第二就是统计各类字符个数,这个可以分别设置不同的变量用来存放,注意的一点是一定都要赋初始值为0。接下来就是用for循环将这个一串字符逐一取出,一个个判断是否是各类字符,是哪一类,那么用来存放结果的变量值就增加一个。
以上就是我的回答,希望能帮助到您。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com