|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 只想搞懂这个题目!!
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
2278
人关注过本帖,
2
人收藏
标题:
只想搞懂这个题目!!
只看楼主
加入收藏
死了都要C
来 自:四川成都
等 级:
贵宾
威 望:
13
帖 子:1582
专家分:116
注 册:2006-12-7
第
11
楼
收藏
得分:0
我一直都搞不懂随机数`````
首先是不明白``随机数函数````的原理``
第2是``完全用不来随机数函数``
女施主``我给你``送茶来了```师太``你就从了老衲吧``
代码本天成~~~妙头偶得之```
2007-12-28 10:45
举报帖子
使用道具
赠送鲜花
devfhpgah
来 自:江西
等 级:
新手上路
帖 子:204
专家分:0
注 册:2007-8-16
第
12
楼
收藏
得分:0
哈哈,真的假的呀,版主?
努力才会成功!
2007-12-29 11:19
举报帖子
使用道具
赠送鲜花
MILLARBUDDHA
来 自:陕西
等 级:
新手上路
帖 子:6
专家分:0
注 册:2007-12-27
第
13
楼
收藏
得分:0
回复 4# 的帖子
能不能把这道题的意思说详细一下,实在有点迷茫,看不懂
2007-12-29 12:46
举报帖子
使用道具
赠送鲜花
gongjie0708
等 级:
新手上路
帖 子:16
专家分:0
注 册:2007-12-12
第
14
楼
收藏
得分:0
回复 5# 的帖子
同意你的
以前用过你的思想 做过类似的统计
2007-12-29 14:38
举报帖子
使用道具
赠送鲜花
cosdos
来 自:ShangHai
等 级:
蜘蛛侠
威 望:
6
帖 子:2109
专家分:1385
注 册:2007-6-19
第
15
楼
收藏
得分:0
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int i, j;
int ar[10] = {0};
for(i = 0; i < 10; ++i)
// 10个不同的种子
{
srand((unsigned int)(i + 1)); // 设定种子
for(j = 0; j < 10; ++j)
ar[j] = 0;
// 初始化统计数组
for(j = 0; j < 1000; ++j)
// 产生1000个1到10范围内的随机数,
++ar[rand() % 10];
// 并统计出现次数
for(j = 0; j < 10; ++j)
// 打印产生的随机数的次数
printf("%4d ", ar[j]);
putchar('\n');
}
getchar();
return 0;
}
[[italic] 本帖最后由 cosdos 于 2007-12-30 12:36 编辑 [/italic]]
—>〉Sun〈<—
2007-12-30 00:30
举报帖子
使用道具
赠送鲜花
devfhpgah
来 自:江西
等 级:
新手上路
帖 子:204
专家分:0
注 册:2007-8-16
第
16
楼
收藏
得分:0
回复15#
你是循环10次,把0-9按顺序当成种子,让它产生随机数的。
如果只能用srand((unsigned)time(NULL));采用系统时钟。这个题怎么样去算呢!
努力才会成功!
2007-12-30 09:07
举报帖子
使用道具
赠送鲜花
cosdos
来 自:ShangHai
等 级:
蜘蛛侠
威 望:
6
帖 子:2109
专家分:1385
注 册:2007-6-19
第
17
楼
收藏
得分:0
有一个地方的注释标错了,现在修改,并使用了 time()
time() ,其实和上面的代码一样。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
int i, j;
int ar[10] = {0};
for(i = 0; i < 10; ++i)
// 10个不同的种子
{
srand((unsigned int)time(NULL)); // 设定种子,使用了 time()
for(j = 0; j < 10; ++j)
ar[j] = 0;
// 初始化统计数组
for(j = 0; j < 1000; ++j)
// 产生1000个1到10范围内的随机数,
++ar[rand() % 10];
// 并统计出现次数
for(j = 0; j < 10; ++j)
// 打印产生的随机数的次数
printf("%4d ", ar[j]);
putchar('\n');
}
getchar();
return 0;
}
—>〉Sun〈<—
2007-12-30 12:39
举报帖子
使用道具
赠送鲜花
死了都要C
来 自:四川成都
等 级:
贵宾
威 望:
13
帖 子:1582
专家分:116
注 册:2006-12-7
第
18
楼
收藏
得分:0
哎````晕````
女施主``我给你``送茶来了```师太``你就从了老衲吧``
代码本天成~~~妙头偶得之```
2007-12-30 12:52
举报帖子
使用道具
赠送鲜花
devfhpgah
来 自:江西
等 级:
新手上路
帖 子:204
专家分:0
注 册:2007-8-16
第
19
楼
收藏
得分:0
原帖由 [bold][underline]cosdos[/underline][/bold] 于 2007-12-30 12:39 发表 [url=http://bbs.]
" border="0" />[/url]
有一个地方的注释标错了,现在修改,并使用了 time()
time() ,其实和上面的代码一样。
#include
#include
#include
int main(void)
{
int i, j;
int ar[10] = {0};
for(i = 0; i < 10; ++i)
...
这样的话,随机数会不会大多数都一样呀,因为在同一时间,比如一秒,它产生的是同一个数呀,也就是同一个种子呀!
努力才会成功!
2008-01-02 13:19
举报帖子
使用道具
赠送鲜花
devfhpgah
来 自:江西
等 级:
新手上路
帖 子:204
专家分:0
注 册:2007-8-16
第
20
楼
收藏
得分:0
正如我说的一样呀,看看你的程序的结果呀:
针对 17# 的结果:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
int i, j;
int ar[10] = {0};
for(i = 0; i < 10; ++i)
// 10个不同的种子
{
srand((unsigned int)time(NULL));// 设定种子,使用了 time()
printf("%-2d:",i+1);
//此外在这里加了一条语句,为了看得清楚。
for(j = 0; j < 10; ++j)
ar[j] = 0;
// 初始化统计数组
for(j = 0; j < 1000; ++j)
// 产生1000个1到10范围内的随机数,
++ar[rand() % 10];
// 并统计出现次数
for(j = 0; j < 10; ++j)
// 打印产生的随机数的次数
printf("%4d ", ar[j]);
putchar('\n');
}
getchar();
return 0;
}
" border="0" />
努力才会成功!
2008-01-02 13:29
举报帖子
使用道具
赠送鲜花
20
2/2页
1
2
快速回复:
只想搞懂这个题目!!
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.023582 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved