要编写一个正三角形和倒三角形的程序,你可以使用嵌套循环来控制每一行的空格和星号的数量。下面是一个简单的示例,使用C++编写,可以打印出正三角形和倒三角形:
```cpp
include using namespace std; // 打印正三角形 void printTriangle(int rows) { for (int i = 1; i <= rows; i++) { // 打印前导空格 for (int j = 1; j <= rows - i; j++) { cout << " "; } // 打印星号 for (int k = 1; k <= 2 * i - 1; k++) { cout << "*"; } // 换行 cout << endl; } } // 打印倒三角形 void printInvertedTriangle(int rows) { for (int i = rows; i >= 1; i--) { // 打印前导空格 for (int j = 1; j <= rows - i; j++) { cout << " "; } // 打印星号 for (int k = 1; k <= 2 * i - 1; k++) { cout << "*"; } // 换行 cout << endl; } } int main() { int rows; cout << "请输入三角形的行数: "; cin >> rows; // 打印正三角形 cout << "正三角形:" << endl; printTriangle(rows); // 打印倒三角形 cout << "倒三角形:" << endl; printInvertedTriangle(rows); return 0; } ``` 这个程序首先定义了两个函数`printTriangle`和`printInvertedTriangle`,分别用于打印正三角形和倒三角形。然后在`main`函数中,程序会提示用户输入三角形的行数,并调用这两个函数来打印出相应的图案。 你可以根据需要修改这个程序,比如改变输出格式或者增加其他功能。这个示例提供了一个基本的框架,你可以在此基础上进行扩展。