首页 > 代码库 > 随机数生成
随机数生成
遇到了这么个题
1949, 2012, 1946, 1874, 2046, 1994, 1839, 1824, 1999, 1024
Choose one number from the ten numbers mentioned above. Only one is correct.
正好复习一下生成(伪)随机数的rand和srand...
time(0)获得从某个值得纪念的时刻(1970年1月1日0时)到调用time函数时经过的秒数
srand设置随机数种子,就是说种子相同时产生的“随机”序列也相同,不过每次使用不同的种子(使用time(0)),假装成是真随机就能凑合用了
rand(),得到0-RAND_MAX(在我的系统上是32767)之间的随机数,再取膜你想要的范围就行了
time()需要ctime头文件
srand,rand需要cstdlib
#include<cstdio> #include<cstdlib> #include<ctime> int arr[10] = {1949, 2012, 1946, 1874, 2046, 1994, 1839, 1824, 1999, 1024}; int main() { srand(time(0)); int num = rand()%10; printf("%d", arr[num]); return 0; }
交了四次成功AC,处于(勉强的)欧洲人水平
所以说到最后我也不知道答案是哪个数,interesting
随机数生成
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。