这是C语言课后的一道习题,网上可以找到很多相关的代码,都可以很好的基本完成题目要求
但是,我发现很多的代码都无法实现统计字符串中大于10的数字(只局限于统计0-9之间的数字)
此程序可以改进具有十位,百位,千位,甚至更大的数字的统计:
#include<stdio.h>
int main()
{
char a[50] ="1 2 3 a b c d @ 15 21 19 88 r 78 100 189 1598 46";
int i,j;
int d = 0, c = 0, e = 0,sum=0;
for (i = 0; i < 50; i++)
{
if ((a[i] >= 65 && a[i] <= 90) ||( a[i] >= 97 && a[i] <= 122))
d++;
else if (a[i] == 32)
c++;
else
{
j=i+1;
if (a[i] >= 48 && a[i] <= 57&&(a[j]==32||a[j]=='\0'))
e++;
else
if(a[i] >= 48 && a[i] <= 57&&a[j]>=48&&a[j]<=57)
{
e++;
e=e-1;
}
}
}
printf("字符中的字母的个数为:%d\n", d);
printf("字符中空格的个数为:%d\n", c);
printf("字符中数字的个数为:%d\n",e);
return 0;
}
原文链接: https://www.cnblogs.com/soyo/p/5702295.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/237627
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!