用变量计算次数,判断生成的随机数,符合指定数字就保存,不符合就重新生成,这样就控制一个数出现次数。
下面我的代码,修改常量可实现任意个数任意正整数范围的随机数。
#include
#include
#include
#define NT 10//生成随机数的个数
#define MN 1//随机数范围(正整数)
#define MX 100//随机数范围(正整数)
int main()
{
int i,a[NT],num=0,n=-1,rn;
srand(time(NULL));
printf("即将生成%d~%d的%d个随机数,请指定某一个数字出现的次数:\n",MN,MX,NT);
printf("请输入指定的数字(%d~%d):",MN,MX);
while(num
scanf("%d",&num);
printf("请输入数字出现的次数(%d~%d):",0,NT);
while(n<0)
scanf("%d",&n);
rn=rand()%(MX-MN+1)+MN;
for(i=0;i { if(n==0) { while(rn==num) { rn=rand()%(MX-MN+1)+MN; a[i]=rn; continue; } rn=rand()%(MX-MN+1)+MN; } if(n>0) { while(rn!=num) rn=rand()%(MX-MN+1)+MN; n--; a[i]=rn; continue; } a[i]=rn; } //-------打印输出-------------------- printf("生成的%d个随机数为:\n",NT); for(i=0;i printf("%d ",a[i]); printf("\n"); return 0; }
c语言生成的随机数能指定其中一个数字出现的次数,您可以设计一个输出该数字的语句,然后加一个for循环,设计好循环次数就可以了。
这是电脑的专业知识是写程序的,很复杂,你需要向专业的人员求教才可以明白。
具体的编程和代码是经过不同层
你可以和编程老师面对面编写一下相关代码