| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 972 人关注过本帖
标题:这个程序怎么解释?我真的弄不懂!谢谢了!
只看楼主 加入收藏
lele2010
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:84
专家分:121
注 册:2010-1-23
结帖率:100%
收藏
 问题点数:0 回复次数:8 
这个程序怎么解释?我真的弄不懂!谢谢了!
#include<stdio.h>
void main()
{
    int a=016;
    a%=6-1;
    printf("%d,",a);
    a+=a*=a/=3;
    printf("%d,",a++);
    printf("%d",++a);
}
这个程序怎么解释?我真的弄不懂!谢谢了!
搜索更多相关主题的帖子: 弄不懂 解释 
2010-01-23 18:11
骓鲟
Rank: 2
等 级:论坛游民
帖 子:31
专家分:19
注 册:2009-6-17
收藏
得分:0 
把它在vc上运行下不就什么都知道了,有些程序并不是他有很强的逻辑性,而是你对与法规则 不是很熟悉
2010-01-23 18:47
LJ23
Rank: 1
等 级:新手上路
帖 子:5
专家分:3
注 册:2010-1-2
收藏
得分:0 
初学C,大概看了一下
 int a=016; 给a赋的值是八进制,就相当于十进制的14
a%=6-1;与语句a=a%(6-1)等价,这时a=4

printf("%d,",a);输出a的值4,
a+=a*=a/=3;赋值运算符,自右向左结合,相当于三个语句:a=a/3;a=a*a;a=a+a;
得到此时a=2
printf("%d,",a++);先输出a的值2,再给a加1,内存中a的值为3

printf("%d",++a);先给a加1,再输出,就为4
所以结果为4,2,4


都是初学,一起加油!
2010-01-23 19:06
burningbebe
Rank: 2
等 级:论坛游民
帖 子:41
专家分:19
注 册:2009-10-31
收藏
得分:0 
这道题是纯的语法题目一般做题 个人觉得没什么意义 完全是在没事找事 做编程题是觉对用不上这个东西的

世界上最遥远的距离不是生与死,而是网通和电信!
2010-01-23 19:32
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:0 
楼上说的在道理,实际编程中,应该写得简单明了,具有可读性.

★★★★★为人民服务★★★★★
2010-01-24 14:57
dbx12358
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:3
帖 子:37
专家分:141
注 册:2008-11-13
收藏
得分:0 
这就是考试用的,实际上要求程序简单易读。
2010-01-24 15:13
shangqiu100
Rank: 2
等 级:论坛游民
帖 子:7
专家分:11
注 册:2009-4-7
收藏
得分:0 
int a=016;   说明a是一个八进制数,等价于十进制数14
下面运算就常见的 赋值操作过程了

结果 4,2,4
2010-01-24 15:38
li8732675
Rank: 1
等 级:新手上路
帖 子:33
专家分:6
注 册:2009-3-4
收藏
得分:0 
学习学习啊
2010-01-25 20:17
河海C
Rank: 2
等 级:论坛游民
帖 子:4
专家分:10
注 册:2010-1-25
收藏
得分:0 
上面解释和很好我就不解释了。。不过这个题很有意思的,有开头我们就至少要知道8进制和十六进制同十进制的转换关系
2010-01-25 20:51
快速回复:这个程序怎么解释?我真的弄不懂!谢谢了!
数据加载中...
 
   



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

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