| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1272 人关注过本帖
标题:for的嵌套
只看楼主 加入收藏
朱林
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2011-10-17
结帖率:90%
收藏
 问题点数:0 回复次数:12 
for的嵌套
请帮忙解释一下中间两个for语句以及这两个for语句的读法   即两个for的各自范围
#include<stdio.h>
void main()
{
    int a[10];
    int i,j,t;
    printf("input 10 numbers:\n");
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);
    printf("\n");
    for(j=0;j<9;j++)
        for(i=0;i<9-j;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
            printf("the sorted numbers:\n");
            for(i=0;i<10;i++)
                printf("%d ",a[i]);
            printf("\n");
}
搜索更多相关主题的帖子: include numbers input 
2011-10-23 20:15
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
自己去分析  for循环只管住从他开始到第一个分号结束

                                         
===========深入<----------------->浅出============
2011-10-23 20:16
朱林
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2011-10-17
收藏
得分:0 
for(j=0;j<9;j++)
        for(i=0;i<9-j;i++)
像这种两个连在一起一起的for呢  如何解读??
2011-10-23 20:34
落叶风
Rank: 2
等 级:论坛游民
帖 子:22
专家分:53
注 册:2011-6-22
收藏
得分:0 
每一次外部循环中都完成一次完整的内部循环。
就是说判断外部循环体条件进入循环后,在判断内部循环条件,知道内部循环结束,接着跳出内部循环,进行外部循环。。。。。。就这样啊
2011-10-23 20:39
yj269172025
Rank: 2
等 级:论坛游民
帖 子:41
专家分:81
注 册:2011-9-29
收藏
得分:0 
第一: for(j=0;j<9;j++)
        for(i=0;i<9-j;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
第二: for(i=0;i<9-j;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
2011-10-23 20:42
朱林
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2011-10-17
收藏
得分:0 
if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
执行完后  是返回for(j=0;j<9;j++)
还是for(i=0;i<9-j;i++)啊??
2011-10-23 21:23
小P
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-10-20
收藏
得分:0 
回复 6楼 朱林
    for(j=0;j<9;j++)
        for(i=0;i<9-j;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
            printf("the sorted numbers:\n");  这个是属于一个循环里面的。如果if成立 那么会执行if里面的语句,然后输出printf,输出后会返回到 上面for(i=0;i<9-j;i++)  i++,然后判断i<9-j。。如果成立就会执行if如果不成立 它会返回到上一层  for(j=0;j<9;j++)
2011-10-23 22:11
Alphalab
Rank: 2
等 级:论坛游民
帖 子:22
专家分:12
注 册:2011-3-29
收藏
得分:0 
1) j=0, 执行循环
for(i=0;i<9;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
2)j=1,执行循环
for(i=0;i<8;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
。。。。。。
9)j=8,执行
for(i=0;i<1;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }

2011-10-23 22:38
lowkey_c
Rank: 2
等 级:论坛游民
帖 子:19
专家分:28
注 册:2011-10-14
收藏
得分:0 
这个排序法和选择排序法很接近。
2011-10-24 22:29
吴军旗
Rank: 5Rank: 5
等 级:职业侠客
帖 子:286
专家分:308
注 册:2011-9-14
收藏
得分:0 
冒泡法。。。。。。。。。。。。排列大小,,,,,,我做过N次了。。。。。。。。。

最惨的不是忘不了悲伤的回忆,而是那些悲伤的回忆却开始记不清。。。
2011-10-24 23:49
快速回复:for的嵌套
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024449 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved