c语言编程。从标准输入设备上输入一个字符串,分别统计其中每个数字,空格,字母及其他字符出现的次数。

求解... 求解 展开
 我来答
多xdl点事
2019-05-27 · TA获得超过1189个赞
知道答主
回答量:19
采纳率:0%
帮助的人:2436
展开全部

代码如下:

#include <stdio.h>

int main(){

char stringss[1024];

int i,num[4]={0};

int j = 0;

char 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[i]<='Z'||stringss[i]>='a'&&stringss[i]<='z')//统计字符

num[2]++;

else

num[3]++;//其他

}

printf("出现的数字%d个,出现的空格%d个,出现的字母%d个,其他字符%d个\n",num[0],num[1],num[2],num[3]);

}

程序运行结果如下:

扩展资料

C语言中对字符串的统计:可以通过循环数组的方式去一个一个的比较字符,然后进行统计。首先可以通过循环的方式读取每个数字,直到读到换行符“\n”,就结束读取,把读取的字符存到数组中,同时记录下字符的长度,然后进行循环统计,打印出现个数就完成了。

参考资料:百度百科-C语言

百度网友755a382
推荐于2017-11-28
知道答主
回答量:59
采纳率:0%
帮助的人:22.9万
展开全部
//.输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。
#include"stdio.h"
void scan(char *a);
int word=0,space=0,num=0,nother=0;
void main()
{
printf("输入一行字符:");
char a[40];
gets(a);
scan(a);
printf("字母%d,\n空格%d,\n数字%d,\n其他%d\n\n",word,space,num,nother);
}
void scan(char *a)
{
int i;
for(i=0;a[i]!='\0';i++)
{
if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z'))word++;
else if(a[i]==32)space++;
else if(a[i]>='0'&&a[i]<='9')num++;
else nother++;
}
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e3693e5
2013-05-21 · TA获得超过314个赞
知道答主
回答量:144
采纳率:0%
帮助的人:66.9万
展开全部
只需对这个字符串进行遍历-------第一步
使用if -----else if----else 条件判断你要得条件就行了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-05-21
展开全部
#include <stdio.h>
void main()
{
char c;
int letters=0,space=0,digit=0,others=0;
printf("please input some characters\n");
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
others++;
}
printf("all in all:char=%d space=%d digit=%d others=%d\n",letters,space,digit,others);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式