c语言产生20-100随机数,生成20个1-100不重复的随机数

思路很简单

1.创建1个长度为100的int数组作为容器,存放1-100,1个结果容器,1个标记量

2.调用随机函数得到N,用N当做数组的下标

3.通过下标取到对应的值判断是否有效,若有效,则进行赋值,结束后把该为上得值置为无效.若 下标对应容器上的值无效,则回滚1次,继续随机

#include

#include

void randomMethods()

{

/* 定义 随机数存放的容器, 结果容器 标记量*/

int _Number[100]={0},_Num[20]={0},N=0;

for (int i=1; i<101; i++) {

_Number[i]=i; //将元素放如容器 1-100

}

for (int i=0; i<20; i++) {

N=arc4random()%100; //下标 这里的是Objective-C的随机方法

_Number[N]!=0? _Num[i]=_Number[N],_Number[N]=0 : i--; //通过随机的下标来取数字,确保1-100随机不重复

}

for (int i=0; i<20; i++) {

printf("_Num[%d]=%d \n",i,_Num[i]);

}

}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值