我的教授问我做这件事:递归和用C
Input Number: 5
+++++
+++++
+++++
+++++
+++++
我一直在努力地试图让THI;我继续以一个巨大的空白“+”结尾,并且“+”号为 。
你能帮我解决这个代码在C吗?
#include <stdio.h>
#include <conio.h>
int space(int space1)
{
if(space1 == 0)
{
return 1;
}
else
{
return printf("\n") && space(space1 - 1);
}
}
int visual(int plus)
{
if (plus == 0)
{
return 1;
}
else
{
return printf("+") && visual (plus - 1) && space(plus - 1);
}
}
int main()
{
int number;
printf("Please give the number\n");
scanf("%d",&number);
visual(number);
getch();
}
新的编辑;令我沮丧。它给了我5行+和一个大空间。
结果应该是“+”的平方n x n,其中n是输入的数字?这种情况下不需要递归 – Vladimir 2012-01-16 08:06:06
这个问题看起来很简单。我会建议使用调试器,并进入代码并理解程序在做什么。这将帮助您了解该程序如何执行。至于解决这个bug的指针,&&表示'AND' - C语言中的逻辑运算符,与linux shell不同,printf返回打印的字符数。 – 2012-01-16 08:08:04
我的教授只会说在递归上做任何事情。 – JuanDelCarlos 2012-01-16 08:11:15