为N long String计算String的所有可能组合

时间:2016-06-20 05:59:01

标签: c string windows combinations

使用C语言我必须编写一个程序来计算给定字符串的所有可能组合。

示例输入:

  

ABC

示例输出:

  

A,B,C,AB,AC,BC,ABC

我编写了这段代码,它适用于我的示例输入,但目前它仅适用于长度恰好为3个字符的字符串。我想修改我的程序,以便它可以接受一个长度为N个字符的字符串并仍然给出正确的输出。

到目前为止,这是我的代码:

int position1 = 0;
int position2 = 0;
char conjuntoQ[100]="\0";
size_t len;
while (m1.q[position1] != NULL) {
   position2 = position1;
   position2++;
   while (m1.q[position2] != NULL) {
     len = strlen(conjuntoQ);
     conjuntoQ[len] = m1.q[position];
     len = strlen(conjuntoQ);
     conjuntoQ[len] = m1.q[position2];
     len = strlen(conjuntoQ);
     conjuntoQ[len] = ',';
     position2++;
    }
position++;
}

0 个答案:

没有答案