已知有一个集合A={a,b,c,d,e,f}编写程序打印出A的所有非空子集 用C语言解决
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/29 01:20:33
![已知有一个集合A={a,b,c,d,e,f}编写程序打印出A的所有非空子集 用C语言解决](/uploads/image/z/11260047-39-7.jpg?t=%E5%B7%B2%E7%9F%A5%E6%9C%89%E4%B8%80%E4%B8%AA%E9%9B%86%E5%90%88A%3D%7Ba%2Cb%2Cc%2Cd%2Ce%2Cf%7D%E7%BC%96%E5%86%99%E7%A8%8B%E5%BA%8F%E6%89%93%E5%8D%B0%E5%87%BAA%E7%9A%84%E6%89%80%E6%9C%89%E9%9D%9E%E7%A9%BA%E5%AD%90%E9%9B%86+%E7%94%A8C%E8%AF%AD%E8%A8%80%E8%A7%A3%E5%86%B3)
已知有一个集合A={a,b,c,d,e,f}编写程序打印出A的所有非空子集 用C语言解决
已知有一个集合A={a,b,c,d,e,f}编写程序打印出A的所有非空子集 用C语言解决
已知有一个集合A={a,b,c,d,e,f}编写程序打印出A的所有非空子集 用C语言解决
G:A-> B
G(A)= G(B)= C
FN:A-> B
F1(A)= C,F1(B)= C
F2(A)= C(B),F2 = D
F3(A)= C,F2(B)= E
F4(A)= D,F4(B)= C
F5(A)= D(二)中,f1 = D
F6(A)= D,F1(B)= E
F7(A)= E,F7(B)= C
F8(A)= E,F8(B)= D
F9(A)= E,F9(B)= E
总数:9
2.
1)A = R,B = {Y | Y> 0},F:X→| X |,比| 0 | = 0不属于到B
2)A = R,B = R,F:X→X ^ 2是
3)A = Z,B = R,F:所述→√x不x是负的,√X不属于B
4)A = Z,B = Z,F:X→X ^ 3
#include
#define AMAX 6
static char A[AMAX] = {'a','b','c','d','e','f'};
void print(int len)//len为子集的大小,即元素的个数
{
int i,j,k;
j=k=0;
for(i=0;i
全部展开
#include
#define AMAX 6
static char A[AMAX] = {'a','b','c','d','e','f'};
void print(int len)//len为子集的大小,即元素的个数
{
int i,j,k;
j=k=0;
for(i=0;i
if(AMAX-i
printf("%c ",A[i+j]);
}
printf("\n");
}
return;
}
int main()
{
int i;
for(i=1;i<=AMAX;i++)
{
print(i);
}
return 0;
}
收起
#include
#include
#define AMAX 6
static char A[AMAX] = {'a','b','c','d','e','f'};
void printSubset(char *Array, size_t len, size_t maxLen, size_t index, boo...
全部展开
#include
#include
#define AMAX 6
static char A[AMAX] = {'a','b','c','d','e','f'};
void printSubset(char *Array, size_t len, size_t maxLen, size_t index, bool add, char* prefix)
{
size_t num = maxLen*2 + 1;
for (size_t i=index; i+len <= maxLen; i++)
{
char* target = new char[num];
memset(target,NULL,num);
if (add) { strcpy_s(target, num, prefix); }
char element[2] = {0};
element[0] = Array[i];
strcat_s(target, num, element);
strcat_s(target, num, " ");
if (len > 1)
{
printSubset(Array, len-1, maxLen, i+1, true, target);
}
else
{
printf("%s\n",target);
delete[] target;
}
}
}
int main()
{
for(int i=1;i<=AMAX;i++)
{
printSubset(A,i,AMAX,0,false,NULL);
}
return 0;
}
收起