随机函数循环生成-1或1(C代码)
来源:互联网 发布:java 文件生成md5码 编辑:程序博客网 时间:2024/06/07 13:29
今天代码中用到一个随机函数,要循环生成-1或1,无奈C语言没有专门的函数直接生成,只能自己写了。参考了网上资料后,记录下来,将代码编写如下:
#include <stdlib.h>#include <stdio.h> #include <time.h>int main(){ int i,r,x; srand(time(NULL)); //时间种子for(i=0;i<100;i++){x=1 + (int)rand() % 10;if (x<=5) r=-1;else r=1; //printf("x=%d\n",x);printf("r=%d\n",r);} return 1;}
这里注意一下必须设置时间种子,否则每次生成数都一样。
另外一个是跟踪调试时发现的,如果是有for循环调用这个随机生成函数,时间种子必须在for循环外面,不然的话将会出现一连串-1和一连串1的现象,没有达到随机的效果。
随机函数原理摘录如下:
//要取得[a,b)的随机整数,使用(rand() % (b-a))+ a; //要取得[a,b]的随机整数,使用(rand() % (b-a+1))+ a; //要取得(a,b]的随机整数,使用(rand() % (b-a))+ a + 1; //通用公式:a + rand() % n;其中的a是起始值,n是整数的范围。 //要取得a到b之间的随机整数,另一种表示:a + (int)b * rand() / (RAND_MAX + 1)。 //要取得0~1之间的浮点数,可以使用rand() / double(RAND_MAX) //stdlib.h头文件中宏定义 #define RAND_MAX 0x7fff ,0x7ff即十进制32767
0 0
- 随机函数循环生成-1或1(C代码)
- 生成随机的GUID的C代码
- 生成随机密码的C代码实现
- 生成随机密码的C代码实现
- 随机生成10个1--20之间的随机数,要求不能重复。(for循环解题)
- MATLAB程序生成C或C++代码
- python程序1(生成可重复或不可重复随机字符串、生成多个文件夹和文件,并将生成的字符串写入文件中)
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 名词解释所有(例如:O2O,B2B,OOP)
- 关于UIView的autoresizingMask属性的研究
- 30分钟了解C++11新特性
- 强迫症图片
- HDU 4508 湫湫系列故事――减肥记I(完全背包)
- 随机函数循环生成-1或1(C代码)
- HDU1875畅通工程再续
- DevExpress控件学习总结
- 图论概念总结
- dancing link 解决八皇后
- poj 3253 huffman 贪心
- hdu 3689
- 使用信用卡 要避开这些陷阱
- HDU 1248 寒冰王座(完全背包)