Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
332440 | 小林老师 | 【C3-4】打印n行的完整的蝴蝶结 | C++ | 通过 | 100 | 1 MS | 264 KB | 956 | 2025-07-14 21:58:59 |
/* m=n/2 i * m-i+1 □ 2*i * * * 2 1 4 ** ** 1 2 2 --------- ****** m+1个* --------- i * m-i+1 □ 2*i * ** ** 1 2 2 * * 2 1 4 */ #include<bits/stdc++.h> using namespace std; int main(){ int n, m; cin>>n; //特殊情况,特殊处理 if(n==1){ cout<<'*'; return 0; } m=n/2; //上半部分 for(int i=m; i>=1; i--){ for(int j=1; j<=m-i+1; j++){ cout<<'*'; } for(int j=1; j<=2*i; j++){ cout<<' '; } for(int j=1; j<=m-i+1; j++){ cout<<'*'; } cout<<endl; } //中间一行 for(int i=1; i<=n+1; i++){ cout<<'*'; } cout<<endl; //下半部分 for(int i=1; i<=m; i++){ for(int j=1; j<=m-i+1; j++){ cout<<'*'; } for(int j=1; j<=2*i; j++){ cout<<' '; } for(int j=1; j<=m-i+1; j++){ cout<<'*'; } cout<<endl; } return 0; }