m0_64344263
2021-12-23 22:34
采纳率: 61.1%
浏览 24

杨辉三角的代码错误了,求纠错

小白初学c语言,我这个代码运行不出来,求大佬纠错
#include "stdio.h"
int main()
{
int a[10][10],i,t;
for(i=0;i<=9;i++) //使第一列全部为1
{
a[i][0]=1;
}
for(i=0;i=9;i++) //使杨辉三角之外的数组空位均为0
for(t=i+1;t<=9;t++)
{
a[i][t]=0;
}
for(i=1;i<=9;i++) //每一项等于头顶两项之和
for(t=1;t<=i;t++)
{
a[i][t]=a[i-1][t-1]+a[i-1][t];
}
for(i=0;i<=9;i++) //打印三角
{
for(t=0;t<=9;t++)
{
if(a[i][t]!=0)
printf("%d\t",a[i][t]);
}
printf("\n");
}
return 0;
}

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

  • 最佳回答
    for (i = 0; i = 9; i++)      i = 9是赋值
    

    改成

    for (i = 0; i <= 9; i++) //使杨辉三角之外的数组空位均为0
    

    你题目的解答代码如下:

    #include "stdio.h"
    int main()
    {
        int a[10][10], i, t;
        for (i = 0; i <= 9; i++) //使第一列全部为1
        {
            a[i][0] = 1;
        }
        for (i = 0; i <= 9; i++) //使杨辉三角之外的数组空位均为0
            for (t = i + 1; t <= 9; t++)
            {
                a[i][t] = 0;
            }
        for (i = 1; i <= 9; i++) //每一项等于头顶两项之和
            for (t = 1; t <= i; t++)
            {
                a[i][t] = a[i - 1][t - 1] + a[i - 1][t];
            }
        for (i = 0; i <= 9; i++) //打印三角
        {
            for (t = 0; t <= 9; t++)
            {
                if (a[i][t] != 0)
                    printf("%d\t", a[i][t]);
            }
            printf("\n");
        }
        return 0;
    }
    

    img

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    评论
    解决 1 无用
    打赏 举报 编辑记录
查看更多回答(1条)

相关推荐 更多相似问题