Whisper微风 发表于 2012-9-27 16:39:59

c语言怎么产生随机数呀??

如题~~~~~

akon 发表于 2012-9-27 20:17:25

#include<iostream>
#include<ctime>
#include<string>
#include<cstdlib>
using namespace std;
int CRN()
{
       
        return rand()%100;
}
int main()
{
        srand((unsigned)time(0));//切记这个函数的调用,只能放在主函数里,否则重复的运行程序将得到同样的随机数
        int i;
        int num;
        for(i = 0 ; i < 10 ; i ++ )
        {
                num = CRN();
                cout << num << " ";
        }
        cout << endl;
        getchar();//x要是vs就加上这个,vc不用加
}

仰望天上的光 发表于 2012-9-27 21:05:04

我觉得这样封装下更好:#include <stdio.h>
#include <stdlib.h>

int my_rand( int max ) {
        static int first = 1;
        first?srand((unsigned)time(0)):1;
        first = 0;
    return rand()%max;
}

int main(){
        int data;
        while( scanf("%d", &data) && data!=0 ) {
                int temp;
                printf("%d\n", my_rand(10));
        }
}

搁、浅 发表于 2012-9-27 21:10:57

#include <stdlib.h>

rand()

蜡笔小牛牛 发表于 2012-9-28 10:23:16

我光知道c#是Ramdom

Whisper微风 发表于 2012-9-28 11:59:12

akon 发表于 2012-9-27 20:17 static/image/common/back.gif


必须是要用c++吗?

Whisper微风 发表于 2012-9-28 12:00:41

仰望天上的光 发表于 2012-9-27 21:05 static/image/common/back.gif
我觉得这样封装下更好:

可以加上些详细注释吗?我是新手一枚,看不太懂呀。。。谢谢了~

akon 发表于 2012-9-28 18:30:40

Whisper微风 发表于 2012-9-28 11:59 static/image/common/back.gif
必须是要用c++吗?

不是啊~c也一样运行

广东杭漂男 发表于 2012-10-4 20:17:46

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
void main()
{
        int a,n,i;
        scanf("%d",&n);//输入随机数的个数
        srand(time(NULL));
        for(i=1;i<=n;i++)
        {
      a=("%d",rand());
                printf("%d\t",a);
        }

}

溴百里香酚菜 发表于 2020-12-2 15:51:09

头文件 stdio.h time.h stdlib.h

srand(time(NULL));
a=rand()如果想要上限就取余即可
页: [1]
查看完整版本: c语言怎么产生随机数呀??