黑马程序员技术交流社区

标题: 打印杨辉三角形 [打印本页]

作者: why19910522    时间: 2015-8-7 12:59
标题: 打印杨辉三角形
void printYangHuiOuShuHang(){
//    定义一个二维数组,用于存储数值
    int num[6][11] = {0};
//    for双层循环控制行数和列数
    for (int i = 0; i < 6; i++) {
        for (int j = 0; j < 6+i; j++) {
//            当j(列数) > 4-i(行数)时开始打印杨辉三角形
            if (j > 4-i ) {
                if (1 == j%2 && 1 == i%2) {
                    //奇数行奇数列时打印空格
                    printf("\t");
                }else if(0 == j%2 && 0  == i%2){
                     //偶数行偶数列时打印空格
                    printf("\t");
                }else if (j == i+5) {
                //将数字‘1’赋值给杨辉三角形最后一个数的相对应的数组元素,并打印此数组元素
                    num[j] = 1;
                    printf("%d",num[j]);
                }else{
                //给剩余的杨辉三角形的数赋值,并打印
                    num[j] = num[i-1][j-1] + num[i-1][j+1];
                    printf("%d\t",num[j]);
                }
            }else{
                //在整个图形的左侧打印一个由空格组成的直角倒三角形
                printf("\t");
            }
        }
        printf("\n");
    }
}


作者: why19910522    时间: 2015-8-7 13:03
运行结果

Snip20150807_23.png (59.66 KB, 下载次数: 0)

运行结果

运行结果





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2