题目:输入一个字符串,输出该字符串中字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、ac、bc、abc。
开始我的思路 是递归,但是具体如何作,没想出来。
后面看涛哥日志中一个网友回复,将字符串看成01组成数字串,为1则有字母,这样就是判断从1到2^n的数字里面哪些位为1,则对应为字符串
代码简单:
#include "stdio.h"
#include "math.h"
#include "string.h"
int main()
{
int len ;
int i,j;
int number;
char str[1024];
scanf("%s",&str);
len = strlen(str);
number = pow(2,len);
for(i=1;i<number;i++)
{
for(j=0;j<len;j++)
{