| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 679 人关注过本帖, 1 人收藏
标题:C语言for文循环 问题
只看楼主 加入收藏
我是含羞草
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-5-18
结帖率:60%
收藏(1)
已结贴  问题点数:20 回复次数:8 
C语言for文循环 问题
想要最后得出以下内容,但for文只能用一次

我能用两次做出来,但用一次感觉不太现实,应为中间有一个“next,count down”感觉循环不起来啊,求教!!

Please input count number:10
Start Count Up.
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
Next, count down.
10,
9,
8,
7,
6,
5,
4,
3,
2,
1.
Finish!
搜索更多相关主题的帖子: number C语言 count 
2015-05-18 20:52
我爱吃青菜
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:6
帖 子:190
专家分:500
注 册:2015-3-29
收藏
得分:10 
程序代码:
#include <stdio.h>

int main(void)
{
    int i, n;
    printf("Please input count number:");
    scanf("%d", &n);
    printf("Start Count Up.\n");
    for(i = 1; i < 2*n; i++)
    {
        if(i <= n)
            printf("%d,\n", i);
        if(i == n)
            printf("Next, count down.\n");        
        if(i >= n)
        {
            if(i == 2 * n - 1)
                printf("%d.\n", 2 * n - i);    
            else
                printf("%d,\n", 2 * n - i);
        }            
    }
    printf("Finish!\n");
    return 0;
}


[ 本帖最后由 我爱吃青菜 于 2015-5-18 21:23 编辑 ]
2015-05-18 21:06
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2277
专家分:10647
注 册:2015-3-19
收藏
得分:1 
#include<stdio.h>
void count(int i,int j){
    printf("%d,\n",i);
    if(i<j)count(i+1,j);
    if(i==j)
    printf("Next, count down.\n");
    if(i==1)printf("%d.\n",i);
    else printf("%d,\n",i);
}
main(){
    int n;
    printf("Please input count number:");
    scanf("%d",&n);
    printf("Start Count Up.\n");
    count(1,n);
    printf("Finish!");
   
}

剑栈风樯各苦辛,别时冰雪到时春
2015-05-18 21:21
maqiangdemo
Rank: 2
等 级:论坛游民
帖 子:78
专家分:98
注 册:2014-2-26
收藏
得分:0 
回复 3楼 林月儿
倒叙部分是怎么实现的,咋看着只输出一个n值呢
2015-05-20 10:58
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9008
专家分:53957
注 册:2011-1-18
收藏
得分:0 
2楼的代码更好,将2楼的代码简化一下给你

程序代码:
#include <stdio.h>
#include <math.h>

int main( void )
{
    for( int i=-10; i<=+10; ++i )
    {
        if( i == 0 )
            puts( "Next, count down." );
        else
            printf( "%d\n", 11-abs(i) );
    }
    return 0;
}

收到的鲜花
  • 林月儿2015-05-20 12:19 送鲜花  5朵   附言:赞一个,这样的代码我见过关于星阵处理的
  • TAAAAB2015-05-20 15:20 送鲜花  3朵  
2015-05-20 11:11
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2277
专家分:10647
注 册:2015-3-19
收藏
得分:0 
回复 4楼 maqiangdemo
请教楼下的大神就明白了,不敢班门弄斧

剑栈风樯各苦辛,别时冰雪到时春
2015-05-20 12:20
LGing
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:32
专家分:107
注 册:2015-3-15
收藏
得分:9 
回复 楼主 我是含羞草
#include<stdio.h>
int main()
{
    int a,i;
    printf("Please input count number:");
    scanf("%d",&a);
    printf("start count up:\n");
    for (i=1;i<=a;i++)
        printf("%d,\n",i);
    printf("next,count down\n");
    while(a)
    {
        printf("%d,\n",a--);
    }
    printf("Finish");
}
一个for,可以用while不?
2015-05-20 13:19
maqiangdemo
Rank: 2
等 级:论坛游民
帖 子:78
专家分:98
注 册:2014-2-26
收藏
得分:0 
回复 6楼 林月儿
已经弄明白了,谢谢
2015-05-20 15:15
maqiangdemo
Rank: 2
等 级:论坛游民
帖 子:78
专家分:98
注 册:2014-2-26
收藏
得分:0 
回复 5楼 rjsp
写得好,都是大神
2015-05-20 15:26
快速回复:C语言for文循环 问题
数据加载中...
 
   



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

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