| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1977 人关注过本帖
标题:请大神指出错误,谢谢!
只看楼主 加入收藏
过客sunshine
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2016-5-2
结帖率:50%
收藏
已结贴  问题点数:10 回复次数:8 
请大神指出错误,谢谢!
#include <stdio.h>
int main(){
    char c;
    int ct1=0,ct2=0,ct3=0,ct4=0;
    while ((c=getchar())!='\n'){
        if(c>='A'&&c<='Z'||c>='a'&&c<='z')ct1++;
        if(c=' ')ct2++;
        if(c>='0'&&c<='9')ct3++;
        else ct4++;
    }
        printf("英文字母:%d,空格:%d,数字:%d,其他字符:%d\n",ct1,ct2,ct3,ct4);
        return 0;
}
搜索更多相关主题的帖子: include 
2016-05-02 13:38
过客sunshine
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2016-5-2
收藏
得分:0 
回复 楼主 过客sunshine
题目是:输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数
2016-05-02 13:41
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:2 
以下是引用过客sunshine在2016-5-2 13:38:53的发言:

#include  
int main(){
    char c;
    int ct1=0,ct2=0,ct3=0,ct4=0;
    while ((c=getchar())!='\n'){
        if(c>='A'&&c<='Z'||c>='a'&&c<='z')ct1++;
        if(c=' ')ct2++;
        if(c>='0'&&c<='9')ct3++;
        else ct4++;
    }
        printf("英文字母:%d,空格:%d,数字:%d,其他字符:%d\n",ct1,ct2,ct3,ct4);
        return 0;
}
if(c=' ')改成if(c==' ');
所有的if语句后面加一句 continue;
2016-05-02 14:19
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:2 
回复 楼主 过客sunshine
=是赋值,将=右面的常量赋值给=左面的变量
==是逻辑运算符的相等
2016-05-03 09:50
未来大仙
Rank: 6Rank: 6
来 自:黑窟窿
等 级:侠之大者
威 望:4
帖 子:263
专家分:491
注 册:2015-6-20
收藏
得分:2 
第二个if==

好好学习,天天向上!
2016-05-03 10:08
过客sunshine
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2016-5-2
收藏
得分:0 
回复 3楼 linlulu001
请问大神为什么要加上continue呢?
2016-05-04 17:37
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:0 
不加的话,else的值会出现差错,如果输出的不是数字,那么其它的值就会加1,else和离他最近的if组成if....else...。如果你在第一个if之后,每个if前加一句else可以不用加continue。
我想你自己写的代码你自己最容易理解,也就没加else给你,换个continue给你,没想到你还是没能理解。

[此贴子已经被作者于2016-5-5 09:59编辑过]

2016-05-04 17:54
mege
Rank: 2
来 自:湖南株洲
等 级:论坛游民
帖 子:9
专家分:37
注 册:2016-5-4
收藏
得分:2 
不用continue就用if ...... else if   
2016-05-05 11:07
shasheng
Rank: 3Rank: 3
来 自:李猜
等 级:论坛游侠
威 望:1
帖 子:22
专家分:103
注 册:2016-1-7
收藏
得分:2 
正确代码
#include <stdio.h>
int main(){
    char c;
    int ct1=0,ct2=0,ct3=0,ct4=0;
    while ((c=getchar())!='\n'){
        if(c>='A'&&c<='Z'||c>='a'&&c<='z') ct1++;
        if(c==' ') ct2++;
        if(c>='0'&&c<='9') ct3++;
        else ct4++;
    }
        printf("英文字母:%d,空格:%d,数字:%d,其他字符:%d\n",ct1,ct2,ct3,ct4);
        return 0;
}
2016-05-05 17:14
快速回复:请大神指出错误,谢谢!
数据加载中...
 
   



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

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