数组应用实例(生成并打印随机数和统计随机数的分布)

一.生成并打印随机数

代码如下:

<span style="font-size:18px;">#include <stdio.h>
#include <stdlib.h>
#define N 20
int a[N];
void gen_random(int upper_bound)  //生成随机数在0-upper_bound之间
{
	int i;
	for(i = 0;i<N;i++)
	{
		a[i] = rand()%upper_bound;
	}
}
void print_random()               //打印随机数
{
	int i;
	for(i = 0;i<N;i++)
	{
		printf("%d ",a[i]);
	}
	printf("\n");
}
int main()                        //测试函数
{
	gen_random(10);
	print_random();
	return 0;
}</span>

二.统计随机数的分布

代码如下:

#include <stdio.h>
#include <stdlib.h>
#define N 10

int a[N];

void gen_random(int upper_bound)
{
	int i;
	for(i = 0;i<N;i++)
	{
		a[i] = rand()%upper_bound;
	}
}

int howmany(int value)            //统计随机数的个数
{
	int count = 0;
	int i;
	for(i = 0;i<N;i++)
	{
		if(a[i]==value)
		{
			++count;
		}
	}
	return count;
}

int main()
{
	int i;
	gen_random(10);
	printf("value\thow many\n");
	for(i = 0;i<N;i++)
	{
		printf("%d\t%d\n",i,howmany(i));
	}
	return 0;
}
时间: 2024-11-05 12:17:02

数组应用实例(生成并打印随机数和统计随机数的分布)的相关文章

PHP CodeBase: 生成N个不重复的随机数

有25幅作品拿去投票,一次投票需要选16幅,单个作品一次投票只能选择一次.前面有个程序员捅了漏子,忘了把投票入库,有200个用户产生的投票序列为空.那么你会如何填补这个漏子? 当然向上级反映情况.但是我们这里讨论的是技术,就是需要生成1-25之间的16个不重复的随机数,去填补.具体怎么设计函数呢?将随机数存入数组,再在数组中去除重复的值,即可生成一定数量的不重复随机数. 程序如下: <?php/** array unique_rand( int $min, int $max, int $num

生成随机数,统计个数,按序排列

有以下一个题目: (一)生成随机数可以用以下方法: 上面用了两种方法生成随机数, 1)采用Random类的nextInt(int a)方法,该方法返回 一个大于等于0且小于a的随机整数,再加上10,就是  10<=result<51等价于[10,50]. 2)采用Math.random()方法,该方法返回一个大于等于0且小于1的double类型的小数,然后再乘以41,经过强制类型转换再加10,就能得出[10,50]的随机数. 下面我们来解决上述的题目: 声明一个数组count,用了存放出现50

使用C++生成1-33中的6个随机数,无重复

生成1-33中的6个随机数,无重复 ------------------------------------------------------------------------ 方法1.每生成一个随机数,便于前面的所有随机数进行比较,如果有重复,则舍去不要,重新选取. 但该方法十分费时,并且在数据量巨大的并且有一定限制的时候,会引发巨大问题. 例如要生成10000个随机数,范围是0-9999,且不能重复,那么最后几个随机数有可能需要相当长的时间才能筛选出来. 方法2. 下面我们从另外一个角度

生成N个不相等的随机数

最近项目中需要生成N个不相等的随机数,实现的时候,赶工期,又有项目中N很小(0-100)直接谢了一个最直观的方法: public static List<Integer> randomSet(int num,int threshold){ Random random = new Random(); if(num > threshold) return null; Set<Integer> randomset = new HashSet<Integer>(); wh

生成一定数量的不重复随机数

/* * array unique_rand( int $min, int $max, int $num ) * 生成一定数量的不重复随机数 * $min 和 $max: 指定随机数的范围 * $num: 指定生成数量 * 说明: 生成随机数时用了 mt_rand() 函数.这个函数生成随机数的平均速度要比 rand() 快四倍. 去除数组中的重复值时用了“翻翻法”,就是用 array_flip() 把数组的 key 和 value 交换两次.这种做法比用 array_unique() 快得多.

JSP简单练习-数组应用实例

<%@ page contentType="text/html; charset=gb2312" %> <html> <body> <% int i,j,k; // 声明一个5行6列的二维数组 int intArray[][]=new int[5][6]; k=0; // 数组赋初始值 for(i=0;i<5;i++) { for(j=0;j<6;j++) { intArray[i][j]=k; k++; } } // 输出数组中的

添加条码生成和打印功能到SQL Server Reporting Services report 中

Barcode Professional for Reporting Services 是一款灵活和强大的.NET组件(.NET DLL 类库),它让您轻松地添加条码生成和打印功能到您的SQL Server Reporting Services report 中.支持几乎所有当前常用的条码:Code 39, Code 128, GS1-128, GS1 DataBar (RSS-14), EAN 13 & UPC, Postal (USPS, British Royal Mail, Austra

在控制台输入字母然后在控制台打印相应的二位数组字母,要求一行打印

1 package MyHomeWork; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 import java.util.Scanner; 6 7 /** 8 * Created by zhouyubin on 7/11/14. 9 */ 10 public class Test2 { 11 private static final char[][] print_a={{' ',' ',' ','A',' ',' ',' ','

C#-利用ZPL语言完成条形码的生成和打印

 最近因为公司项目的需要,研究了一项对我来说算是新的技术-条形码的生成和打印.因为之前没有接触过这方面的知识,所以刚开始还有点小迷茫,不过一步一步来,问题总会解决的.现在来总结一下做条形码这块的收获. 明天补上