首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

C语言排列组合问题 用指针作为函数 采用递归

发布网友

我来回答

1个回答

热心网友

#include<stdio.h>
int n;
void pai(int cur,int *a)
{
    if(cur==n+1)
    {
        for(int i=1;i<=n;i++)
            printf("%d ",a[i]);
        printf("\n");
        return ;
    }
    for(int i=1;i<=n;i++)
    {
        int ok=1;
        for(int j=1;j<cur;j++)
            if(a[j]==i)
                ok=0;
        if(ok)
        {
            a[cur]=i;
            pai(cur+1,a);
        }
    }
}
void main()
{
    int a[15];
    //排列的范围1~n
    printf("请输入n:");
    scanf("%d",&n);
    pai(1,a);
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com