精华内容
下载资源
问答
  • 下面C语言代码使用了生成随机数的函数、延时函数。请大家仔细观察其显示效果。 从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定修改。同时还应关注其参数的定义位置(子函数外...

    下面C语言代码使用了生成随机数的函数、延时函数。请大家仔细观察其显示效果。

    从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定修改。同时还应关注其参数的定义位置(子函数外?子函数内?全局变量?局部变量?)。

    另外大家要注意:scanf在输入double型时,应该使用%lf,而在printf时却只需使用%f。

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

    double t_delay;
    time_t start,end; //start,end修改后的位置

    int createOrNot()
    {

    int flag;
    //srand(time(NULL) );//srand()原先的位置
    flag = (int)( (2*rand()/RAND_MAX) +1 );

       return flag;//return 1 or 2
       //1 create,2 not create.




    }

    void delay()
    {
    time_t start,end;//end原先的位置
    double dif;
    time (&start); 
    while( (dif= difftime (end,start) )<5000.0 )//注意这里
    {
    time (&end); 

    };

    }

    void delay(time_t end )//end修改后的位置
    {
    time_t start;//,end;
    double dif;
    time (&start); 
    while( (dif= difftime (end,start) )<2.0 )//注意这里
    {
    time (&end); 

    };

    }

    void delay(time_t end,double time_delay)//change...
    {


    time_t start;//,end;//change...
    double dif;
    time (&start); 
    time (&end);

    while( (dif= difftime (end,start) ) < time_delay )
    {

    time (&end);

    };


    }


    void delay(time_t start,time_t end)//change...
    {

    //time_t start;//,end;//change...
    double dif;

    time (&start); 
    time (&end); 

    while( (dif= difftime (end,start) ) < t_delay )
    {

    time (&end);

    };

    }

    int main()
    {

    int i,flag = 1,times =10;


    //time_t start,end; //start,end修改后的位置
    srand(time(NULL) );//修正后,srand()所应在的位置。

    for(i=0;i<times;i++)
    {

       flag= createOrNot();
       printf("%d\n",flag);
       delay();
       //delay(end);
    }



    printf("\n\n");

    for(i=0;i<times;i++)
    {

       flag= createOrNot();
       printf("%d\n",flag);
       //delay();
       delay(end);
    }

    printf("t_delay:\n");
    scanf("%lf",&t_delay);/
    //printf("t_delay:%f\n",t_delay);
    for(i=0;i<times;i++)
    {

       flag= createOrNot();
       printf("%d\n",flag);
       //delay();
       delay(end,t_delay);
    }


    printf("t_delay:\n");
    scanf("%lf",&t_delay);

    for(i=0;i<times;i++)
    {

       flag= createOrNot();
       printf("%d\n",flag);
       //delay();
       delay(start,end);
    }

    }

    展开全文
  • C语言 rand函数生成随机数

    万次阅读 多人点赞 2018-06-14 16:17:43
    在实际的项目中,有时候需要生成一个随机数,在C语言随机数的生成可以通过使用rand函数来实现。 rand函数包含在头文件stdlib.h里,因此使用rand函数需要声明包含stdlib.h。 #include&lt;stdlib.h&gt; ...

    在实际的项目中,有时候需要生成一个随机数,在C语言中随机数的生成可以通过使用rand函数来实现。
    rand函数包含在头文件stdlib.h里,因此使用rand函数需要声明包含stdlib.h。

    #include<stdlib.h>
    #include<stdio.h>
    
    int main(){
    	int i;
    	for(i = 0; i <10;i++){
    		printf("%d\n",rand());
    	}
    	return 0;
    }
    

    但是,这里就出现了一个问题。
    这里写图片描述
    这里写图片描述

    显然,两次产生的随机数是完全相同的。因此可以这样修改

    #include<stdlib.h>
    #include<stdio.h>
    #include<time.h>
    
    int main(){
    	int i;
    	srand((unsigned) (time(NULL)));
    	for(i = 0; i <10;i++){
    		printf("%d\n",rand());
    	}
    	return 0;
    }
    

    在产生随机数之前调用一下srand就可以了。

    同时,如果限定一下产生随机数的范围的话,可以这样产生10以内的随机数

    #include<stdlib.h>
    #include<stdio.h>
    #include<time.h>
    
    int main(){
    	int i;
    	srand((unsigned) (time(NULL)));
    	for(i = 0; i <10;i++){
    		printf("%d\n",rand()%10);
    	}
    	return 0;
    }
    

    还可以这样产生5到10之间的随机数

    #include<stdlib.h>
    #include<stdio.h>
    #include<time.h>
    
    int main(){
    	int i,j;
    	srand((unsigned) (time(NULL)));
    	for(i = 0; i <10;i++){
    		do{
    			j = rand()%10;
    		}while(j < 5 || j >10);
    		printf("%d\n",j);
    	}
    	return 0;
    }
    
    展开全文
  • 下面C语言代码使用了生成随机数的函数、延时函数。请大家仔细观察其显示效果。从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定修改。同时还应关注其参数的定义位置(子函数外?子...

    下面C语言代码使用了生成随机数的函数、延时函数。请大家仔细观察其显示效果。

    从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定修改。同时还应关注其参数的定义位置(子函数外?子函数内?全局变量?局部变量?)。

    另外大家要注意:scanf在输入double型时,应该使用%lf,而在printf时却只需使用%f.

    #include

    #include

    #include

    double t_delay;

    time_t start,end; //start,end修改后的位置

    int createOrNot()

    {

    int flag;

    //srand(time(NULL) );//srand()原先的位置

    flag = (int)( (2*rand()/RAND_MAX) +1 );

    return flag;//return 1 or 2

    //1 create,2 not create.

    }

    void delay()

    {

    time_t start,end;//end原先的位置

    double dif;

    time (&start);

    while( (dif= difftime (end,start) )<5000.0 )//注意这里

    {

    time (&end);

    };

    }

    void delay(time_t end )//end修改后的位置

    {

    time_t start;//,end;

    double dif;

    time (&start);

    while( (dif= difftime (end,start) )<2.0 )//注意这里

    {

    time (&end);

    };

    }

    void delay(time_t end,double time_delay)//change...

    {

    time_t start;//,end;//change...

    double dif;

    time (&start);

    time (&end);

    while( (dif= difftime (end,start) ) < time_delay )

    {

    time (&end);

    };

    }

    void delay(time_t start,time_t end)//change...

    {

    //time_t start;//,end;//change...

    double dif;

    time (&start);

    time (&end);

    while( (dif= difftime (end,start) ) < t_delay )

    {

    time (&end);

    };

    }    育路网

    展开全文
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼下面C语言代码使用了生成随机数的函数、延时函数。请大家仔细观察其显示效果。从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定修改。...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

    下面C语言代码使用了生成随机数的函数、延时函数。请大家仔细观察其显示效果。

    从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定修改。同时还应关注其参数的定义位置(子函数外?子函数内?全局变量?局部变量?)。

    另外大家要注意:scanf在输入double型时,应该使用%lf,而在printf时却只需使用%f.

    #include

    #include

    #include

    double t_delay;

    time_t start,end; //start,end修改后的位置

    int createOrNot()

    {

    int flag;

    //srand(time(NULL) );//srand()原先的位置

    flag = (int)( (2*rand()/RAND_MAX) +1 );

    return flag;//return 1 or 2

    //1 create,2 not create.

    }

    void delay()

    {

    time_t start,end;//end原先的位置

    double dif;

    time (&start);

    while( (dif= difftime (end,start) )<5000.0 )//注意这里

    {

    time (&end);

    };

    }

    void delay(time_t end )//end修改后的位置

    {

    time_t start;//,end;

    double dif;

    time (&start);

    while( (dif= difftime (end,start) )<2.0 )//注意这里

    {

    time (&end);

    };

    }

    void delay(time_t end,double time_delay)//change...

    {

    time_t start;//,end;//change...

    double dif;

    time (&start);

    time (&end);

    while( (dif= difftime (end,start) ) < time_delay )

    {

    time (&end);

    };

    }

    void delay(time_t start,time_t end)//change...

    {

    //time_t start;//,end;//change...

    double dif;

    time (&start);

    time (&end);

    while( (dif= difftime (end,start) ) < t_delay )

    {

    time (&end);

    };

    }

    int main()

    {

    int i,flag = 1,times =10;

    //time_t start,end; //start,end修改后的位置

    srand(time(NULL) );//修正后,srand()所应在的位置。

    for(i=0;i

    {

    flag= createOrNot();

    printf("%d\n",flag);

    delay();

    //delay(end);

    }

    printf("\n\n");

    for(i=0;i

    {

    flag= createOrNot();

    printf("%d\n",flag);

    //delay();

    delay(end);

    }

    printf("t_delay:\n");

    scanf("%lf",&t_delay);/

    //printf("t_delay:%f\n",t_delay);

    for(i=0;i

    {

    flag= createOrNot();

    printf("%d\n",flag);

    //delay();

    delay(end,t_delay);

    }

    printf("t_delay:\n");

    scanf("%lf",&t_delay);

    for(i=0;i

    {

    flag= createOrNot();

    printf("%d\n",flag);

    //delay();

    delay(start,end);

    }

    }

    展开全文
  • 语言产生随机数是一个常见的编程功能任务,当然这个也不难,调用两三个函数就出来了,但是你知道这些函数具体是起到怎样的作用,并且是它们是如何产生随机数的吗? 几个概念 随机数:数学上产生的都是伪随机数,真正...
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼下面C语言代码使用了生成随机数的函数、延时函数。请大家仔细观察其显示效果。从以下代码,我们可以得出一个重要的结论:当上述两类函数被放入循环时,应作出一定修改。...
  • C语言入门:生成随机数1.rand() 函数2.srand() 函数3....rand() 会随机生成一个位于 0 ~ RAND_MAX 之间的整数。 RAND_MAX 是 <stdlib.h> 头文件中的一个宏,它用来指明 rand() 所能返回的随机数的最大
  • 在实际编程中,我们经常需要生成... 头文件中 rand() 函数来生成随机数,rand() 会随机生成一个位于 0 ~ RAND_MAX 之间整数。 RAND_MAX 是 <stdlib.h> 头文件中一个宏,它用来指明 rand() 所能返回...
  • C语言连续生成个随机数(可限制范围)

    万次阅读 多人点赞 2020-01-15 11:28:59
    生成随机数 在现实中我们经常用到随机数,可怎么实现呢,且听小乔慢慢...函数产生的随机数是伪随机数,是根据一个数值按照某个公式推算出来,而这个数值由一个公式计算得来,这个值在电脑启动后是不变。在这里我...
  • 在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,这篇文章主要介绍了使用c语言生成随机数的示例,需要的朋友可以参考下
  • C语言生成随机数

    2020-03-28 15:48:37
    首先,C语言生成随机数的函数是rand(); 这rand生成的其实是伪随机数,是由随机数种子按一定公式生成的周期很长的数列。 用srand函数来改变随机数种子 srand(这里填unsigned类型的数据) 如果在srand里放上时间...
  • c语言产生随机数的函数

    万次阅读 多人点赞 2018-04-15 11:38:01
    1.产生随机数 (1)使用该函数首先应在开头包含头文件stdlib.h(2)在标准C库中函数rand()可以生成0~RAND_MAX之间的一个随机数,其中RAND_MAX 是stdlib.h 中定义一个整数,它与系统有关。(3)rand()函数没有输入参数...
  • 首先需要明确一点是,计算机系统中生成一个随机数,需要依赖一个随机量,这个随机量称为随机数种子。否则生成就是伪随机数。随机数种子值越多样化,生成数就越随机。通常,随机数种子从计算机系统外部引入,...
  • 语言产生随机数是一个常见的编程功能任务,当然这个也不难,调用两三个函数就出来了,但是你知道这些函数具体是起到怎样的作用,并且是它们是如何产生随机数的吗? 几个概念 随机数:数学上产生的都是伪随机数,...
  • 这是因为rand()函数产生的随机数是伪随机数,是根据一个数值按照某个公式推算出来,而这个数值由一个公式计算得来,这个值在电脑启动后是不变。在这里我将这个公式比作一个种子,现在我们就要修改这个种子...
  • 头文件中 rand() 函数来生成随机数,随机生成一个位于 0 ~ RAND_MAX 之间整数。它用法如下: int rand (); 为什么不使用 random() 函数? 具体用例: #include <stdio.h> #include <stdlib.h> ...
  • C语言生成指定范围内的随机数

    万次阅读 多人点赞 2019-07-06 20:22:26
    ,这个语句将产生随机数的种子,然后再需要使用随机数的地方使用rand函数,但是rand()函数只能够生成[0,RAND_MAX]范围内的整数,RAND_MAX是stdlib.h头文件中的一个常数(32767),在不同的系统之下这个...
  • C语言生成随机数笔记

    2021-02-18 14:37:35
    使用 rand() 生成随机数之前需要用随机发生器初始化函数 srand(unsigned seed)进行伪随机数序列初始化,seed 又叫随机种子,通俗讲就是,如果每次提供 seed 是一样话,最后每生成的随机值也都是一样...
  • 假如你想要产生一个10-100之间的随机数那么 int a=rand%91+1 (2)产生随机数时,在调用前都会查询是否调用了srand给种子设置了初值,如果没有调用,那么系统会自动给种子赋初值,并且后面种子值保持不变。 也就是说...
  • rand函数,C语言中用来产生一个随机数的函数。 rand函数界限:stdlib.h头文件中有宏#define RAND_MAX 0x7fff rand产生一个0-0x7fff的随机数,即最大是32767的一个数 rand函数原型 #include <stdlib.h&...
  • c语言产生随机数函数

    千次阅读 多人点赞 2020-03-21 15:38:17
    rand()函数返回一个从0~32767之间随机整数,为了生成区间 [m,n] 之间整数,可以用公式 rand()%(n-m+1)+m。 例区间:[100,200],随机整数计算方法为: rand()%(200-100+1)+100 即rand()%101+100; rand()函数是以...
  • C语言的随机数生成

    万次阅读 多人点赞 2017-11-25 23:56:16
    在我们编写程序的时候,经常会需要电脑给我们随机生成一个整数,这个时候我们就需要一个随机数的生成器——rand()。rand()为C语言的函数,调用该函数需要加头文件#include,而在调用rand()函数的时候系统会自动...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 419
精华内容 167
关键字:

c语言生成一个随机数的函数

c语言 订阅