C++ cli c++;增量打印阵列

C++ cli c++;增量打印阵列,c++-cli,C++ Cli,我试图像这样递增地打印数组 TractMultBox->Text = rows[0] + newline; TractMultBox->Text += rows[1] + rows[0] + newline; TractMultBox->Text += rows[2] + rows[1] + rows[0] + newline; 这会产生这样的输出 3 43 543 但是,我可以很好地使用这段代码。它希望使用for循环,这将使它更容易,因为我希望它输出所有数组,直到自动达到

我试图像这样递增地打印数组

TractMultBox->Text = rows[0] + newline;
TractMultBox->Text += rows[1] + rows[0] + newline;
TractMultBox->Text += rows[2] + rows[1] + rows[0] + newline;
这会产生这样的输出

3
43
543

但是,我可以很好地使用这段代码。它希望使用for循环,这将使它更容易,因为我希望它输出所有数组,直到自动达到max。

双循环怎么样:

for (int i = 0; i < maxNRows; ++i)
{
    for (int j = 0; j < i; ++j)
    {
        TractMultBox->Text += rows[j];
    }
    TractMultBox->Text += newline;
}
for(int i=0;iText+=行[j];
}
TractMultBox->Text+=换行符;
}

像这样的双循环怎么样:

for (int i = 0; i < maxNRows; ++i)
{
    for (int j = 0; j < i; ++j)
    {
        TractMultBox->Text += rows[j];
    }
    TractMultBox->Text += newline;
}
for(int i=0;iText+=行[j];
}
TractMultBox->Text+=换行符;
}

我假设您想要串联而不是求和

string text;
for (int i = 0; i < rows.count; ++i)
{
   text = rows[i] + text;
   TractMultBox->Text = text + newline;
}
字符串文本;
对于(int i=0;iText=文本+换行符;
}
用于更少的代码行

string text = newline;
for (int i = 0; i < rows.count; ++i)
{
   TractMultBox->Text = (text = rows[i] + text);
}
string text=换行符;
对于(int i=0;iText=(Text=行[i]+文本);
}

但这有点难理解。

我假设您想要串联,而不是求和

string text;
for (int i = 0; i < rows.count; ++i)
{
   text = rows[i] + text;
   TractMultBox->Text = text + newline;
}
字符串文本;
对于(int i=0;iText=文本+换行符;
}
用于更少的代码行

string text = newline;
for (int i = 0; i < rows.count; ++i)
{
   TractMultBox->Text = (text = rows[i] + text);
}
string text=换行符;
对于(int i=0;iText=(Text=行[i]+文本);
}

但这有点难理解。

听起来像是for循环的工作,实际上可能是这样的:

#include <iostream>

int main()
{
    int rows[3] = {3, 4, 5};
    for (int i(0); i < 3; ++i)
    {
       for (int j(i); j >= 0; --j)
          std::cout << rows[j];
       std::cout << "\n";
    }
    std::cin.get();
    return 0;
}
不确定这是否是您想要的,但您可以相应地调整循环。关键是要有2个for循环


编辑:更改为您可以使用的自包含示例

听起来像是for循环的工作实际上可能是这样的:

#include <iostream>

int main()
{
    int rows[3] = {3, 4, 5};
    for (int i(0); i < 3; ++i)
    {
       for (int j(i); j >= 0; --j)
          std::cout << rows[j];
       std::cout << "\n";
    }
    std::cin.get();
    return 0;
}
不确定这是否是您想要的,但您可以相应地调整循环。关键是要有2个for循环



编辑:更改为您可以使用的自包含示例

您可能会发现在另一个for循环中嵌套一个for循环会很有帮助,您的代码不会给出类似于
3 343 343543
的输出?仅供参考:因为您是新手,所以当您找到答案时,您喜欢向上投一票,当您找到最佳答案时,请接受检查,以便其他人知道您的问题已得到解决。您可能会发现在另一个for循环中嵌套for循环将很有帮助。您的代码不会给出类似
3 343 343543
的输出吗?仅供参考:因为您是新手,所以当您找到答案时,您喜欢向上投一票,当你找到最佳答案时,接受检查,让其他人知道你的问题已经解决。是的,他需要2个for循环,但我不相信他想要基于所显示的期望输出的值的总和。我的坏,编辑以更新以上述格式打印的总和。是的,他需要2个循环,但我不相信他想要基于所需输出的值的总和。我的错误,编辑以更新以上述格式打印的总和。这比有两个循环快得多。令人惊讶的是,第二个循环是合法语法。这是一个打字错误。很抱歉我的编译器是我的语法检查器。这比有两个循环要快得多。令人惊讶的是,第二个循环是合法的语法。它是一个拼写错误。很抱歉我的编译器是我的语法检查器。只是一个例子。。。如果我自己走.NET路线,我更喜欢C语言而不是CLI。C语言在所有不同的标准中,比如C语言,似乎都是一团糟,但对于像我这样的noob来说,CLI/C++似乎更容易。再次感谢。@Tok Doom:这句话可能会让C#语言大哭一场。每种语言都有自己的标准和长处。随着时间的推移,你会发现语法并不是一个障碍,你最终会使用对手头的问题最好的方法。这只是一个例子。。。如果我自己走.NET路线,我更喜欢C语言而不是CLI。C语言在所有不同的标准中,比如C语言,似乎都是一团糟,但对于像我这样的noob来说,CLI/C++似乎更容易。再次感谢。@Tok Doom:这句话可能会让C#语言大哭一场。每种语言都有自己的标准和长处。随着时间的推移,您会发现语法并不是一个障碍,最终您将使用最适合解决当前问题的方法。