这道题只需要掌握一个逻辑就很方便:适合的位置,才有五角星。
我们来观察样例:发现只有正方形的边缘有*,而且第一和最后一行是全部,中间只有前和后,那么我们来写一段二维遍历的代码:
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
}
cout<<endl;
}
然后便是重点:有*的第一和最后一行分别是i=1,i=n,中间前和后为j=1,j=n:
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(i==1||i==n||j==1||j==n)cout<<"*";else cout<<" ";
}
cout<<endl;
}
再加上int n;cin>>n;和框架:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(i==1||i==n||j==1||j==n)cout<<"*";else cout<<" ";
}
cout<<endl;
}
return 0;
}
就完成了!