试图打印帕斯卡三角形的第二行

时间:2018-02-16 06:35:49

标签: for-loop pascals-triangle

尝试打印Pascal三角形的第二行,这只是两个1。 根据用户的输入,我知道对于第二行,将有1(2 *行-1)/ 2以及(2 *行-1)/ 2 + 2。使用for循环来做这一行,见下文:

    //PRINT SECOND LINE 
for (j=1; j<=((2*rows)-1); j++){
    if ( j == (2*rows -1)/2 ){ 
        printf("\n1");
    }
    else if ( j == (2*rows -1)/2 + 2  ){
        printf ("1");
    }
    else if ( j == (2*rows -1) ){
        printf(" \n");
    }
    else{
        printf(" ");
    }
}

假设用户输入rows = 4。然后我的输出是:

    ***1***
    1*1****

而不是

    ***1***
    **1*1**

*用于表示空格。输出的第一行使用不同的代码打印。我主要担心的是第二行。

感谢任何帮助,谢谢!

0 个答案:

没有答案