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

C++ 打印背靠背三角圖案:雙層循環控制空格與字符

     編輯:關於C++

目標圖案

         # $
        ## $$
       ### $$$
      #### $$$$
     ##### $$$$$
    ###### $$$$$$
   ####### $$$$$$$
  ######## $$$$$$$$
 ######### $$$$$$$$$
########## $$$$$$$$$$

每行:前導空格遞減,# 遞增,中間一空格,$ 遞增。

代碼實現

#include 
using namespace std;

int main() {
    const int n = 10;
    for (int i = 1; i <= n; ++i) {
        // 前導空格
        for (int s = 0; s < n - i; ++s)
            cout << ' ';
        // 左側 # 三角
        for (int k = 0; k < i; ++k)
            cout << '#';
        // 中間間隔
        cout << ' ';
        // 右側 $ 三角
        for (int k = 0; k < i; ++k)
            cout << '$';
        cout << '\n';
    }
    return 0;
}

邏輯分析

行號 i空格數 n-i# 數 i$ 數 i
1911
2822
............
1001010

擴展變體

  1. 字符參數化:接收命令行參數指定兩側字符、高度、間隔。
  2. 居中對齊:計算最大行寬,動態調整前導空格。
  3. 倒轉/鏡像:外層循環遞減,或交換左右字符順序。
  4. 填充字符:空格替換為 '.' 視覺化對齊。

教學價值

  • 雙層/三層循環嵌套控制流。
  • 循環變量與輸出數量的線性關係建模。
  • 字符輸出緩衝與 std::cout 性能觀察。
  • 避免 system("pause"),IDE 運行自動暫停或用 cin.get()。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved