首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C語言星號圖形列印教學(六):倒置空心金字塔

     編輯:關於C語言

圖形目標

列印高度 5 行的倒置空心金字塔:

*********
 *     *
  *   *
   * *
    *

程式碼修正與實作

原始碼中條件判斷有語法錯誤(br="" 等 HTML 殘留),修正後:

#include <stdio.h>

const int num = 5;

int main() {
    int i, j;

    for(i = num; i > 0; i--) {
        for(j = 1; j < 2*num; j++) {
            if(i < num) {
                // 非頂行:只列印左右邊界
                if(j == num - i + 1 || j == num + i - 1) {
                    printf("*");
                } else {
                    printf(" ");
                }
            } else {
                // 頂行:全部列印 *
                if(j >= num - i + 1 && j <= num + i - 1) {
                    printf("*");
                } else {
                    printf(" ");
                }
            }
        }
        printf("\n");
    }
    return 0;
}

邏輯對比

特性空心金字塔 (問題39)倒置空心金字塔 (問題40)
外層迴圈i = 1; i <= num; i++i = num; i > 0; i--
實心行底行 (i == num)頂行 (i == num)
邊界行i < numi < num
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved