| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6821 人关注过本帖
标题:不用循环打印数组
只看楼主 加入收藏
ebao
Rank: 2
来 自:杭州
等 级:论坛游民
帖 子:33
专家分:66
注 册:2011-3-9
收藏
得分:0 
我太菜了....确实可以的...递归行的...也可以跳转..意思的编了下
程序代码:
#include "stdio.h"
#include <setjmp.h>

jmp_buf ebuf;

int main(int argc,char * argv[])
{
    int a[5]={1,2,3,4,5};
    int i=0;
    int k=5;
    int l;
    l=setjmp(ebuf);
    if(l!=0 && i<k)
    {
        printf("%d\n",a[i]);
        i++;
        longjmp(ebuf,1);
    }
    else if(i<k)
    {
        longjmp(ebuf,1);

    }
    return 0;

2011-04-11 06:48
刘定邦
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:687
专家分:1570
注 册:2010-9-21
收藏
得分:0 
不会。。
2011-04-11 06:57
njkido
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:224
专家分:1184
注 册:2011-3-8
收藏
得分:20 
这个应该属于奇技淫巧了把
程序代码:
int Array[10] = {1,2,3,4,5,6,7,8,9,10};

typedef struct FUN
{
public:
    static int index;
    FUN(){
        printf("Array[%d] = %d\n",index-1,Array[index++]);
    }
}FUN_OWN;

int FUN::index = 0;

int main()
{
    FUN_OWN Test[10];

    return 0;
}


还有
程序代码:
int Array[10] = {1,2,3,4,5,6,7,8,9,10};


int index = 0;

int main()
{
    if (index<10)
    {
        printf("Array[%d] = %d\n", index-1, Array[index++]);   
        main();
    }

    return 0;
}


还有用宏的 也是一种思路~
程序代码:
int Array[8] = {1,2,3,4,5,6,7,8};

#define FUN_PRINT(x) x;x;

int main()
{
    int index = 0;

    FUN_PRINT(
        FUN_PRINT(
            FUN_PRINT(
                printf("Array[%d] = %d\n", index-1, Array[index++])
                )
            )
        )        
        

    return 0;
}


[ 本帖最后由 njkido 于 2011-4-11 11:18 编辑 ]
2011-04-11 11:04
hy1107648
Rank: 2
等 级:论坛游民
帖 子:80
专家分:40
注 册:2010-2-8
收藏
得分:0 
见识了C语言的灵活,学习了
2011-04-11 11:16
Alar30
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:10
帖 子:988
专家分:1627
注 册:2009-9-8
收藏
得分:0 
有点晕了。。。
2011-04-11 11:17
wangyi_huzai
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-4-13
收藏
得分:0 
见识了!学习了!
2011-04-13 16:55
thunder_2011
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:31
专家分:100
注 册:2011-4-11
收藏
得分:0 
用指针呗
2011-04-13 16:59
死不了的恨
Rank: 2
来 自:淮北
等 级:论坛游民
帖 子:16
专家分:54
注 册:2011-4-11
收藏
得分:0 
楼主可以用goto函数,进行多次跳转。下面是我写的一个测试程序,楼主可以参考一下,程序已运行过,无错误。
#include<stdio.h>
void main()
{
    int i=0;
    int a[10]={1,2,3,4,5,6,7,8,9,0};
start:    printf("%d\n",a[i]);
        if(i<9)
        {
            ++i;
            goto start;
        }
}

天行鉴,君子以自强不息。
2011-04-13 17:27
快速回复:不用循环打印数组
数据加载中...
 
   



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

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