| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2624 人关注过本帖
标题:请问C语言如果条件判断中误写成赋值语句该怎么办
只看楼主 加入收藏
komorebi0110
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:145
专家分:17
注 册:2019-11-23
结帖率:96.88%
收藏
已结贴  问题点数:20 回复次数:9 
请问C语言如果条件判断中误写成赋值语句该怎么办
#include<stdio.h>
int main()
{int  number;

number =  0;

if  ( number =  0 )

        printf( "Zero value");
else
printf("Non-zero value");



return 0;
}
搜索更多相关主题的帖子: C语言 语句 赋值 number 条件 
2019-11-25 01:42
komorebi0110
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:145
专家分:17
注 册:2019-11-23
收藏
得分:0 
输出居然是“Non-zero value” 为什么啊请救救孩子

我想要两颗西柚。
2019-11-25 01:42
komorebi0110
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:145
专家分:17
注 册:2019-11-23
收藏
得分:0 
是因为expession has value 0所以执行else后的语句的原因吗

我想要两颗西柚。
2019-11-25 02:07
c鳌白
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:24
专家分:101
注 册:2019-11-10
收藏
得分:0 
如果expession的值不为零,则表达式为true(1),否则都为false(0)。使用非操作符(!),也可以这样编写:(!expession)或(expession==0).
2019-11-25 09:14
komorebi0110
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:145
专家分:17
注 册:2019-11-23
收藏
得分:0 
回复 3楼 komorebi0110
这个代码里表达式是什么 是number吗

我想要两颗西柚。
2019-11-25 15:17
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:20 
以下是引用c鳌白在2019-11-25 09:14:19的发言:

如果expession的值不为零,则表达式为true(1),否则都为false(0)。使用非操作符(!),也可以这样编写:(!expession)或(expession==0).

没有 表达式的值是多少就多少
不会不是0就true
C没这种神奇的变化

https://zh.
2019-11-25 16:25
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
收藏
得分:0 
还能怎么办 赋值改为比较呗??
奇怪的问题

https://zh.
2019-11-25 16:43
komorebi0110
Rank: 2
来 自:上海
等 级:论坛游民
帖 子:145
专家分:17
注 册:2019-11-23
收藏
得分:0 
回复 6楼 lin5161678
哈哈,因为我现在大一,是软工专业的,要期中考,题目可能就是给这一串代码,分析结果

我想要两颗西柚。
2019-11-25 17:34
wangxinbozj
Rank: 2
等 级:论坛游民
威 望:2
帖 子:16
专家分:18
注 册:2019-12-1
收藏
得分:0 
我试了一下,将 if( number =  0 ) 语句里的0改为任意一个非零整数,该表达式都为true,输出Zero value
2019-12-02 21:38
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
C标准是这么说的:
if( 表达式 ) 语句真 else 语句假
表达式 必须为任何标量类型的表达式。
若 表达式 与整数零比较不相等,则执行 语句真;若 表达式 与整数零比较相等,则执行 语句假。

对于你的代码
if( number = 0 )
    printf( "Zero value");
else
    printf( "Non-zero value" );
会执行哪一句,只要看“number = 0”这个表达式与0相比较的结果就行了。
2019-12-03 08:51
快速回复:请问C语言如果条件判断中误写成赋值语句该怎么办
数据加载中...
 
   



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

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