标题:帮忙看看哪里错了,谢谢
只看楼主
qzy051203055
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-8-24
结帖率:50%
已结贴  问题点数:2 回复次数:12 
帮忙看看哪里错了,谢谢
#include <stdio.h>
#include <math.h>
void main()
{
    float mark;
    char grade;
    scanf("%f",&mark);
    if(90<=mark<=100)
        grade='A';
    else if(80<=mark<90)
        grade='B';
    else if(70<=mark<80)
        grade='C';
    else if(60<=mark<70)
        grade='D';
    else grade='E';
    printf("%c\n",grade);
}
编译也通过了,但是输出结果总是出现A,不晓得哪里出问题了,劳烦各位帮忙看看
搜索更多相关主题的帖子: void include 
2009-10-26 10:47
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
得分:1 
90<=mark<=100
改为:
90<=mark&&mark<=100
下面的也这样改一下。
2009-10-26 10:54
qzy051203055
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-8-24
得分:0 
回复 2楼 m456m654
改了果然可以了 谢谢你。但是我不明白我之前那么写为什么是错的呢?

just do it~~~~~
2009-10-26 11:00
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
得分:0 
因为在c语言里表示逻辑关系时,与普通的数学表达式不一样。
你的mark要大于一个数,还要小于一个数,相当于mark有同时满足两个条件,所以要用到&&。
2009-10-26 11:04
qzy051203055
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-8-24
得分:0 
回复 4楼 m456m654
谢谢,但是我编写下面这段却能通过,不知道又是为什么的?
#include <stdio.h>
#include <math.h>
void main()
{
    float x,y;
    scanf("%f",&x);
    if(x<1)
        y=x;
    else if(1<=x<10)
        y=2*x-1;
    else
        y=3*x-10;
    printf("y=%f",y);
}

just do it~~~~~
2009-10-26 11:09
寻找南方
Rank: 2
等 级:论坛游民
帖 子:57
专家分:75
注 册:2009-10-21
得分:1 
其实你这样写还是有问题的!执行还是能执行的!因为程序在执行时它是先看1<=x的值,如果是真那就是1,如果是假那就是0,然后再用1或0与10进行比较。这样看来,x无论你输入什么那个if语句都会执行的!!试试吧!

我一路向前~~~~~~~~~~~~~
2009-10-26 11:50
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
得分:0 
    if(x<1)
        y=x;
    else if(1<=x<10) //其实这里x>=1是多余的,因为当执行这条语句的时候它要先不满足if(x<1),显然x只能>=1了。
        y=2*x-1;
    else
        y=3*x-10;
2009-10-26 11:55
baikil
Rank: 10Rank: 10Rank: 10
来 自:X星球
等 级:青峰侠
威 望:4
帖 子:282
专家分:1580
注 册:2009-7-20
得分:0 
楼主是直从数学跑程序里面来的吧..

自创QQ群64885635,方便C#学习交流.希望各项工作路好学都好入!
2009-10-26 12:00
chauves
Rank: 2
等 级:论坛游民
帖 子:18
专家分:13
注 册:2009-4-25
得分:0 
写代码不要想当然
要规范的
代码才是好习惯
2009-10-26 14:07
qzy051203055
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2007-8-24
得分:0 
回复 6楼 寻找南方
谢谢你的解答

just do it~~~~~
2009-10-26 15:56



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




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

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