杨辉三角,不知道哪里错了

问题遇到的现象和发生背景
遇到的现象和发生背景,请写出第一个错误信息
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
运行结果及详细报错内容
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”
#include
using namespace std;
int main()
{
    int a[10][10] = { 0 };
    for (int i = 0; i < 10; i++)
    {
        a[i][i] = { 1};
        a[i][0] = { 1};
    }
    for (int i = 0; i < 10; i++)
    {
        for (int j = 1; j < i - 1; j++)
        {
            a[i][j] = a[i - 1][j] + a[i - 1][j - 1];
        }
    }
    for (int i = 0; i < 10; i++)
    {
        for (int j = 0; j < i; j++)
        {
            cout << a[i][j] << " ";
        }
        cout << endl;
    }
    return 0;
}

img

你 最后打印 没有加 左边的空格,帮你改了一版,参考如下:

img

#include<iostream>
using namespace std;
int main()
{
    int a[10][10] = { 0 };
    for (int i = 0; i < 10; i++)
    {
        a[i][0] = a[i][i] = 1;
    }
    for (int i = 2; i < 10; i++)
    {
        for (int j = 1; j < i; j++)
        {
            a[i][j] = a[i - 1][j] + a[i - 1][j - 1];
        }
    }
    for (int i = 0; i < 10; i++)
    {
        for(int j = 0;j < 10-i;j++){
            printf("  ");
        }
        for (int j = 0; j < i+1; j++)
        {
            printf("%4d",a[i][j]);
        }
        cout << endl;
    }
    return 0;
}


如有帮助,欢迎点赞+采纳哈!

这明显是for循环多输出了,你把输出的双层for循环的结束条件都减1就好了。

#include<iostream>
using namespace std;
int main()
{
    int a[10][10] = { 0 };
    for (int i = 0; i < 10; i++)
    {
        a[i][i] = { 1};
        a[i][0] = { 1};
    }
    for (int i = 0; i < 10; i++)
    {
        for (int j = 1; j < i - 1; j++)
        {
            a[i][j] = a[i - 1][j] + a[i - 1][j - 1];
        }
    }
    for (int i = 0; i < 9; i++)
    {
        for (int j = 0; j < i - 1; j++)
        {
            cout << a[i][j] << " ";
        }
        cout << endl;
    }
    return 0;
}

附运行结果:

img


望采纳