#include <stdio.h>
#define N 6
int main(void)
{
	int b[N+1] = {0};
	int i = 0, j = 1;

	while( !b[N] )
	{
		i = 0;
		while( b[i]) b[i++] = 0; // моделируем перенос в следующий разряд, возникающий при сложении 
		b[i] = 1;

		if(i < N) printf("%s%2c%1d - ", "Subset",'#',j++);
		//Распечатываем индексы единичных элементов массива B -новое сгенерированное подмножество
		for(i = 0; i < N; i++)
			if(b[i])
				printf("%d", i);
		printf("\n\n");//переход на новую строку при печати 

	}

	return 0;
}