C++ C++;程序:使用输入重定向打印梯形

C++ C++;程序:使用输入重定向打印梯形,c++,C++,我试图打印一个梯形,但出于某种原因,要么我一直得到一个三角形,要么我的梯形的大小是错误的。有人能告诉我出了什么事或少了什么吗?非常感谢你的帮助。 有没有办法输入我自己的顶行/底行和高度值?我输入了我的身高,但我没有得到正确的身高 for (i = 1; i < trapeH; i++) { for (k = spacesT-1; k > 0; k--) { cout << " "; } spacesT = spacesT

我试图打印一个梯形,但出于某种原因,要么我一直得到一个三角形,要么我的梯形的大小是错误的。有人能告诉我出了什么事或少了什么吗?非常感谢你的帮助。 有没有办法输入我自己的顶行/底行和高度值?我输入了我的身高,但我没有得到正确的身高

for (i = 1; i < trapeH; i++)
{
    for (k = spacesT-1; k > 0; k--)
    {
        cout << " ";
    }

    spacesT = spacesT - 1;

    for (j = 1; j <= (2*i + 1); j++)
    {
        cout << "*";
    }

    cout << endl;
}
(i=1;i { 对于(k=spacesT-1;k>0;k--) {
cout您对
trapeH
spacesT
的输入值是多少

我对这两个都使用了10,得到了以下输出:

         ***
        *****
       *******
      *********
     ***********
    *************
   ***************
  *****************
 *******************
所以它似乎起作用了——它是一个梯形


这是更正后的源,您的参数是顶行的高度和宽度:

void trapezoid (int width, int height)
{
   for (int row = 0; row < height; ++row) {
      for (int col = height - row; col > 0; --col) {
         cout << " ";
      }
      for (int col = 0; col < (width + 2 * row); ++col) {
         cout << "*";
      }
      cout << endl;
   }
}
void梯形(整数宽度,整数高度)
{
对于(int行=0;行<高度;++行){
for(int col=高度-行;col>0;--col){

cout
用于(j=1;j您在开始时将
trapeH
spacesT
设置为什么?请为我们提供一些示例输入,以及基于此您期望梯形的外观。我正在尝试输入顶行和高度的值,但当我更改高度或“trapeH”时,它没有给我正确的高度。“spaceT”我放置在e代码来计算空白,打印出来形成梯形。所以你想把顶行的长度(星星的数量)和高度作为输入变量(而不是trapeH和spacesT)?是的,这是正确的。@Nathanel哦,好的。谢谢你的澄清。请告诉我,因为我还是编程的初学者。
for (j=1; j <=(2*i+1); j++)