鱼C论坛

 找回密码
 立即注册
查看: 2309|回复: 17

一个C的题目

[复制链接]
发表于 2014-10-17 20:20:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 firewater 于 2014-10-18 15:34 编辑

小甲鱼的第十九课
#include "stdio.h"

void main()

{
int i, j, k;
printf("i j k\n");
for (i = 0; i < 2;i++)
for (j = 0; j < 2;j++)
for (k = 0; k < 2; k++)
printf("%d%d%d\n", i, j, k);
}
小甲鱼说从最里面的循环开始执行,那i和j的值从哪来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-10-18 15:49:14 | 显示全部楼层
搞清楚for循环括号内的三个表达式和循环语句块的执行顺序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-18 20:43:33 | 显示全部楼层
这个问题。。。自己看书难道看不明白吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-18 21:29:43 | 显示全部楼层
仰望天上的光 发表于 2014-10-18 20:43
这个问题。。。自己看书难道看不明白吗?

书上没有这个例题啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-18 21:49:45 | 显示全部楼层
firewater 发表于 2014-10-18 21:29
书上没有这个例题啊

书上有多重循环的例题啊,看懂了就明白这个了,这个不明白说明多重循环的例题没看明白啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-18 21:59:53 | 显示全部楼层
仰望天上的光 发表于 2014-10-18 21:49
书上有多重循环的例题啊,看懂了就明白这个了,这个不明白说明多重循环的例题没看明白啊。

谭浩强的??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-18 22:27:51 | 显示全部楼层

任何一本比较正规的C语言教程都会有多重循环的例子。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-18 22:35:05 | 显示全部楼层
你不是赋值   i=0;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-18 23:21:39 | 显示全部楼层
循环的确是从最里面的开始,但是外部的也已经开始进行循环了啊,不过最早完成一个循环的一定是最里面的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-19 17:31:54 | 显示全部楼层
#include "stdio.h"

void main()

{
int i, j, k;
printf("i j k\n");
for (i = 0; i < 2;i++)    //1
for (j = 0; j < 2;j++)   //2
for (k = 0; k < 2; k++)  //3
printf("%d%d%d\n", i, j, k);
}
首先 i=0,满足条件进入循环 1,然后下一个又是循环, j=0满足条件,进入循环2,然后又有循环,k=0满足条件,在进入循环3.循环3中,语句是输出,然后分别输出i j k ,然后,继续,就是k++,k=1满足条件,继续输出,然后k++,k=2跳出这个循环,退到上一个循环,以此类推..
再不明白可以看这个代码,你那个改的
#include "stdio.h"

void main()

{
        int i, j, k;
        printf("i j k\n");
        for (i = 0; i < 2;i++)                //1
        {
                printf("执行循环1:i=%d \n",i);     //2
                for (j = 0; j < 2;j++)
                {
                        printf("执行循环2:j=%d\n",j);
                        for (k = 0; k < 2; k++)         //3
                        {
                                printf("执行循环3:k=%d\n",k);
                        }
                }
        }
}
这个再不明白,我就帮不了你了,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-21 22:35:02 | 显示全部楼层
这样说好了。计算机是顺序执行的,也就是先从第一个for开始执行。
第三个for实际上是比其他几个for语句先结束而已。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-21 22:54:07 From FishC Mobile | 显示全部楼层
谢谢10楼的解答,还没学到这里,先收藏。楼主别删帖啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-22 16:24:59 | 显示全部楼层
书写规范
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-22 21:45:19 | 显示全部楼层
额,不就是相当于遍历一个三位数组么………………
也可以看成成一个二进制数……
i为第一位,j为第二位,k为第三位。
i满2,j+1,j满2,k+1,k满2,循环结束。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-22 22:49:49 | 显示全部楼层
小山童鞋 发表于 2014-10-22 21:45
额,不就是相当于遍历一个三位数组么………………
也可以看成成一个二进制数……
i为第一位,j为第二位, ...

还没看到数组
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-22 22:52:15 | 显示全部楼层
Mr.屎壳螂 发表于 2014-10-19 17:31
#include "stdio.h"

void main()

谢谢,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-10-24 20:26:54 | 显示全部楼层
小甲鱼说的书写规范很重要!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2014-10-30 19:28:45 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 04:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表