用*输出各种图形(c++版)(正方形,正三角形,倒三角形,菱形)
时间: 2024-10-13 09:15:18 浏览: 14
在C++中,我们可以使用循环结构以及控制台输出字符来绘制各种简单的图形。下面是一些基本示例:
1. **正方形**:
```cpp
#include <iostream>
void printSquare(int size) {
for (int i = 0; i < size; ++i) {
for (int j = 0; j < size; ++j) {
std::cout << '*';
}
std::cout << '\n';
}
}
int main() {
int squareSize;
std::cout << "请输入正方形边长: ";
std::cin >> squareSize;
printSquare(squareSize);
return 0;
}
```
2. **正三角形**:
```cpp
void printTriangle(int size) {
for (int i = 0; i < size; ++i) {
for (int j = size - i; j > 0; --j) {
std::cout << ' ';
}
for (int k = 0; k <= i; ++k) {
std::cout << '*';
}
std::cout << '\n';
}
}
// ...同理,其他图形也可以类似编写
```
3. **倒三角形**:
```cpp
void printInvertedTriangle(int size) {
for (int i = size; i >= 0; --i) {
for (int j = size - i; j > 0; --j) {
std::cout << ' ';
}
for (int k = 0; k < i; ++k) {
std::cout << '*';
}
std::cout << '\n';
}
}
4. **菱形**:
```cpp
void printDiamond(int size) {
// 上半部分
for (int i = 0; i < size; ++i) {
if (i <= size / 2) {
for (int j = 0; j < size - 2 * i; ++j) {
std::cout << ' ';
}
for (int k = 0; k <= i; ++k) {
std::cout << '*';
}
std::cout << '\n';
} else {
for (int j = 0; j < size - 2 * (size - i); ++j) {
std::cout << ' ';
}
for (int k = 0; k < size - i; ++k) {
std::cout << '*';
}
std::cout << '\n';
}
}
// 下半部分
for (int i = size - 1; i >= 0; --i) {
if (i < size / 2) {
for (int j = 0; j < size - 2 * i; ++j) {
std::cout << ' ';
}
for (int k = 0; k <= i; ++k) {
std::cout << '*';
}
std::cout << '\n';
}
}
}
// ...以上每个函数后添加类似main函数的调用
```
阅读全文