|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 求你大神解释
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1552
人关注过本帖
标题:
求你大神解释
只看楼主
加入收藏
亲琪琪
等 级:
论坛游民
帖 子:55
专家分:38
注 册:2016-3-12
结帖率:
70%
楼主
收藏
问题点数:0 回复次数:2
求你大神解释
# include<stdio.h>
int main()
{
int i,b,k=0;
for(i=1;i<=5;i++)
{
b=i%2;
while(b-->=0) k++;
}
printf("%d,%d",k,b);
return 0;
}
这个结果为啥是8,-2
搜索更多相关主题的帖子:
return
2016-05-31 17:29
举报帖子
使用道具
赠送鲜花
liufashuai
来 自:冥界-魔域-魂殿
等 级:
蜘蛛侠
威 望:
1
帖 子:370
专家分:1374
注 册:2012-6-22
第
2
楼
收藏
得分:0
这个跟踪一下就行了
首先对于K来说,如果i是奇数就+2
如果i是偶数就+1 因此 k = 2 + 1 + 2 + 1 + 2 = 8
对于b来说,看最后一次i = 5时候就行
i = 5
b = 1
b >= 0 , b --, b = 0
继续循环
b >= 0 , b --, b = -1 继续循环
b >-0 不成立 ,b -- , b = -2
有一种落差是,你配不上自己的野心,也辜负了所受的苦难。
2016-05-31 19:57
举报帖子
使用道具
赠送鲜花
xihuanshang
来 自:新乡
等 级:
新手上路
帖 子:3
专家分:0
注 册:2016-5-31
第
3
楼
收藏
得分:0
程序进去for循环后,先运行b=i%2;然后进去while循环,而while(b-->=0)是先比较b与0的大小,然后执行b--。
岂能尽如人,意但求无愧于心。
2016-05-31 20:09
举报帖子
使用道具
赠送鲜花
3
1/1页
1
快速回复:
求你大神解释
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.036358 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved