| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1385 人关注过本帖
标题:求a的值的出现问题
取消只看楼主 加入收藏
enzo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-3-12
收藏
 问题点数:0 回复次数:6 
求a的值的出现问题
有一道题。int c=3和int a, a=2*c+(c+=c++,c+5,++c)
求a的值为?
有人说是14,也有说是24;到底是多少?
另外,书上说“这道题里面2*c的值不受后面的c++控制,在运行程序的时候,会出现一个警告,该语句没有任何作用。”看不懂,为什么是这样?
如果改成a=(c+=c++,c+5,++c)+2*c 结果又会怎样呢?
搜索更多相关主题的帖子: 运行程序 
2008-03-12 08:32
enzo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-3-12
收藏
得分:0 
有一个warning啊。另外请教一下,为什么是14?c的值不受后面(……)的影响吗?
2008-03-12 13:12
enzo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-3-12
收藏
得分:0 
我来试试
2008-03-12 13:45
enzo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-3-12
收藏
得分:0 
结果为18,还是不明白。。。
2008-03-12 13:59
enzo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-3-12
收藏
得分:0 
我觉得7楼说的不托.++c不是先使c的值加1,再用c吗?此时表达式++c的值和c的值均为8吗?
2008-03-12 17:32
enzo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-3-12
收藏
得分:0 
不是()的优先级大于*的优先级吗?
2008-03-13 09:58
enzo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-3-12
收藏
得分:0 
我用的是TC3.0 源程序如下:
void main ()
{ int c=3;
  int a;
  a=2*c+(c+=c++,c+5,++c);
  printf("%d",a);
}
改程序首先Compile,有一个Warning NONAME00.C 4: Code has no effect
之后Run,得结果a=14,c=8.
不知该程序写的对否?还望指教
2008-03-13 10:13
快速回复:求a的值的出现问题
数据加载中...
 
   



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

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