| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 695 人关注过本帖
标题:求大神帮我解释一下我代码中注释的那部分。怎么看都看不懂,感激不尽!
只看楼主 加入收藏
cnliaowt
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2013-3-7
结帖率:25%
收藏
 问题点数:0 回复次数:8 
求大神帮我解释一下我代码中注释的那部分。怎么看都看不懂,感激不尽!
求大神帮我解释一下我代码中注释的那部分。怎么看都看不懂,感激不尽!

#include <stdio.h>
main()
{
    int x,y,flag;
    printf("please input a num x:\n ");
    scanf("%d",&x);
    flag=x<0?-1:(x<10?1:2);/*求解释*/
    switch(flag)
    {
    case -1:y=x;break;/*求解释case是什么意思*/
    case 1:y=2*x-1;break;
    case 2:3*x-1;
    }
    printf("y=%d\n",y);
}
搜索更多相关主题的帖子: include please 
2013-06-26 13:52
a64924374
Rank: 2
等 级:论坛游民
帖 子:33
专家分:61
注 册:2013-3-11
收藏
得分:0 
flag=x<0?-1:(x<10?1:2);/*求解释*/
这句先求((x < 10) ? (1:2))这里我们假定X等于5那么这个表达式的值就是1
 flag=x<0?-1:(x<10?1:2);/这句就可以转换成flag = (x < 0)?(-1 : 1)由于假定x = 5;所以flag = 1.
case -1:y=x;break;/*求解释case是什么意思*/
case是什么自己翻书去
 flag=x<0?-1:(x<10?1:2);/*求解释*/这种代码建议不要写,代码要尽量写得越简单越好
2013-06-26 15:17
yuhaibinhf
Rank: 2
等 级:论坛游民
帖 子:34
专家分:29
注 册:2011-4-7
收藏
得分:0 
flag=x<0?-1:(x<10?1:2);/*求解释*/   ----- 书写不太规范,看着 有点挤。。。
flag = x < 0 ? -1 : (x < 10 ? 1 : 2);
2楼说的对,这种代码 绕的太多,还是简单点好,
注释: flag 的值为 1 ,则为真,值为 -1,则为假
x < 0 ? -1 : (x < 10 ? 1 : 2); 这是一种嵌套关系的逻辑判别式: 如果 x < 0 关系成立,那么 取值 -1, 如果 x < 0 不成立,
取值 (x < 10 ? 1 : 2); 同理: 如果 x < 10 关系 成立,取值 1, 如果关系 不成立 取值 2
其实这个 嵌套的关系 有点多余了,无论 1 和 2 都是 > 0, 都是 真
所以可以改写为:  x < 0 ? -1 : x > 0;

   
2013-06-26 19:23
YJ_Hao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:215
专家分:609
注 册:2013-3-22
收藏
得分:0 
楼上到底懂不懂三目啊
flag=x<0?-1:(x<10?1:2);
的意思就是:
x>=10时flag的值为2
x<10&&x>=0时flag的值为1
x<0时flag的值为-1

[ 本帖最后由 YJ_Hao 于 2013-6-26 19:33 编辑 ]
2013-06-26 19:26
yuhaibinhf
Rank: 2
等 级:论坛游民
帖 子:34
专家分:29
注 册:2011-4-7
收藏
得分:0 
汗,,我看错了,但也不能说我全错吧,如果这是一个求值的,那我疏忽了
如果 是 一个 开关 ,那我的还凑合,
2013-06-26 20:07
yuhaibinhf
Rank: 2
等 级:论坛游民
帖 子:34
专家分:29
注 册:2011-4-7
收藏
得分:0 
确实是 求值 选择的,疏忽啦,呵呵,,,
2013-06-26 20:09
cnliaowt
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2013-3-7
收藏
得分:0 
回复 2楼 a64924374
明白了。谢谢!
2013-06-26 20:38
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
收藏
得分:0 
还是好好看看书吧!

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-06-26 20:52
cnliaowt
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2013-3-7
收藏
得分:0 
回复 8楼 我叫沃恩
谔谔,谢谢你的提议
2013-06-27 07:56
快速回复:求大神帮我解释一下我代码中注释的那部分。怎么看都看不懂,感激不尽! ...
数据加载中...
 
   



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

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