多年来,我一直在努力寻找这个问题,我似乎无法理解它。当输入大于值 2 的数字时,程序只会连续输出 ' ' 或 '*' 并且不会终止,并给出正确的输出。
谁能看到我做错了什么?这是我的代码:
#include <iostream>
#include<cmath>
using namespace std;
int main()
{
int xx;
cout << "Enter the Height (odd positive numbers only): " << endl;
cin >> xx;
for(float y; y < xx; y++)
{
for(float x; x < xx; x++)
{
x = abs( x - ( xx / 2 ) );
y = abs( y - ( xx / 2 ) );
if( ( x + y ) <= ( xx / 2 ) )
cout << '*';
else
cout << ' ';
}
cout << endl;
}
return 0;
}