麻烦那位高手帮我解决这道C语言题

编程统计从键盘上输入的数字中每种数字的个数和其它字符的个数,并以字符$作为输入结束符.这题怎么做啊?... 编程统计从键盘上输入的数字中每种数字的个数和其它字符的个数,并以字符$作为输入结束符.这题怎么做啊? 展开
 我来答
百度网友4176d98f3
2006-11-21 · 超过46用户采纳过TA的回答
知道答主
回答量:128
采纳率:0%
帮助的人:0
展开全部
#include<stdio.h>
void main()
{
char ch;
int letter_sum = 0;
int digit_sum = 0;
int others_sum = 0;
printf("Please input the string:");
do
{
ch = getchar();
if((ch >= 'a'&& ch <='z') || (ch >='A'&&ch <= 'Z'))
letter_sum++;
else if(ch >= '0' && ch <= '9')
digit_sum++;
else if(ch != '$')/*$不算做其他字符,不参加统计*/
others_sum++;
}while(ch != '$');
printf("The string has %d letters.\n",letter_sum);
printf("The string has %d digits.\n",digit_sum);
printf("The string has %d others.\n",others_sum);
}
已经测试通过,好处是不限制所要测试的字符串的长度!
楼下的兄弟,当然是自己写的了!偶是学计算机的啊!
哦,不好意思,你现在变成了楼上的兄弟了,哈哈!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
浑静秀cH
2006-11-21 · TA获得超过310个赞
知道小有建树答主
回答量:527
采纳率:0%
帮助的人:560万
展开全部
zuoqiangxiang的代码还算不错 稍微给你改下

#include<stdio.h>
void main()
{
char ch;
int letter_sum = 0;
int digit_sum = 0;
int others_sum = 0;
printf("Please input the string:");
ch = getchar();
while (ch != '$')
{

if((ch >= 'a'&& ch <='z') || (ch >='A'&&ch <= 'Z'))
letter_sum++;
else if(ch >= '0' && ch <= '9')
digit_sum++;
else
others_sum++;
ch = getchar();
}
printf("The string has %d letters.\n",letter_sum);
printf("The string has %d digits.\n",digit_sum);
printf("The string has %d others.\n",others_sum);
}
这样输入每个字符的时候少判断一次 并且在第一个就是$的情况下不用运行 while循环

顺便说下 我也爱吃雪丽糍 呵呵

百度 老岩 gabmyd@126.com
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0a699a87c
2006-11-21
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
上面的兄弟是做什么的?自己写的吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式