| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 396 人关注过本帖
标题:本人新手,有个程序不理解,求指点
只看楼主 加入收藏
qq463610877
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-10-14
收藏
 问题点数:0 回复次数:5 
本人新手,有个程序不理解,求指点
#include "stdio.h"
main()
{
     int a1,a2,b1,b2;
     int i=5,j=7,k=0;
     a1=!k;
     a2=i!=j;
     printf("a1=%d\ta2=%d\n",a1,a2);
     b1=k&&j;
     b2=k||j;
     printf("b1=%d\tb2=%d\n",b1,b2);
}
请问为什么输出的答案是a1=1  a2=1   b1=0   b2=1  ?这是怎么算的?

[ 本帖最后由 qq463610877 于 2013-10-14 11:07 编辑 ]
搜索更多相关主题的帖子: include 
2013-10-14 11:00
qq463610877
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-10-14
收藏
得分:0 
求大神指点啊
2013-10-14 11:03
qq463610877
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-10-14
收藏
得分:0 
木、、、有、、、人、、、吗?
2013-10-14 11:06
wuyongwang
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-10-8
收藏
得分:0 
a1=!k; !为逻辑非运算,k初始值为0,为假,逻辑非后为真即为1.
a2=i!=j;  !=的优先级高于赋值=,i!=j先判断该逻辑,为真,故a2=1;
b1=k&&j; &&为逻辑与,即0&&7,结果为假,为0,b1=0;
b2=k||j; ||为逻辑或,即0||7,结果为真,为1,b2=1;
2013-10-14 11:17
xp0213
Rank: 7Rank: 7Rank: 7
来 自:湖北武汉
等 级:黑侠
威 望:1
帖 子:210
专家分:522
注 册:2011-10-26
收藏
得分:0 
多看看书吧
2013-10-14 11:27
clearlylin
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-11-30
收藏
得分:0 
k=0,转化成bool值就是false,k的非,就是true转化成int就是1,a1=1;
!=优先级高于=,由于i不等于j,bool值为true转化成int就是1,b1=1;
k的bool值为false ,&&的结果false ,int 值就是0
j的bool值为true, || 的结果为true ,int值1
2013-10-14 11:30
快速回复:本人新手,有个程序不理解,求指点
数据加载中...
 
   



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

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