C语言 输入一个数求集合的子集 问题如图一, 输入如图2, 输出如图3, 诚心请教大神!!!!

如题所述

第1个回答  2017-01-27
#include <stdio.h>

void print_this(int x) {
    int n = 0;
    while (x) {
        if (x & 1) {
            printf("%d", n);
            putchar(x == 1 ? '\n' : ' ');
        }
        n++;
        x >>= 1;
    }
}
int main() {
    int n, x = 1, end;
    scanf("%d", &n);
    end = 1 << n;
    while (x < end) {
        print_this(x++);
    }
    return 0;
}

本回答被网友采纳