C语言中怎么产生三个互不相同的随机数 求代码

作者&投稿:潮有 (若有异议请与网页底部的电邮联系)
c语言怎样同时产生几组不同的随机数~

简单一点的,r,t分别产生两组随机数,你往后加参数即可:

#include
#include
int main(void){
int r=srandom((int)time(0));;
int t=srandom((int)time(0));;
printf("%d %d
",r,t);
return 0;
}

思路大概就是每产生一个随机数后与a[10]中的元素进行判断
如果在a[10]中没有出现重复的数字 就继续产生下一个随机数
否则就重复产生 知道没有重复在进行下一次生成

只是作为参考的代码
可以满足要求
int find(int *a, int size, int num){for (int i = 0; i < size; i++){if (a[i] == num){return 0;}}return 1;}int main(){int a[10];int num = 0;srand(time(NULL));bool exit = false;while (!exit){int x = rand() % 20;bool next = false;while (!find(a, num + 1, x)){x = rand() % 20;}a[num] = x;++num;if (10 <= num){exit = true;}}for (int i = 0; i < 10; i++){cout << a[i] << endl;}getchar();return 1;}

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(void)
{
    int i, vis[100] = {0}, tot = 3;
    srand((int)time(0));
    for(;tot;)
    {
        int index = rand() % 100;
        if(!vis[index])
        {
            printf("%d ", index);
            vis[index] = 1;
            tot--;
        }
    }
    return 0;
}

 



#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    int a,b,c;//保存3个随机数
    srand((unsigned)time(NULL));
    a=rand()%10;//产生一个0~9的随机数
    while(1)//产生一个不等于a的0~9的随机数
    {
        b=rand()%10;
        if(b!=a) break;
    }
    while(1)//产生一个不等于a和b的0~9的随机数
    {
        c=rand()%10;
        if((c!=a) && (c!=b)) break;
    }
    printf("a=%d,b=%d,c=%d
",a,b,c);
    return 0;
}


srand((int)time(NULL));设定随机数种子
rand()%100;产生0-99的随机数。高级点的,假如要产生16-59之间的数,你可以这样写:rand()%44+16(这里44由59-16+1得到)。其他情况如法炮制!


Java 语言有哪三个分支,之间的区别是什么
现在还有其他的分支,包括JINI 和 JAVA CARD等 不过最有影响的还是以上的三个大类 vb,javahe和c语言之间的区别是什么? javahe是什么语言? 只用过Java vb和Java是面向对象的编程语言 这种语言你只要告诉计算机“做什么”而不用告诉它“怎么做” vb中的v是visual的意思 就是可视化的 比方说你要建一个对话框 只...

怎么用C语言编写一个程序,输入三个数值,然后输出其中最大者。
有很多方法,初学的话不必用数组,用三个变量比较清晰:include<stdio.h> int main(){ int a,b,c;printf("输入第一个数:");scanf("%d",&a);printf("输入第二个数:");scanf("%d",&b);printf("输入第三个数:");scanf("%d",&c);if(a<b) \/\/比较前两个数,如果第二个数大,就把...

我喜欢你闽南语怎么说
后产生文字。7. 语言的三个基本要素是语音、语法和词汇,是由词汇按一定的语法所构成的语音表义系统。8. 根据语言的要素特征和起源关系,世界上的语言被分成不同的语系,每个语系包括数量不等的语种。9. 这些语系与语种都有一定的地域分布,不同的语言在发展过程中也在不断借鉴融合。

C语言中for循环怎么理解?
for循环是编程语言中一种开界的循环语句,而循环语句由循环体及循环的终止条件两部分组成,for循环其在各种编程语言中的实现与表达有所出入,但基本为以C语言和pascal语言代表的两种形式。程序解读:开始i=0,i<10,执行for循环的内部语句,然后回到i++,i=2,i<10,执行for循环的内部语句,……,...

有三个并列条件时c语言怎么写
...} 情况三、同时满足条件1、2或者只需满足条件3,运算符"&&"、"||"混合使用,如下:if( (a>1&&b>2)||c>4){...} 情况四、同时满足条件1、2、3中的任意两个,运算符"&&"、"||"混合使用,如下:if( (a>1&&b>2)||((a>1&&c>4)||(b>2&&c>4)){...} ...

c语言中三个不知道大小的数字从小到大排怎么写
从小到大排序用得代码,其他需要的代码自己添加以下就行了,呵呵 include"stdio.h"void main(){ int i,j,k;int a[3]; \/\/放入那三个不知道大小的数 for(i=0;i<3;i++)for(j=i+1;j<3;j++)if(a[i]>a[j]){ k=a[i];a[i]=a[i+1];a[i+1]=k;} } ...

请问在写作文时怎么样用到的、地、得?
但是,在书面语中有必要写成三个不同的字,这样可以区分他们在书面语用法上的不同。这样做的好处,就是可使书面语言精确化。最后我再讲一个有趣的例子1、看了这场电影,她激动得哭了。2、看了这场电影,她激动地哭了。这两句话从表面看虽然只是一字之差,但意思不完全相同。前一句强调“激动”,...

语言学的发展的几个阶段是什么啊?
但双方都对语法理论的产生有较大的贡献。“变则派”的贡献在于他们辨别出了主要的语法范畴;“类推派”的贡献则在于他们确定了主要的屈折变化形式。 早期的希腊学者对语言的研究主要侧重于词源学、语音学和语法学三个方面。其中语法学所取得的成绩最为突出,对传统语言学的发展有着很大的影响。哲学家柏拉图(公元前428...

c语言编程 随机产生任意两个100以内的三位自然数,求他们的和
那我觉得应该是1000以内的2个三位数吧 掉了个0?include <stdio.h> include <stdlib.h> \/\/ srand, rand include \/\/ time int main(){ int a, b;srand(time(0));a = rand() % 900 + 100; \/\/ 100~999的随机数 b = rand() % 900 + 100;printf("a=%d, b=%d\\n", a, b)...

C语言中要把三个数从大到小排列出来应该怎么编?
初学简单版本代码如下:include<stdio.h> int main( ){ int a, b, c;\/\/定义三个数的变量 int t ;\/\/定义作为交换的变量 scanf ( "%d%d%d" , &a, &b, &c ) ; \/\/取值 if ( a < b ){t = a; a = b; b = t ;};\/\/如果a,b,进行交换,反之不动 if ( a < c ){t ...

省直辖县级行政单位13046396494: 用c语言,随机出3个数字,这三个数字各不相同且介于0到9之间 -
羊钓老鹳: n"); for(i=0#include <#include <stdio.h&gt.h> int main(void) { int i; time_t t; srand((unsigned) time(&t)); printf("Ten random numbers from 0 to 9\n"; return 0, rand() % 10);#include <time; i< i++) printf("%d\3;stdlib.h&gt

省直辖县级行政单位13046396494: C语言产生不重复的随机数 -
羊钓老鹳: #include<iostream.h> #include<cstdlib> #include<ctime> void main() {int i,j,a[10];srand(time(0));for(i=0;i<10;i++){a[i]=rand()%10;int flag=1;while(flag==1)// 你的这里可能还会产生重复的数,这里确保产生的数不再重复,只要有重复的就在随...

省直辖县级行政单位13046396494: C语言结构编程中怎样能产生不重复的随机数? -
羊钓老鹳: //让数不重复,而且每个数都有不好弄,但是如果是生成选手比赛顺序,我这种做法就可以了.你把选手的编号放在一个数组里面,然后从数组的第一个开始,把生成的随即数当成要交换的下标,随即交换后就打乱顺序了. 虽然产生的随机数可能一样,但是这样打乱顺序并不会把选手编号改变了. 例如, int tmp,num; a[10]={1,2,3,4,5,6,7,8,9,10}; srand(time(NULL)); for(int i=0;i<10;i++) { num=rand()%10; tmp=a[i]; a[i]=a[num]; a[num]=tmp; }

省直辖县级行政单位13046396494: 如何让c语言产生几个互不相同的随机数 如何让出现过的随机数不再出现? 这是《购物街》中的小心炸弹游戏 -
羊钓老鹳: 定义一个数来组吧,数组里的每一个数都定义为零,每一次循环都把所产生的自随机数和数组里的数进行比较,如果不为零且数组里没有百那么把这个数赋给数组里第一个为零的数,然后继续循环知道成度功或摸到三次炸弹. int j; int y=0; int a[]={"0","0","0","0","0"} do{ i=rand()%6; if(i==0) { y==1; } if(i!=0&&y!=1){for(j=0;j<5;j++){if(a[j]==i){y=0;break; }else{a[j]=i;y==1; } } }while(y!=1); y==0;

省直辖县级行政单位13046396494: c语言 随机生成不相同的随机数 -
羊钓老鹳: 这里的if(!(i<num)) 其中的!就是“取反”的意思.所以,它等同于if((i>=num))

省直辖县级行政单位13046396494: C语言中生成一组各不相同的不重复的随机数 -
羊钓老鹳: 123456789101112131415161718192021 #include<stdio.h>#include<stdlib.h>#include<time.h> intmain() { int*a,n,i,j; scanf("%d",&n); a=(int*)calloc(n,sizeof(int)); srand(time(NULL)); for(i=0;i<n;i++) { loop: a[i]=rand()%n+1; for(j=0;j<i;j++) if(a[i]==a...

省直辖县级行政单位13046396494: 如何用C语言产生不重复的0到9之间的随机数 -
羊钓老鹳: 上面的会重复 ,用我这个#include <stdlib.h> //标准工具库,要用到其中的rand() #include <stdio.h> #include<conio.h> #include <time.h> //时间库,要用到里面的时间来做随机数的种子 int main(void) { int i; int r; int sz[10]={0,1,2,3,4,5,6,7,8,9}; srand...

省直辖县级行政单位13046396494: C语言如何产生一定范围内一定数量的不同随机数 -
羊钓老鹳: 1 C语言产生随机数函数.rand(); 头文件为stdlib.h 2 产生[m,n]范围内随机数的语句: rand()%(n-m+1)+m 3 要产生不同随机数范围的方法: 将已获取的随机数保存下来,在产生新的随机数后,与已获取到的进行比较,如果存在则抛弃,否则...

省直辖县级行政单位13046396494: 如何用C语言重复的产生不重复的0到9之间的随机数? -
羊钓老鹳: #include<stdio.h> //提供printf函数声明定义#include<stdlib.h> //提供srand函数声明定义,rand#include<time.h> //提供time函数 int is_same(int *t,int lo,int x); int main() { int a[10]; int num=20; int t,i; srand(time(0));//此函数提供种子,即time(0)系统...

省直辖县级行政单位13046396494: 关于C语言随机数字产生的原理 -
羊钓老鹳: 1. C语言中有三个通用的随机数发生器,分别为 rand函数, random函数, randomize 函数 2. 但是rand函数产生的并不是真意正义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网