Formatting 备注字段中的输出 void\u fastcall TForm1::Step(int\u Sum,int\u Num,int\u Val) { 如果(_sumadd(“{”); for(int i=0;i行->添加(数据[i]); sc++; 备忘录1->行->添加(“}”); 备忘录1->行->添加(“\n”); 标签4->Caption=sc; 返回; } for(int i=\u Val;i我通常为每个输出行构建一个UnoDeSoSo,如: void __fastcall TForm1::Step(int _Sum, int _Num, int _Val) { if (_Sum <= 0 || _Num <= 0 || _Sum < _Val) return; if (_Num == 1) { data[theK - 1] = _Sum; Memo1->Lines->Add("{"); for (int i = 0; i < theK; ++i) Memo1->Lines->Add(data[i]); sc++; Memo1->Lines->Add("}"); Memo1->Lines->Add("\n"); Label4->Caption = sc; return; } for (int i = _Val; i < _Sum; ++i) { data[theK - _Num] = i; Step(_Sum - i, _Num - 1, i); } } unicordingstr; 对于(int I=0;IAdd(Str); I

Formatting 备注字段中的输出 void\u fastcall TForm1::Step(int\u Sum,int\u Num,int\u Val) { 如果(_sumadd(“{”); for(int i=0;i行->添加(数据[i]); sc++; 备忘录1->行->添加(“}”); 备忘录1->行->添加(“\n”); 标签4->Caption=sc; 返回; } for(int i=\u Val;i我通常为每个输出行构建一个UnoDeSoSo,如: void __fastcall TForm1::Step(int _Sum, int _Num, int _Val) { if (_Sum <= 0 || _Num <= 0 || _Sum < _Val) return; if (_Num == 1) { data[theK - 1] = _Sum; Memo1->Lines->Add("{"); for (int i = 0; i < theK; ++i) Memo1->Lines->Add(data[i]); sc++; Memo1->Lines->Add("}"); Memo1->Lines->Add("\n"); Label4->Caption = sc; return; } for (int i = _Val; i < _Sum; ++i) { data[theK - _Num] = i; Step(_Sum - i, _Num - 1, i); } } unicordingstr; 对于(int I=0;IAdd(Str); I,formatting,c++builder,tmemo,Formatting,C++builder,Tmemo,我有如下输出: 12345678910 1112 但我需要像这样的输出: 1,2,3,45,6,7,89,10,11,12 如何在C++ Builder中实现?我有MeMo1或ListBox。我需要格式化输出。 < P>我通常为每个输出行构建一个UnoDeSoSo,如: void __fastcall TForm1::Step(int _Sum, int _Num, int _Val) { if (_Sum <= 0 || _Num <= 0 || _Sum < _Va

我有如下输出:

1
2
3
4
5
6
7
8

9
10
11
12

但我需要像这样的输出:

1,2,3,4
5,6,7,8
9,10,11,12


如何在C++ Builder中实现?我有MeMo1或ListBox。我需要格式化输出。

< P>我通常为每个输出行构建一个UnoDeSoSo,如:
void __fastcall TForm1::Step(int _Sum, int _Num, int _Val)
{
    if (_Sum <= 0 || _Num <= 0 || _Sum < _Val) return;
    if (_Num == 1)
    {
        data[theK - 1] = _Sum;
        Memo1->Lines->Add("{");
        for (int i = 0; i < theK; ++i)
            Memo1->Lines->Add(data[i]);
        sc++;
        Memo1->Lines->Add("}");
        Memo1->Lines->Add("\n");
        Label4->Caption = sc;
        return;
    }
    for (int i = _Val; i < _Sum; ++i)
    {
        data[theK - _Num] = i;
        Step(_Sum - i, _Num - 1, i);
    }
}
unicordingstr;
对于(int I=0;IAdd(Str);

I<5
将是比
1<5
更好的条件。因此,最好使用比
I
更好的变量名
UnicodeString Str;
for (int I =0; I<5;i++)
{
  Str += IntToStr(I)+","
};
Str.SetLength(Str.Length -1);  // trim off last comma
Memo1->Add(Str);