A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 大悟云 中级黑马   /  2014-10-29 19:42  /  1870 人查看  /  14 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

# include <stdio.h>
int mian( )
{int i=2;
int j=3;
int a=i+++i++;
int b=++j+++j;
printf("a=%d,b=%d" ,a,b)
return 0
}
a=4,b=10
i++是执行完整个表达式的其他操作后再自增,++j是先自增后去参加其他运算。


评分

参与人数 1技术分 +1 收起 理由
星河鹭起 + 1

查看全部评分

14 个回复

倒序浏览
楼主i++和++j最好用括号括上,这样方便检查和阅读。
回复 使用道具 举报
你的这段程序能编译通过吗?
回复 使用道具 举报
你的这段程序能编译通过吗?
回复 使用道具 举报
易拉罐 发表于 2014-10-30 19:31
你的这段程序能编译通过吗?

没有试过哦?哪里有错误啊,请指教,我刚学
回复 使用道具 举报
个人觉得没运行不通过呢,版主可以试试!!!
回复 使用道具 举报
大悟云 发表于 2014-10-30 20:25
没有试过哦?哪里有错误啊,请指教,我刚学

编译到这一句int b=++j+++j;就报错了。你最后还是加个括号来区分,这一句改成int b = (++j) + (++j);
回复 使用道具 举报
易拉罐 发表于 2014-10-30 20:52
编译到这一句int b=++j+++j;就报错了。你最后还是加个括号来区分,这一句改成int b = (++j) + (++j); ...

哦,谢谢
回复 使用道具 举报
此处,计算有误,b的值是9,你可以运算试试!
回复 使用道具 举报
运行错误

QQ图片20141030214424.jpg (123.7 KB, 下载次数: 23)

运行错误啊,哪里错了

运行错误啊,哪里错了
回复 使用道具 举报
wenchang1989 发表于 2014-10-30 21:27
此处,计算有误,b的值是9,你可以运算试试!

我的运行错误啊,怎么回事
回复 使用道具 举报

printf("*****"); 和return 0 ;   后面没有加分号呢。
回复 使用道具 举报
怎么感觉应该是a = 5; b = 9;呢  ?    没有运行,大家运行的结果是什么?
回复 使用道具 举报
诺微_ 发表于 2014-10-30 23:40
怎么感觉应该是a = 5; b = 9;呢  ?    没有运行,大家运行的结果是什么?

我加分号也不对,我没有运行,不知道结果是 多少,你能运行试试吗?
回复 使用道具 举报
本帖最后由 诺微_ 于 2014-11-1 23:15 编辑
大悟云 发表于 2014-10-31 12:04
我加分号也不对,我没有运行,不知道结果是 多少,你能运行试试吗?

之所以你不对   是因为1.你的main写错了   2.int a = i ++ + i++;没有写括号括住    3.printf和return后面没有写分号。   我今天测试了下  a = 5, b = 9;

QQ20141101-2.png (128.17 KB, 下载次数: 32)

QQ20141101-2.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马