- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* #includestdio.h int fun1( int ); int fun2( int ); void main() { int i; for(i = 2 ; i 5 ; i++) printf (fun1(%d) = %d \t , i , fun1( i ) ); printf(\n); for(i = 2 ; i 5 ; i++) printf (fun2(%d) = %d \t , i , fun2( i ) ); printf(\n); } #include stdio.h void func0(); void func1(); void func2(); int n=1; void main() { printf(n=%d\n,n); func0(); func1(); func2(); } void func0() { // printf(func0.m=%f\n,m); printf(func0.n=%d\n,n); } float m; void func1() { m=2.3; printf(func1.m=%f\n,m); printf(func1.n=%d\n,n); } void func2() { printf(func2.m=%f\n,m); printf(func2.n=%d\n,n); } * * #include stdio.h int i = 1; /*变量i定义在所有函数之外,属于全局变量*/ int test ( ); void main() { printf(主函数i:%d 其地址%Fp\n , i,i); i = test ( ) + 1; printf(主函数i:%d 其地址%Fp\n , i,i); } int test ( ) { int i; printf(test中i:%d 其地址%Fp\n , i,i); i = 2; printf(test中i:%d 其地址%Fp\n , i,i); return( i ); } 主函数中访问的变量 i:1 test 中访问的变量 i:28345 test 中访问的变量 i:2 主函数中访问的变量 i:3 * 是文件内部的全局变量。 //1.cpp #includestdio.h void fun1( ); void fun2( ); extern int aaa; void main() { printf(%d\n,aaa); fun1(); fun2(); } //2.cpp #include stdio.h //static int aaa=1; //extern int aaa; int aaa=1; void fun1( ) { aaa=2; printf(%d\n,aaa); } //int aaa=1; //static int aaa=1; void fun2( ) { aaa=3; printf(%d\n,aaa); } * 随机数生成算法 - [技术趋势] 2007-10-06 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明/logshtml 这两天没事,就写了写数学课上老师说的那个“蒲丰投针实验的程序。接触到了一些随机数生成方面的东西,写出来跟大家分享一下。 对于计算机生成随机数这个东西,以前有过一些浅显的认识。只知道计算机不能生成真正的随机数,只能用一定的方法来模拟随机数,叫做伪随机数。比如C语言里面的rand()函数,就是一个伪随机数发生器。之前也知道有个叫做seed的东西,知道每次调用rand()之前都需要重置一下seed。以往的编程当中,一般都用系统时间来产生seed。但是seed是什么东西,为什么要用seed,则完全不清楚是怎么一回事了。 网上的一些文章中提到,C语言中伪随机数生成算法实际上是采用了线性同余法”。具体的计算如下: Xi = (Xi-1 * A + C ) mod M 其中A,C,M都是常数(一般会取质数)。当C=0时,叫做乘同余法。srand()函数置的seed实际上会作为X0被代入上式中,然后每次调用rand()函数都会用上一次产生的随机值来生成新的随机值。这样我们可以看出实际上用rand()函数生成的是一个递推的序列,一切值都来源于最初的seed。这就不难解释为什么当初始的seed取一样的时候,得到的序列都相同。也就解释了为什么我们需要调用系统时间这种变化的值来充当seed
文档评论(0)