免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 813 | 回复: 3
打印 上一主题 下一主题

十万火急,碰到难题了,各位大虾不能见死不救啊 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-29 14:20 |只看该作者 |倒序浏览
有如下n个列表:
列表1中的元素:A、B、C、D...
列表2中的元素:1、2、3、4...
列表3中的元素:a、b、c、d...
...
...
列表n中的元素:x、x、x、x...

现在要做的是把把这几个列表中的所有数据进行组合,要求是每个列表中必须而且只能提取一个元素,组合后如A1bxxx、A2bxxx、B3cxxx等,列表的具体个数不知道,每个列表中有多少个元素也不知道
看题目有点像体育彩票的选号系统(七组数字,每组数字是0-9,要求必须每组都要用到一个数字而且只能用每组中的一个数字,然后组合成一个彩票号码),只是现在的题目是不知道有几组数字,也不知道每组由多少个数字,而且要把所有的可能情况都找出来
我设想使用许多的for或者while循环来实现,可是想了好几天也没想出来如何下手,各位高手,有兴趣的一起琢磨琢磨吧,不知道有没有现成的东西可以直接用,真是难死我了

论坛徽章:
1
15-16赛季CBA联赛之四川
日期:2016-02-15 17:12:32
2 [报告]
发表于 2004-11-29 15:12 |只看该作者

十万火急,碰到难题了,各位大虾不能见死不救啊

定义一个数组;
然后是得到随机数,
根据随机数取数组元素,

char a[10]={'A','B',....};
int random;
time(NULL);
srand();
random=rand()%N;

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
3 [报告]
发表于 2004-11-29 16:16 |只看该作者

十万火急,碰到难题了,各位大虾不能见死不救啊

奇怪!你这个什么也不知道的列表是放在哪儿的呢?
什么也不知道你怎么做啊?

论坛徽章:
0
4 [报告]
发表于 2004-11-29 16:52 |只看该作者

十万火急,碰到难题了,各位大虾不能见死不救啊

可以设置一个结构
结构的定义如下:
struct st
{
    element  elementlist[];
    int isSelect;  /* 判断是否已经选择 */
}
使用随机数函数产生一个值 index, 判断 isSelect 是否为0,如果为0就选择 elementlis[index-1],如果为1,就继续使用随机函数进行选择。

请大家补充指正
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP