标题:谁帮我看看这个哪里错了
只看楼主
zhjilu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-3-16
结帖率:0
已结贴  问题点数:20 回复次数:10 
谁帮我看看这个哪里错了
main()
{
    char nianling;
    scanf("%c",&nianling);
    if (nianling=='a')
    {
        printf("15~20");
    }
    if (nianling=='b')
    {
        printf("21~30");
    }



    if (nianling!='a'||nianling!='b')
   {
        printf("chu  ju");
   }

    getch();

}
搜索更多相关主题的帖子: 编者按 博客 专业 
2010-03-16 19:43
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
得分:3 
if()
else if()
else
getch();干嘛这个结束呢?不懂
2010-03-16 19:46
zhjilu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-3-16
得分:0 
讲清楚点啊..新手看不太懂

getch()因为用的是win-tc
2010-03-16 19:47
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
得分:0 
if语句的语法
有三种

一种单独1f()
一种if
else if
else if
else

一种if
else if

比如你的第一个if判断之后
后面应该跟else if或者 else或者什么都不跟

语法好好学学吧
2010-03-16 20:00
lixnkei
Rank: 4
来 自:樱之国度
等 级:业余侠客
帖 子:133
专家分:227
注 册:2008-5-13
得分:3 
代码语法上是没错的。但逻辑上有点搞不懂。。。



if (nianling!='a'||nianling!='b')



那么肯定会输出啦。 nianling 不等于 a 或者 不等于 b 的时候输出。那不就意味着必定输出了么?




老师说:会写代码的人多如牛毛,但写得很规范的却不多。代码要规范,养成好习惯~!
2010-03-16 20:02
zhjilu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-3-16
得分:0 
我要做的是nianling等于a那就输出15~20  如果等于b输出21~30

如果nianling不等于a和b,那就输出chu ju


但是现在的情况是 我输入a却出现了 15~20chu ju

错误在哪里啊
2010-03-16 20:15
zhjilu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-3-16
得分:0 
以下是引用lixnkei在2010-3-16 20:02:50的发言:

代码语法上是没错的。但逻辑上有点搞不懂。。。



if (nianling!='a'||nianling!='b')



那么肯定会输出啦。 nianling 不等于 a 或者 不等于 b 的时候输出。那不就意味着必定输出了么?
我看懂了...

应该把||换成&&对吧


多谢两位大大指点!!
2010-03-16 20:19
独孤求败1989
Rank: 2
等 级:论坛游民
帖 子:41
专家分:36
注 册:2009-11-8
得分:3 
晕 五楼上那位不是跟你说了么 nianling!='a'||nianling!='b'这里你用 或 就不对了,“或”,“和” 你能分清么,“或”的话只要有一个条件成立就为真了 当程序执行到第一个if是条件成立,不就输出15~20,执行到第三个时就输出chu  ju,基本知识要看好,看看你的课本吧……
2010-03-16 20:27
wuzhanghao88
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:45
专家分:146
注 册:2009-10-25
得分:3 
#include<stdio.h>
void main()
{
    char nianling;
    scanf("%c",&nianling);
    if (nianling=='a')
    {
        printf("15~20");
    }
    if (nianling=='b')
    {
        printf("21~30");
    }



    if (nianling!='a'&&nianling!='b')
   {
        printf("chu  ju");
   }

   

}

你最后是想要一个getchar()吧!这一般要有循环一起用的!%c是指一个字符!
2010-03-16 21:11
树上月
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:114
专家分:154
注 册:2010-1-6
得分:3 
#include<stdio.h>
int main()
{
    char nianling;
    scanf("%c",&nianling);
    if (nianling=='a')
    {
        printf("15~20");
    }
   else  if (nianling=='b')
    {
        printf("21~30");
    }



    else
   {
        printf("chu  ju");
   }

  return 0;
}

每一个不曾起舞的日子,都是对未来的一种辜负......
2010-03-16 22:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-299624-1-1.html




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

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