黑马程序员技术交流社区

标题: C的for语句问题 [打印本页]

作者: 蜡笔小炎    时间: 2015-5-23 18:06
标题: C的for语句问题
#include <stdio.h>   
main( )
{
    int  x, y;
    for(x=30, y=0; x>=10, y<10; x--, y++)
        x/=2, y+=2;
    printf("x=%d,y=%d\n",x,y);
}


如上题,这个语句流程是怎么走的?
x=0,y=12的结果是怎么得来的?
作者: zhangshuai    时间: 2015-5-23 18:33
没有啥复杂的流程
就是x 除以二,再减一,y  +2,之后在加一。
知道满足条件为止
作者: jingkai    时间: 2015-5-23 19:22
视频里有的亲 细心看看啊
作者: kakade    时间: 2015-5-23 20:00
X的初值为30  y的初值为0    满足x大于等于10  y满足小于10 所以继续往下走  x除以2为15  y加2为2  输出    然后  x=15-1=14   y=2+1=3   继续循环直到条件不满足   
作者: kakade    时间: 2015-5-23 20:32
kakade 发表于 2015-5-23 20:00
X的初值为30  y的初值为0    满足x大于等于10  y满足小于10 所以继续往下走  x除以2为15  y加2为2  输出    ...

等等  我把链接给你
作者: kakade    时间: 2015-5-23 20:33
kakade 发表于 2015-5-23 20:00
X的初值为30  y的初值为0    满足x大于等于10  y满足小于10 所以继续往下走  x除以2为15  y加2为2  输出    ...

http://pan.baidu.com/s/1sjmeCDR
这个是下载地址
作者: kakade    时间: 2015-5-24 23:45
kakade 发表于 2015-5-23 20:33
http://pan.baidu.com/s/1sjmeCDR
这个是下载地址

只有视频  没有课件   好像最后一个文件夹 有相关的一些资料
作者: kakade    时间: 2015-5-24 23:46
kakade 发表于 2015-5-23 20:33
http://pan.baidu.com/s/1sjmeCDR
这个是下载地址

课件应该基础的应该没有吧  
作者: kakade    时间: 2015-5-25 01:51
正在努力
作者: 你是我的小苹果    时间: 2015-5-25 08:33
zhangshuai 发表于 2015-5-23 18:33
没有啥复杂的流程
就是x 除以二,再减一,y  +2,之后在加一。
知道满足条件为止 ...

怎么感觉结果是6 , 6呢
作者: zhangshuai    时间: 2015-5-25 08:50
你是我的小苹果 发表于 2015-5-25 08:33
怎么感觉结果是6 , 6呢

#include <stdio.h>   
main( )
{
    int  x, y;
    for(x=30, y=0; x>=10, y<10; x--, y++)
        x/=2, y+=2;
    printf("x=%d,y=%d\n",x,y);
}


i=4;

循环共调用了4次
作者: 蜡笔小炎    时间: 2015-5-25 10:39
你是我的小苹果 发表于 2015-5-25 08:33
怎么感觉结果是6 , 6呢

for语句中间的x >=10,y <10,其实等同于 x >=10 || y <10。
我也算了半天才明白,中间应该是或的关系!
作者: aSmallStone    时间: 2015-5-25 11:47
逗号 就是或者的关系 只要满足一个就跳出了
作者: 白昼那知夜的黑    时间: 2015-5-25 13:06
额,刚进了你就明白了
作者: 彭越    时间: 2015-5-25 13:31
piaoguollal
作者: 李双良    时间: 2015-5-26 22:08
围观!看看大家是这么解决问题的!
作者: fixer    时间: 2015-5-27 06:34
打断点,学循环
作者: 刘佳宾    时间: 2015-6-1 18:58
确实4次循环,x和y两个条件应该是或的关系,只要有一个成立就可以进入下次循环体,知道x和y都不满足为止,循环体结束,最后在执行次x--和y++,最后结果就是x为0,y为12

作者: Dzlbp    时间: 2015-6-1 21:07
你自己设个断点  可以一步一步看看
或者加一个 printf 看每一次循环值的变化
作者: 白昼那知夜的黑    时间: 2015-6-1 21:30
吧式子写完整,了看   很容易看出来!
作者: talent123    时间: 2015-6-1 21:34
你这是在干嘛?
自己给自己出计算题吗。。?
一顿算,直到第二个分号内部的条件不满足就退出。
不过,感觉这样写不好啊,还不如写成&&的关系呢。
作者: 恩赐_RWQqZ    时间: 2015-6-1 21:37
哦,学习了...

作者: 这是829    时间: 2015-6-4 00:37
围观学习啦。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2