根据a和b的值输出一个由*组成的杠铃形状。其中a表示杠铃的高度有多少行,杠铃的两端都是长度为b的正方形,帮看看哪里错了,谢谢
#include<iostream>
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
if (a <= 30 && b <= 11 && a >= 2 * b + 1)
{
for (int i = 1;i <= a;i++)
{
for (int j = 1;j <= b;j++)
{
if (i <= b || i >= a - b + 1)
cout << "*";
else if (j == b / 2 + 1)
cout << "*";
else
cout << " ";
}
cout << endl;
}
}
return 0;
}