用C++怎么生成n个1~n间各不相同的随机数,其中n是用户自己输入的

 我来答
zy1404
推荐于2017-10-03 · TA获得超过1387个赞
知道小有建树答主
回答量:784
采纳率:100%
帮助的人:492万
展开全部
#include <iostream>
#include <iomanip>
#include<time.h>
using namespace std;
void myrand(int *a,int num)//产生num个不重复的随机数
{
int i,n=0,t;
t=rand()%num+1;
while(n<num)
{
for (i=0;i<n;i++)
if (t==a[i]) break;
if (i==n)
{
a[n]=t;
n++;
}

t=rand()%num+1;
}
}
void main()
{
int a[2000],n;
cin>>n;
myrand(a,n);
for (int i=0;i<n;i++)
{
cout<<setw(4)<<a[i];
if((i+1)%10==0)
cout<<endl;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式