99我,xdm!囚囚你们了

1、设计一个递归算法,输出一个大于零的十进制数n的各数字位,如n=123,输出各数字位为123。
2、递归设计简单选择排序和冒泡排序。


#include <stdio.h>
int  main()

{
    int i=0;

    int n,j,a[16]; //n表示输入的十进制数

    printf("请输入十进制数:");

    scanf("%d",&n);

    while(n>=10)

    {
        a[i]=n%10;

        i++;

        n=n/10;

    }

    a[i]=n;

    for(j=i;j>=0;j--)
        printf("%d ",a[j]);
    printf("\n");
}

img

#include <stdio.h>
void main()
{
    int i=0;
    int n,j,a[16];
    printf("请输入十进制数:");
    scanf("%d",&n);
    while(n>=10)
    {
        a[i]=n%10;
        i++;
        n=n/10;
    }
    a[i]=n;
    for(j=i;j>=0;j--)
        printf("%d\t",a[j]);
    printf("\n");
}

img

使用递归算法

#include <stdio.h>
void fac(int n)
{
    if(n<10)
        printf("%d",n);
    else
    {
        fac(n/10);
        printf("%d",n%10);
    }
}
int main()
{
    int n;
    scanf("%d",&n);
    fac(n);
    system("pause");
    return 0;
}