递归方式实现打印一个整数的每一位
void print(int n)
{
if (n < 10)
printf("%d ", n);
else
{
print(n /10);
printf("%d ",n%10);
}
}
int main()
{
print(3456);
printf("\n");
return 0;
}
运行结果:

写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和,
例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19
int DigitSum(int n)
{
if (n < 10)
return n;
else
return n%10 + DigitSum(n/10);
}
int main()
{
printf("%d\n",DigitSum(1729));
return 0;
}
运行结果:

递归实现n^k
int test(int n,int k)
{
if (k == 0)
return 1;
else
return n*test(n, k-1);
}
int main()
{
printf("%d\n",test(2,4));
return 0;
}
运行结果:

网友评论