openjudge大一金中的蛋糕裱花错在了哪

img


#include

using namespace std;

int main()
{
    int n,a;
    cin>>n;
    a=2*n-1;
    for(int x=1;x<=a;x++)
{   for(int y=1;y<=a;y++)
{   if(x<5)
   {if(x+y==n+1||y-x==n-1)
    cout<<"*";
    else
    cout<<" ";
   }
    else
   {if(x+y==3*n-1||x-y==n-1)
    cout<<"*";
    else
    cout<<" ";
   }
}
    cout<return 0;
}

你分上三角和下三角,分别写两个循环,要简单很多,不要老想一步到位
此外,自己执行一下看看打印出来的到底是个什么图形,就知道错在哪了,不要总靠猜