2 条题解
-
0
/* 思路分析 思路一 : 1. 用两个循环打印 第一个打印上半部分 循环体内再加两个循环 一个打印空格一个打印字符 第二个打印下半部分 */ #include<bits/stdc++.h> using namespace std; char ch; int main() { char ch; cin >> ch; //打印上半部分 (n+1) / 2 行 //每一行对应 (n+1)/ 2 - i 个空格 //每一行对应 2i - 1 个 i代表第几行 for ( int i = 1; i <= 3; i++ ) { //每一行对应 (n+1)/ 2 - i 个空格 for ( int j = 1; j <= 3 - i; j++ ) { cout << " "; } //每一行对应 2i - 1 个 i代表第几行 for ( int j = 2 * i - 1; j > 0; j-- ) { cout << ch; } //换行 cout << endl; } //打印下半部分 (n-1) / 2 行 //每一行对应 j 个空格 //每一行对应 个 2i-1 代表第几行 for ( int i = 2; i >= 1; i-- ) { //每一行对应 i 个空格 for ( int j = i; j <= 2; j++ ) { cout << " "; } //每一行对应 2i - 1 个 i代表第几行 for ( int j = 2 * i - 1; j > 0; j-- ) { cout << ch; } //换行 cout << endl; } return 0; }
信息
- ID
- 40
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 22
- 已通过
- 9
- 上传者