| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 460 人关注过本帖
标题:我是新手,希望大家帮帮我
只看楼主 加入收藏
ct245212566
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2010-8-20
结帖率:57.14%
收藏
 问题点数:0 回复次数:7 
我是新手,希望大家帮帮我
有个题目
  #include<stdio.h>
  main()
  {intx;
   scanf("%d",&x);
  if(x--<5)printf("%d",x);
  elseprintf("%d",x++);
  }
程序运行后,如果从键盘输入5,则结果是()
A3   B4 C 5    D6
   我认为x--<5,x--应该是先用x,5不可能小于5, 所以执行elseprintf("%d",x++);
  ,结果应该为6。但是答案是4 ,谁能告诉我啊?
搜索更多相关主题的帖子: include 
2010-08-26 20:36
liucs116
Rank: 2
等 级:论坛游民
帖 子:130
专家分:29
注 册:2009-11-4
收藏
得分:0 
x--<5,先执行x<5,再执行x--,于是x变为4,上面的条件不满足,所以执行else printf("%d",x++);
执行时,先输出x的值4,再进行x++。这里主要考查运算符的优先级,LZ可以去看看。

学无止境!
2010-08-26 20:47
封心锁ai
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2010-08-26 20:51
ct245212566
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2010-8-20
收藏
得分:0 
为什么选b ,我还是不明白,讲简单点,可以吗?
2010-08-26 21:01
ct245212566
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2010-8-20
收藏
得分:0 
上面的条件不满足,为什么还要再,x为什么还要变为4
2010-08-26 21:05
封心锁ai
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2010-08-26 21:10
Imtheone
Rank: 2
等 级:论坛游民
帖 子:78
专家分:34
注 册:2010-4-23
收藏
得分:0 
x--<5这个是一起的都要执行的  先执行<5然后执行-- 变成了4  不满足  执行下一个语句  为什么输出4   是因为x++是先x再++   要是换作++x就是输出5了 这是个运算符的问题  去看看书就明白了
2010-08-26 22:30
jiangkunhgnc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:76
专家分:185
注 册:2010-8-21
收藏
得分:0 
if(x--<5)printf("%d",x);
  elseprintf("%d",x++);
这段代码等价于:
程序代码:
if (x < 5)
  {
    x = x - 1;
    printf ("%d",x);
  }
else
  {
    x = x - 1;
    printf ("%d",x);
    x = x + 1;
  }

选择B
2010-08-27 22:56
快速回复:我是新手,希望大家帮帮我
数据加载中...
 
   



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

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