标题:请高手帮忙分析一下如下代码在逻辑上有不对的吗?
只看楼主
陈安元
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2014-6-28
结帖率:100%
已结贴  问题点数:10 回复次数:6 
请高手帮忙分析一下如下代码在逻辑上有不对的吗?
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
scanf("%d",&a);
if    ("a=0")    printf("yes");
if    ("a<0")    printf("no");
if    ("a>0")    printf("0");
   
    system("pause");
    return 0;
}
搜索更多相关主题的帖子: system include return 
2014-07-01 18:30
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
得分:0 
if ("a=0")
if ("a<0")
if ("a>0")
这3个if的判断条件都是啥呀?在c语言里用双引号引上的是什么东西?楼主清楚吗?

总有那身价贱的人给作业贴回复完整的代码
2014-07-01 18:47
陈安元
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2014-6-28
得分:0 
回复 2 楼 embed_xuel
刚想清楚,准备关帖的,呵呵
正确的如下
int a;
scanf("%d",&a);
if    (a==0)    printf("0");
if    (a>0)    printf("yes");
if    (a<0)    printf("no");
    system("pause");
    return 0;
}
对吧??????????

自学无门!论坛求神
2014-07-01 18:49
vvvcuu
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:12
帖 子:353
专家分:1253
注 册:2014-4-22
得分:10 
逻辑上没有错.

不过,你运行一下你的代码可以发现,不论你输入什么,都会输出yesno0,然后"请按任意键继续..."

知道为啥吗?   翻一下教材再看看if语句吧.

代码测试环境:  WinXP+C-Free5.0.
2014-07-01 18:50
陈安元
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2014-6-28
得分:0 
回复 4 楼 vvvcuu
没有找到解释双引号的意思,晕 到现在我也没有注意到这个问题!挫啊:4楼能否解释一下?

自学无门!论坛求神
2014-07-01 18:54
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
你好像不看书就爱写代码似的

授人以渔,不授人以鱼。
2014-07-01 19:43
明伦
Rank: 1
等 级:新手上路
帖 子:5
专家分:4
注 册:2014-7-2
得分:0 
回复 2 楼 embed_xuel
同意此楼  == 相当于是否等于,是逻辑运算符  if(“a=0”) “a=0”就只是个字符串
2014-07-02 23:14



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




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

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