随机数表法题目(有一个20*20的数组,初值为0;现在要将20个非0数放在数组的任意20个位置上必须确保20个数都成功放入了)

:暂无数据 2026-07-24 03:30:02 1

随机数表法题目(有一个20*20的数组,初值为0;现在要将20个非0数放在数组的任意20个位置上必须确保20个数都成功放入了)

各位老铁们好,相信很多人对随机数表法题目都不是特别的了解,因此呢,今天就来为大家分享下关于随机数表法题目以及有一个20*20的数组,初值为0;现在要将20个非0数放在数组的任意20个位置上必须确保20个数都成功放入了的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

本文目录

有一个20*20的数组,初值为0;现在要将20个非0数放在数组的任意20个位置上必须确保20个数都成功放入了

/*
这道题目本质上是产生一组不同的随机数。
产生不同随机数我所用过的方法:
1. 每产生一个随机数便与已有随机数相比较, 如果相同, 则再产生一个,
这种方法在实际中可行, 但理论上并不是很能让人接受, 比如:我产生两个不同的随机数, 可能执行效率很高(因为在[0, RAND_MAX)范围内两次产生两个相同的随机数的概率很低), 假设有一种很坏的情况, 比如: 我想要产生398个400以内的随机数, 这种方法就不能接受了。
2. 现在来说, 目前我感觉比较好的第二种方法:
比如, 我要产生10个100以内的不同随机数, 那么可不可以这样考虑,
我先定义一个int arr,每个元素取值从1一直到100(1、2、3、……98、99、100)
int arr;
for (i = 0; i 《 100; i++) {
arr = i+1;
}
这个数组是有序的, 那么现在我随机打乱这个数组中数的顺序, 具体打乱方法:
int temp;
int random_index;
for (i = 0; i 《 100; i++) {
random_index = rand() % 100;
temp = arr;
arr;
arr = t;
}
上面算法很简单, 首先随机产生一个数组元素索引, 然后让这个元素和当前元素交换,
这样经过100次循环后, 数组中的元素就杂乱无章了。
下面讲上述算法怎么应用到这道题目中:
如果我要随机设置30*30的二维数组中20个元素为非0, 那么我需要得到20组随机的二维数组元素下标, 但是直接这样操作有点难度, 但是产生20个不同的随机数则很简单(用第二种算法)
下面我们这样做:
int num_box;
int index_box;
int i;
for (i = 0; i 《 900; i++) {
index_box = i;
}
然后用上面算法打乱这900个数的顺序使其排序随机化
由于我们只需要得到30个不同的数, 而index_box中900个数是随机排列的, 所以为了得到30个不同的随机数, 无论取index_box中的哪30个数都一样,所以我们只取数组的前30个数。
假设我们得到的30个数是225、303、17、……,我们只需要设置num_box中第225、303、17、……个元素为非零就可以了。
那么num_box中第225个元素的下标是什么呢?
行下标 = 225 / 30(列数) = 7
列下标 = 225 % 30(列数) = 15
这样我们只需设置num_box = 1即可。
如果对本算法有疑问可以HI我。
另外那个隐藏控制台窗口的pragma依赖于具体编译器、我用VC++6.0可以达到隐藏控制台的目的, 但是那段代码在codeblocks10.05下就起不到隐藏控制台的效果了。 至于你说的错误, 我就不知道是什么原因了。
*/
#include 《stdio.h》
#include 《stdlib.h》
#include 《string.h》
#include 《time.h》
#include 《assert.h》
#define NUMS 20 /* 二维数组中非零元素个数1~400均可 */
#define LINES 20
#define COLS 20
void create_rand_index(int index, int num)
{
int index_box;
int index_nums = LINES * COLS;
int randindex;
int i, t;
assert(num 《= RAND_MAX);
assert(num 《= index_nums);
for (i = 0; i 《 index_nums; i++) {
index_box = i;
}
for (i = 0; i 《 num; i++) {
randindex = rand() % index_nums;
t = index_box;
index_box;
index_box = t;
}
memcpy(index, index_box, num * sizeof(int));
}
int main(void)
{
int num_box = {0};
int non_zero_index;
int line, col;
int i, j;
srand((unsigned int)time(NULL));
create_rand_index(non_zero_index, NUMS);
for (i = 0; i 《 NUMS; i++) {
line = non_zero_index / COLS;
col = non_zero_index % COLS;
num_box = 1;
}
for (i = 0; i 《 LINES; i++) {
for (j = 0; j 《 COLS; j++) {
printf(num_box == 1 ? "■" : "□"); /* 为了方便查看 */
}
putchar(’\n’);
}
return 0;
}

审计技术与方法的3个题目

