| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 588 人关注过本帖
标题:极度郁闷,请大哥大姐们来帮小弟一把..谢过.
只看楼主 加入收藏
钩魂天蝎
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-9-5
收藏
 问题点数:0 回复次数:9 
极度郁闷,请大哥大姐们来帮小弟一把..谢过.
今天学到了“关系运算符和关系表达式”书上有一个例,但它不告诉我们解题的步骤,,小弟想了很久,实在没哲了就跑来让大家指点指点~~~

题目:算2020年是否闰年.闰年的条件是符合下面二者之一,1、能被4整除,但不能被100整除。2、能被4整除,又能被400整除。

它给了个表达式(2020%4==0&&2020%100!=0) | | 2020%400==0
表达式值为(1),则2020年为闰年;否则2020年为非闰年

安理说2020年是闰年才对呀,因为他满足了第一条件(题目说了,符合二者之一就是闰年)

我的思路是这样的:先看括号里的(2020%4==0&&2020%100!=0)

步骤1:先算2020%4==0(意思应该是说先思考2020%4是真或假,真为1假为0)
因为2020可以整除4所以条件为“真”=1
再算1==0(1前面条件是否等于0?因为条件为真,所以1不等于0,所以条件为“假”,则等于0)

问题1:步骤1中的表达式为0,那就是条件不成立,可明明条件是成立的呀?为什么搞成等于0了


由于一步一步问太长了,,,,大虾们直接把这个表达式帮我解一下吧,在每一步后面说明一下原因那就最好了。这题目真伤了我脑里的不少细胞...............小弟在此谢过~~~~~~~~~~~~~~~
搜索更多相关主题的帖子: 大姐 
2006-09-24 22:31
菜鸟笨鸟
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2006-9-2
收藏
得分:0 
我来回答你吧
你应该好好把运算符的优先级搞清楚
(2020%4==0&&2020%100!=0)
括号的优先级最高 所以你先算括号里的是正确的
然后再看括号里有% == && !=这些运算符
他们的优先级依次为% (!= ==) &&这里等于和不等于是同一级
1、先算2020%4结果为0,
接着算2020%100结果为20,
上面算好了再用==和!=比较
2、2020%4==0结果为真即1
2020%100!=0结果为真即1(因为2020%100=20的确!=0所以结果为真)
2步之后 再用这里优先级最低的&&比较
3、1&&1结果当然为真

纠错:你把2020%4的结果看成了1然后又用1和0比较是否相等 肯定错了
2020%4真正求模后的结果是是0 是具体的数值 而非逻辑值 因为%是算术运算符结果怎么可能是逻辑值?

其实熟悉优先级后就不用这么一步步的看了。。。

[此贴子已经被作者于2006-9-24 22:54:38编辑过]


偶是大菜鸟~!
2006-09-24 22:49
钩魂天蝎
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-9-5
收藏
得分:0 
晕,,,请问,,第1里的2020%4怎么会等于0?能整除就算它等于0了?还有2020%100怎么会等于20?不是等于20.2嘛?
后面那些明白。。。就是第1里的搞不清。。。笨死了~~~~~
2006-09-24 23:03
ridwsc
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2006-8-10
收藏
得分:0 
%是求余

中国加油,加油,加油~~~~~ 我行~~我可以~~C
2006-09-24 23:08
菜鸟笨鸟
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2006-9-2
收藏
得分:0 
%是求模或叫做求余,计算%的时候是算最后余多少 比如2020%4最后整除了没有余数结果就是0
给你举个例子:
2020%4=0
2020/4=0

10%3=1
10/3=0.333333....(这个时候要看你取不取整数 如果取整 那么结果就是0比如int(10/3)。)

求模有个要点就是 小数不能求模 如果非要求 要进行强制转换 比如
float a=12.5;
int b=4,c;
c=(int)a%b;



[此贴子已经被作者于2006-9-24 23:30:24编辑过]


偶是大菜鸟~!
2006-09-24 23:27
钩魂天蝎
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-9-5
收藏
得分:0 
5555555555555555555555555555555555~~~~~~~`这几天看数学太多了,,又把%看成除号了~~~5555555555

谢谢两位大哥
2006-09-24 23:29
菜鸟笨鸟
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2006-9-2
收藏
得分:0 

哈哈你把%看成了/
我总是把==写成=号


偶是大菜鸟~!
2006-09-24 23:32
钩魂天蝎
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-9-5
收藏
得分:0 
呵呵,,,这样可不行,,得改改这坏习惯
2006-09-24 23:47
sunyuantz
Rank: 1
等 级:新手上路
威 望:1
帖 子:407
专家分:0
注 册:2006-3-20
收藏
得分:0 
[QUOTE](2020%4==0&&2020%100!=0)[/QUOTE]不是赋值“=”而是判断“==”求余“%”和相除“/”是不同的,前者关注余数,后者关注商

我不是名人,所以不要签名。等哪天我成名人了......你都认识我了还要签名干嘛!
2006-09-25 19:22
钩魂天蝎
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-9-5
收藏
得分:0 
已得到解决,,,,谢谢大家~~~
2006-09-25 22:48
快速回复:极度郁闷,请大哥大姐们来帮小弟一把..谢过.
数据加载中...
 
   



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

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