编程语言(如c语言)中的 冥 是什么啊???

书写公式是什么样的??????数学中n的m次方指的是幂不是冥我说的c语言中的冥好象和如下例子有关的:求含有n个元素的集合的冥集.如A={1,2,3};则A的冥集为{1,2... 书写公式是什么样的??????
数学中n的m次方指的是 幂 不是 冥
我说的c语言中的 冥 好象和如下例子有关的:
求含有n个元素的集合的冥集.
如A={1,2,3};
则A的冥集

{1,2,3},{1,2},{1,3},{1},{2,3},{2},{3},空集

数据结构是用树来分析然后用递归来做~
我看不懂树为什么可以在递归上的应用~
请高手帮我解说下~谢谢~
展开
 我来答
百度网友261013835
2008-01-23 · 超过54用户采纳过TA的回答
知道小有建树答主
回答量:173
采纳率:100%
帮助的人:119万
展开全部
冥,不是C语言中的,是数学中的。如:求一个数的几次冥.数学中常常用到的问题.2次冥是平方,3次冥是立方,还有4次冥,5次冥,...
匿名用户
2008-01-23
展开全部
/*
*字符串求子集的
*递归实现
*你参考一下
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 20
int used[N];

void output(char *str);
int diver(char *str, int len, int index);

int main( void )
{
char input[20];
int len;

printf("Please enter a string:");
while(fgets(input, 20, stdin) == NULL || input[0] == '\n')
{
printf("Input error!\n");
printf("Please enter a string again:");

}
input[strlen(input) - 1] = '\0';
len = strlen(input);
diver(input, len,0);

return 0;
}

int diver(char *str, int len, int index)
{
if(index >= len)
output(str);
else
{
used[index] = 1;
diver(str, len, index + 1);
used[index] = 0;
diver(str, len, index + 1);

}

return 0;
}

void output(char *str)
{
int i;

printf("{");
for(i = 0;i < N; i++)
if(used[i])
printf("%c",str[i]);
printf("}");
printf("\n");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jackilee1980
2008-01-23 · TA获得超过486个赞
知道小有建树答主
回答量:285
采纳率:0%
帮助的人:0
展开全部
这里的递归主要是判断幂是否为空,为空则跳出递归,否则继续递归
我给的程序如下;注意,输入数据时,不要用空格或者逗号隔开
#include <stdio.h>
#include <string.h>
void digui(char const p[]);
void PritOne(char const p[]);
void main(void)
{
int n=0;
char c,a[100]={0};
printf("输入数组个数:");
scanf("%d%c",&n,&c);
printf("\n输入数据:");
for (int i=0;i<n;i++)
{
scanf("%c",&a[i]);
}
PritOne(a);
digui(a);
}

void PritOne(char const p[])
{
for (int m=0;m<(int)strlen(p);m++)
{
printf("{");
printf("%c ",p[m]);
printf("}\n");
}

}

void digui(char const p[])
{
int k = strlen(p);
if (strlen(p)<=0)//为空
{
return;
}
else if(strlen(p)>1)
{
printf("{");
for (int m=0;m<(int)strlen(p);m++)
{

printf("%c ",p[m]);

}
printf("}\n");
}
for (int j=0;j<(int)strlen(p);j++)
{
char tem[100] ;
for (int i=0;i<strlen(p);i++)
{
if (i<j)
{
tem[i]=p[i];
}
else
tem[i]=p[i+1];
}

digui(tem);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式