| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 191387 人关注过本帖, 1 人收藏
标题:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
只看楼主 加入收藏
朝壑
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-4-21
收藏
得分:0 
我这个哪里出毛病了?

#include<stdio.h>
int main()
{
    char c;
    int count1=0,count2=0,count3=0,count4=0,count5=0;
    while((c=getchar())!='\n')
        if(c>='a'&&c<='z')
            count1++;
        else if(c>='A'&&c<='Z')
            count2++;
        else if(c=' ')
            count3++;
        else if(c>='0'&&c<='9')
            count4++;
        else count5++;
        printf("zhongwen=%d,yingwen=%d,kongge=%d,shuzi=%d,qita=%d\n",count1,count2,count3,count4,count5);
        return 0;


}
2016-04-21 17:01
朝壑
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-4-21
收藏
得分:0 
回复 4楼 Y_Jo_1
其它是指什么样的字符?
2016-04-21 17:11
哈利60
Rank: 2
等 级:论坛游民
帖 子:33
专家分:12
注 册:2016-6-3
收藏
得分:0 
回复 楼主 不在状态
#include<stdio.h>
int main()
{
    char a[100];
    int i = 0, letter = 0, space = 0, digital = 0, other = 0;
    printf("please enter ");
    scanf("%s", a);
    while (a[i] != '\0')
    {
        if (a[i] >= 'a'&&a[i] <= 'z' || a[i] <= 'Z'&&a[i]>= 'A')
            letter++;
        else if (a[i] == ' ')
            space++;
        else if (a[i] >= '0'&&a[i] <= '9')
            digital++;
        else
            other++;
    }
    printf("字母= %d,空格= %d,数字= %d,其它= %d\n", letter,space,digital,other);
    return 0;
}
2016-06-04 10:00
哈利60
Rank: 2
等 级:论坛游民
帖 子:33
专家分:12
注 册:2016-6-3
收藏
得分:0 
回复 21楼 朝壑
c==' ' 少一个=
2016-06-04 10:02
q912936296
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-6-6
收藏
得分:0 
回复 21楼 朝壑
实际上是这样(c>='A'&&c<='Z'||c>='a'&&c<='z')这才是正确的,前面3楼的这里不小心重复了。
2016-06-06 17:24
学习C的我
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-10-31
收藏
得分:0 
回复 3楼 laznrbfe
我想问一下  为什么要用两个=来作为条件?
2016-10-31 17:54
xpan01061025
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-3-3
收藏
得分:0 
回复 9楼 吴军旗
getchar()是什么作用
2017-03-03 11:59
wangsongsir
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-3-8
收藏
得分:0 
回复 3楼 laznrbfe
为什么输入的第一个数字无法计入循环,输出的数字=0
2017-03-08 14:51
tfzsj
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-5-9
收藏
得分:0 
  if(ch>='a'&&ch<='z'||ch<='z'&&ch>='a')

新手疑问一下,请大虾赐教,if语句表达式 为什么要 || 后面要再增加一行  ch<="z"&&ch>="a"  

他和前面的 ch>="a"&& ch<='z' 就是反过来而已,能不能说一下理由,我不明白~~谢谢了。
2017-05-09 23:49
ab2642560312
Rank: 2
等 级:论坛游民
帖 子:4
专家分:10
注 册:2017-7-10
收藏
得分:0 
回复 29楼 tfzsj
打错了 应该是  if(ch>='a'&&ch<='z'||ch<='Z'&&ch>='A')
2017-07-10 16:31
快速回复:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017447 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved