#include <stdio.h>
#include <string.h>
int main()
{
char *a="abcde";
int L,i,j,k;
L=strlen(a);
for (i=1;i<=L;i++)
{
for (j=0;j<=L-i;j++)
{
for (k=j;k<j+i;k++)
{
printf("%c",a[k]);
}
printf("\n");
}
}
return 0;
}
比如说这个循环,看了半天没明白,是应该从最内层的循环看是看?还是有什么方法没?虚心学习中!!
25 个解决方案
#1
#include <stdio.h>
#include <string.h>
int main()
{
char *a="abcde";
int L,i,j,k;
L=strlen(a);
for (i=1;i<=L;i++)
for (j=0;j<=L-i;j++)
{
for (k=j;k<j+i;k++)
printf("%c",a[k]);
printf("\n");
}
return 0;
}
#2
跟最近的一对。
离开看大括号
离开看大括号
#3
#include <stdio.h>
#include <string.h>
int main()
{
char *a="abcde";
int L,i,j,k;
L=strlen(a);
for (i=1;i<=L;i++)
for (j=0;j<=L-i;printf("\n"),j++)
for (k=j;k<j+i;printf("%c",a[k]),k++);
return 0;
}
这回就看明白了
#4
在每个循环的结尾都标注一下是哪个循环结束,然后多看看就行了~~~
#5
还是不知所以。。闷。。
#6
LZ你的代码是规范了的,不要被其他所误导
代码要看多,慢慢从简单地写起,多了就熟了
代码要看多,慢慢从简单地写起,多了就熟了
#7
单步调试就知道了
由里到外
由里到外
#8
这么说吧..在第一个for循环中..
for (i=1;i<=L;i++)//会把下面的两个for循环都执行完毕才会进行i++,然后再重新再执行下面的那两个for循环...
依次下去...
for (i=1;i<=L;i++)//会把下面的两个for循环都执行完毕才会进行i++,然后再重新再执行下面的那两个for循环...
依次下去...
#9
for (i=1;i<=L;i++)
for (j=0;j<=L-i;printf("\n"),j++)
for (k=j;k<j+i;printf("%c",a[k]),k++);
这还不知道?
第2个循环我用逗号表达式把printf("\n")装进循环里。它就是这个循环的一部分。
第3个也相同。
但是3个循环体输出的我都用在循环体里了,所以在第3个循环后面加上;
表示在循环体里已经执行完毕。是空体了。
for (j=0;j<=L-i;printf("\n"),j++)
for (k=j;k<j+i;printf("%c",a[k]),k++);
这还不知道?
第2个循环我用逗号表达式把printf("\n")装进循环里。它就是这个循环的一部分。
第3个也相同。
但是3个循环体输出的我都用在循环体里了,所以在第3个循环后面加上;
表示在循环体里已经执行完毕。是空体了。
#10
每一个对应输出的都给你装进去了,还不明白?
#11
老铅你也太笨了,我好几天没来。两天就升到小星星了。
你看看你?
到现在还不是。我昨天一天就得了300多分
你看看你?
到现在还不是。我昨天一天就得了300多分
#12
Faint~~
我要工作的。再说分多分少那么重要吗,重要的是能帮助了别人,更快乐的是如果同时
自己也能增长见识。
你看看你,有多少问题,你的回答是准确的,特别是理论方面的,我看了你的一些回答,
真是触目惊心呀,哈哈。就拿这个问题来说,你这不是误导别人吗,人家写得比较规范的了,
你要做的是每一句每一句来解释,就行了。不要搞1、3L的代码。
不过,可以看出来,你回答问题很可爱的说 @_@ 。。。。
鼓励一下。。。
嘿嘿 。。。我要睡午觉了
我回答这个贴就是要你中计的,果然你中计了 。。。。哈哈
我要工作的。再说分多分少那么重要吗,重要的是能帮助了别人,更快乐的是如果同时
自己也能增长见识。
你看看你,有多少问题,你的回答是准确的,特别是理论方面的,我看了你的一些回答,
真是触目惊心呀,哈哈。就拿这个问题来说,你这不是误导别人吗,人家写得比较规范的了,
你要做的是每一句每一句来解释,就行了。不要搞1、3L的代码。
不过,可以看出来,你回答问题很可爱的说 @_@ 。。。。
鼓励一下。。。
嘿嘿 。。。我要睡午觉了
我回答这个贴就是要你中计的,果然你中计了 。。。。哈哈
#13
可能我的问法有问题,代码我能看懂的,但是那个判断条件是怎么出来的啊?最内层的循环条件又和上层的变量相关,条件看得真是乱七八糟的。。。
#14
对多重循环,由里往外看,走一遍,你会发现规律的。要熟练的话,还得多看、多写。
#15
LZ加油,代码百遍,其意自现
#16
比不过,就说风凉话。你真行
#17
内层的循环变化快,
外层的变化慢,
这是最基本的。
记住。
外层的变化慢,
这是最基本的。
记住。
#18
里边的for循环完了,外层的for才循环一次
#19
我是铅笔!
#20
这个貌似跟循环快慢没关系吧。
这个是基本功,只能多看多理解一下。
先总体理解吧。
#21
层层嵌套就OK撒,,,,我汗 如果构成复合语句就必须加{}
#22
貌似有人说过自己一个月得了几千分
#23
lz是不懂那个业务逻辑关系吧。代码语法没问题是吧。
#24
先看i,j,k之间的关系。把它们的关系搞清楚了,它的意思也就明了了。
#25
请单步调试
#1
#include <stdio.h>
#include <string.h>
int main()
{
char *a="abcde";
int L,i,j,k;
L=strlen(a);
for (i=1;i<=L;i++)
for (j=0;j<=L-i;j++)
{
for (k=j;k<j+i;k++)
printf("%c",a[k]);
printf("\n");
}
return 0;
}
#2
跟最近的一对。
离开看大括号
离开看大括号
#3
#include <stdio.h>
#include <string.h>
int main()
{
char *a="abcde";
int L,i,j,k;
L=strlen(a);
for (i=1;i<=L;i++)
for (j=0;j<=L-i;printf("\n"),j++)
for (k=j;k<j+i;printf("%c",a[k]),k++);
return 0;
}
这回就看明白了
#4
在每个循环的结尾都标注一下是哪个循环结束,然后多看看就行了~~~
#5
还是不知所以。。闷。。
#6
LZ你的代码是规范了的,不要被其他所误导
代码要看多,慢慢从简单地写起,多了就熟了
代码要看多,慢慢从简单地写起,多了就熟了
#7
单步调试就知道了
由里到外
由里到外
#8
这么说吧..在第一个for循环中..
for (i=1;i<=L;i++)//会把下面的两个for循环都执行完毕才会进行i++,然后再重新再执行下面的那两个for循环...
依次下去...
for (i=1;i<=L;i++)//会把下面的两个for循环都执行完毕才会进行i++,然后再重新再执行下面的那两个for循环...
依次下去...
#9
for (i=1;i<=L;i++)
for (j=0;j<=L-i;printf("\n"),j++)
for (k=j;k<j+i;printf("%c",a[k]),k++);
这还不知道?
第2个循环我用逗号表达式把printf("\n")装进循环里。它就是这个循环的一部分。
第3个也相同。
但是3个循环体输出的我都用在循环体里了,所以在第3个循环后面加上;
表示在循环体里已经执行完毕。是空体了。
for (j=0;j<=L-i;printf("\n"),j++)
for (k=j;k<j+i;printf("%c",a[k]),k++);
这还不知道?
第2个循环我用逗号表达式把printf("\n")装进循环里。它就是这个循环的一部分。
第3个也相同。
但是3个循环体输出的我都用在循环体里了,所以在第3个循环后面加上;
表示在循环体里已经执行完毕。是空体了。
#10
每一个对应输出的都给你装进去了,还不明白?
#11
老铅你也太笨了,我好几天没来。两天就升到小星星了。
你看看你?
到现在还不是。我昨天一天就得了300多分
你看看你?
到现在还不是。我昨天一天就得了300多分
#12
Faint~~
我要工作的。再说分多分少那么重要吗,重要的是能帮助了别人,更快乐的是如果同时
自己也能增长见识。
你看看你,有多少问题,你的回答是准确的,特别是理论方面的,我看了你的一些回答,
真是触目惊心呀,哈哈。就拿这个问题来说,你这不是误导别人吗,人家写得比较规范的了,
你要做的是每一句每一句来解释,就行了。不要搞1、3L的代码。
不过,可以看出来,你回答问题很可爱的说 @_@ 。。。。
鼓励一下。。。
嘿嘿 。。。我要睡午觉了
我回答这个贴就是要你中计的,果然你中计了 。。。。哈哈
我要工作的。再说分多分少那么重要吗,重要的是能帮助了别人,更快乐的是如果同时
自己也能增长见识。
你看看你,有多少问题,你的回答是准确的,特别是理论方面的,我看了你的一些回答,
真是触目惊心呀,哈哈。就拿这个问题来说,你这不是误导别人吗,人家写得比较规范的了,
你要做的是每一句每一句来解释,就行了。不要搞1、3L的代码。
不过,可以看出来,你回答问题很可爱的说 @_@ 。。。。
鼓励一下。。。
嘿嘿 。。。我要睡午觉了
我回答这个贴就是要你中计的,果然你中计了 。。。。哈哈
#13
可能我的问法有问题,代码我能看懂的,但是那个判断条件是怎么出来的啊?最内层的循环条件又和上层的变量相关,条件看得真是乱七八糟的。。。
#14
对多重循环,由里往外看,走一遍,你会发现规律的。要熟练的话,还得多看、多写。
#15
LZ加油,代码百遍,其意自现
#16
比不过,就说风凉话。你真行
#17
内层的循环变化快,
外层的变化慢,
这是最基本的。
记住。
外层的变化慢,
这是最基本的。
记住。
#18
里边的for循环完了,外层的for才循环一次
#19
我是铅笔!
#20
这个貌似跟循环快慢没关系吧。
这个是基本功,只能多看多理解一下。
先总体理解吧。
#21
层层嵌套就OK撒,,,,我汗 如果构成复合语句就必须加{}
#22
貌似有人说过自己一个月得了几千分
#23
lz是不懂那个业务逻辑关系吧。代码语法没问题是吧。
#24
先看i,j,k之间的关系。把它们的关系搞清楚了,它的意思也就明了了。
#25
请单步调试