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");
}
#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");
}
使用递归算法
#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;
}