C|生成一个整数集合的所有子集

void subset(int s[],int f[],int m,int n)
{
int i;
f[m] = 0; //标记该元素出现
if (m == n)
{printf("{");
for(i = 0; i <= n; i++)
{
if (f[i] == 0) printf("");
else printf("%d ",s[i]);
}
printf("}/n");
}
elsesubset(s,f,m+1,n);

f[m] = 1; //标记该元素不出现
【C|生成一个整数集合的所有子集】if (m == n)
{printf("{");
for(i = 0; i <= n; i++)
{
if (f[i] == 0) printf("");
else printf("%d ",s[i]);
}
printf("}/n");
}
elsesubset(s,f,m+1,n);
}

void main()
{
int a[3] = {1,2,3},flag[3];
subset(a,flag,0,2);
}

    推荐阅读