递归函数的应用

2018-01-17  本文已影响4人  Day_Winston

递归函数

把直接或间接地调用自身的函数称为递归函数。函数的构建通常需要一个函数或者一个过程来完成。

#include<stdio.h>
int a[10], book[10], n;

void full(int x)
{
    int i;
    if(x == n+1)
    {
        for(i = 1; i <= n; i++)
            printf("%d", a[i]);
        printf("\n");

        return;
    }
    for(i = 1; i <= n; i++)      //i表示1到n的数
    {
        if(book[i] == 0)         //记录数字i,0表示i还没有进入数组a中
        {
            a[x] = i;            //将数字i放入数组a第X个位置
            book[i] = 1;         //表示数字i进入数组a中
            full(x+1);            //
            book[i] = 0;         //收回数字i
        }
    }
    return;
}
int main()
{
    printf("please input a number(No more than 9 ):\n");
    scanf("%d", &n);
    full(1);
    getchar();getchar();
    return 0;
}

上一篇 下一篇

猜你喜欢

热点阅读