我试图找出如何获得一个函数(在我的情况下,我做了一个笑脸)使用递归调用自己3次.我的老师对他的教学并不彻底,我不知道在代码中放什么来通过这种方法重复这个功能.我的代码看起来像
#include <stdio.h>
int main()
{
printf(" * * * *\n");
printf("* *\n");
printf(" . .\n");
printf("* *\n");
printf("* \\_/ *\n");
printf("* *\n");
printf(" * * * *\n");
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
Jer*_*myP 10
对于递归,您需要两件事:
通常的例子是factorial.n!适用n * (n - 1)!于大于0的所有数字(这是第一部分),0!并定义为1(这是第二部分).
int factorial(int n)
{
assert(n >= 0); // Otherwise, trouble!
if (n == 0)
{
return 1;
}
else
{
return n * factorial(n - 1);
}
}
Run Code Online (Sandbox Code Playgroud)
因此,要将脸部打印三次,请先将其打印两次,然后再次打印.概括地说,对于n> 0,打印面部n - 1次,然后再次打印.并且对于n = 0,什么都不做.
因此,您的递归函数应该使用一个参数n来告诉它打印面部的次数.如果n大于0,它应递归调用自身打印面部n - 1时间,然后再次打印面部.
确切的代码,我会留给你.