在实际开发中,我们往往需要一定范围内的随机数,过大或者过小都不符合要求,那么,如何产生一定范围的随机数呢?我们可以利用取模的方法:int a = rand() % 10; //产生0~9的随机数,注意10会被整除如果要规定上下限:int a = rand() % 51 + 13; //产生13~63的随机数分析:取模即取余,rand()%51+13我们可以看成两部分:rand()%51是产生 0~50 的随机数,后面+13保证 a 最小只能是 13,最大就是 50+13=63。
最后给出产生 13~63 范围内随机数的完整代码:#include#include#includeint main(){ int a; srand((unsigned)time(NULL)); a = rand() % 51 + 13; printf("%d\n",a); return 0; }

连续生成随机数

有时候我们需要一组随机数(多个随机数),该怎么生成呢?很容易想到的一种解决方案是使用循环,每次循环都重新播种,请看下面的代码:#include#include#includeint main() { int a, i; //使用for循环生成10个随机数 for (i = 0; i