c语言,求输出等于几,为什么

intk=11;k=1/3*k++;printf("%d",k);大家可以用vc试一下,结果是1,但是用turboc的结果为0,不知道为什么!... int k=11;
k=1/3*k++;
printf("%d",k);
大家可以用vc试一下,结果是1,但是用turboc的结果为0,不知道为什么!
展开
 我来答 举报
hero520e
2006-11-28
知道答主
回答量:43
采纳率:0%
帮助的人:20.5万
展开全部
0,3/1,3和1都是INT,所以等于0,如果定义了3和1为FLOAT,就是0。333333,再下来0*K,还是0
4楼说的1/3*k等于0,再++
所以结果是1 是错误的,因为是K++,也就是先输出K的值后K再加1
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
九只眼
2006-11-28 · TA获得超过443个赞
知道小有建树答主
回答量:576
采纳率:0%
帮助的人:0
展开全部
1 K++是先用K的值再自加.所以:3*11再自加1.(自加运算级高)
2 1/34后为K值.结果为零.
你写完整了吗?怎么这么别扭.
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
lshp5566
2006-11-28
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
1
1/3*k等于0,再++
所以结果是1
本回答被提问者采纳
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
百度网友29afc6726
2006-11-28 · TA获得超过342个赞
知道小有建树答主
回答量:456
采纳率:0%
帮助的人:267万
展开全部
0

应该将3*K++看成整体,首先计算分母为34,然后计算除法
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
5499063
2006-11-28 · 超过15用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:49.1万
展开全部
应该是0。因为分子分母都不是float型
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式