1. D注册会计师推断的存货总体错报=50500/50000*300000
2. (1)随机数表适用数字为:93 093,72 905,14 342,25 595,22 527,05 463,63 661,53 342,02 011,85 313
对应的发票号:3093,2905,4342,5595,2527,5463,3661,3342,2011,5313
(2)样本平均错报=(1000300-1000000)/10=30
推断的总体错报=样本平均错报*总体数量=30*4000
3.(1)随机间隔=72/6=12,第二笔为6+12,第三笔为6+12+12,以此类推
(2)Y公司2004年12月31日应付票据的总体实际价值=1680000/1400000*15000000

这道题怎么做

解:(1)将每个人编号,由0001至1003.
(2)利用随机数表法找到3个号,将这3个人排除.
(3)重新编号0001至1000.
(4)按编号顺序将号码等分为10段,每段100个,0001至0100为第1段.
(5)在第1段中用简单随机抽样法抽得一个号码l.
(6)按编号,将l,100+l,200+l,…,900+l共10个号选出.
这10个号对应的10个人就组成了一个样本.
打字不易,请采纳

关于随机数表法题目和有一个20*20的数组,初值为0;现在要将20个非0数放在数组的任意20个位置上必须确保20个数都成功放入了的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

随机数表法题目(有一个20*20的数组,初值为0;现在要将20个非0数放在数组的任意20个位置上必须确保20个数都成功放入了)

本文编辑:admin

更多文章:


数据库管理系统和数据库系统分别侧重(数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例)

数据库管理系统和数据库系统分别侧重(数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例)

今天给各位分享数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例的知识,其中也会对数据库,数据库管理系统,数据库系统,这三个分别是什么意思并举个实例进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年9月7日 17:00

编程语言出现的先后顺序(最早的编程语言是哪一个)

编程语言出现的先后顺序(最早的编程语言是哪一个)

今天给各位分享最早的编程语言是哪一个的知识,其中也会对最早的编程语言是哪一个进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年9月7日 16:10

小程序源码有什么用(大商创小程序源码好用吗)

小程序源码有什么用(大商创小程序源码好用吗)

“小程序源码有什么用”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看小程序源码有什么用(大商创小程序源码好用吗)!

2026年9月7日 15:40

springmvc的依赖(springMVC的注入方式有哪几种,这与springMVC依赖)

springmvc的依赖(springMVC的注入方式有哪几种,这与springMVC依赖)

大家好,关于springmvc的依赖很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于springMVC的注入方式有哪几种,这与springMVC依赖的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还

2026年9月7日 14:00

it培训评价网(it培训排名机构十大IT培训机构)

it培训评价网(it培训排名机构十大IT培训机构)

这篇文章给大家聊聊关于it培训评价网,以及it培训排名机构十大IT培训机构对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年9月7日 13:00

个人博客页面布局(新手站长怎样做好独立博客初期运营工作)

个人博客页面布局(新手站长怎样做好独立博客初期运营工作)

大家好,如果您还对个人博客页面布局不太了解,没有关系,今天就由本站为大家分享个人博客页面布局的知识,包括新手站长怎样做好独立博客初期运营工作的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年9月7日 12:40

display flex 自动换行(overflow-y:hidden;overflow-x:auto;无效解决方法)

display flex 自动换行(overflow-y:hidden;overflow-x:auto;无效解决方法)

大家好,关于display flex 自动换行很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于overflow-y:hidden;overflow-x:auto;无效解决方法的知识点,相信应该可以解决大家的一些困惑和问题,如

2026年9月7日 11:00

小程序免认证源码(小程序源码都能干嘛)

小程序免认证源码(小程序源码都能干嘛)

本篇文章给大家谈谈小程序免认证源码,以及小程序源码都能干嘛对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

2026年9月7日 10:50

timestamp without time zone(Postgresql中to_date()函数使用问题)

timestamp without time zone(Postgresql中to_date()函数使用问题)

各位老铁们好,相信很多人对timestamp without time zone都不是特别的了解,因此呢,今天就来为大家分享下关于timestamp without time zone以及Postgresql中to_date()函数使用问题

2026年9月7日 09:40

网页制作代码特效大全(谁知道网页打字机特效的代码)

网页制作代码特效大全(谁知道网页打字机特效的代码)

大家好,如果您还对网页制作代码特效大全不太了解,没有关系,今天就由本站为大家分享网页制作代码特效大全的知识,包括谁知道网页打字机特效的代码的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年9月7日 04:20

最近更新

创业加盟网1688(怎样考察加盟店)
2026-09-07 17:50:14 浏览:0
热门文章

yoga pro 14s carbon(yoga14s接口类型)
2026-07-03 17:50:01 浏览:5
domino directory(帮我翻译一下Recipient’s Domino Directory entry does not specify a valid Notes mail file)
2026-08-03 19:20:01 浏览:4
标签列表