这道题我是用一维数组存储每层的数据的,因为题目只要求输出,所以没必要用二维数组存储,用二维数组写很简单,我知道怎么编写,想请帮看看,我用一维数组存储写的错在哪?能够输入n=1,n=2输入n=3显示结果后就不让输入了,这是为什么?
#include
int main()
{
int i,j,n,a[31];
while(scanf("%d",&n)!=EOF)
{
for(i=1;i<=n;i++)
{
a[1]=a[i]=1;
for(j=i-1;j>1;j++)
{
a[j]=a[j]+a[j-1];
}
for(j=1;j<=i;j++)
{
printf("%d",a[j]);
if(j<=i-1)
printf(" ");
}
printf("\n");
}
printf("\n");
}
return 0;
}
杭电acm2032高手进
答案:1 悬赏:80 手机版
解决时间 2021-02-26 01:31
- 提问者网友:捧腹剧
- 2021-02-25 19:16
最佳答案
- 五星知识达人网友:从此江山别
- 2021-02-25 20:10
#include
int main()
{
int i,j,n,a[31];
while(scanf("%d",&n)!=EOF)
{
for(i=1;i<=n;i++)
{
a[1]=a[i]=1;
for(j=i-1;j>1;j--) // j-- ~~~
{
a[j]=a[j]+a[j-1];
}
for(j=1;j<=i;j++)
{
printf("%d",a[j]);
if(j<=i-1)
printf(" ");
}
printf("\n");
}
printf("\n");
}
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