【发布时间】:2018-03-19 06:50:43
【问题描述】:
我用c写了下面的代码来打印弗洛伊德的三角形。
int main()
{
printf("Enter the number of rows you want to have");
int t;
scanf("%d",&t);
int i;
char a[1000] ="";
for(i=1;i<=t;i++)
{
if (i%2!=0)
{
strcat("1",a);
printf("%c\n",a);}
else
strcat("0",a);
printf("%c\n",a);
}
return 0;
}
该程序对我来说似乎很好,但一旦我执行它就停止工作。请帮忙
我希望输出如下-
1
01
101
0101
10101
等等
【问题讨论】:
-
另外,您可能希望在
else语句周围添加大括号;目前,无论 if-else 块如何,都会调用第二个printf("%c\n",a)。或者您可以删除第一个printf("%c\n",a)语句。 -
非常感谢您的帮助。该程序现在并没有停止工作,但我仍然没有得到想要的输出。例如,如果我输入的行数为 4。我得到 4 个空白行
-
我希望模式像 - 1 01 101 0101 10101 等等。并且每个数字都在一个新行中
-
请在问题中添加您的预期输出。我不知道Flloyd's triangle 是什么意思。
-
我在代码中添加了预期的输出