怎样用C语言生成10个1到100的不重复的随机数?

 我来答
BrotherGao
推荐于2018-03-11 · TA获得超过1536个赞
知道小有建树答主
回答量:334
采纳率:0%
帮助的人:405万
展开全部
楼主你好!
根据你的要求我已经将代码实现如下
#include<stdio.h>
#include<time.h>
#include<stdlib.h>

int main(){
int a[10];
srand((unsigned)time(NULL));
for(int i=0;i<10;i++){
A: a[i]=rand()%99+1;
for(int j=0;j<i;j++){
a[i]=rand()%99+1;
if(a[i]==a[j])goto A;
else break;
}
}
for(int i=0;i<10;i++)
printf("%d ",a[i]);
}

希望我的回答对你有帮助!
xoaxa
2013-03-26 · TA获得超过8610个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3479万
展开全部
/*
7 29 89 2 63 35 34 82 96 87 69 6 44 12 5 93 4 67 46 83
Press any key to continue
*/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define N 20
int main() {
int i,j,flag,num,a[N];
srand((unsigned)time(NULL));
for(i = 0; i < N; ++i) {
num = rand()%98 + 1;
flag = 1;
for(j = 0; j < i; ++j) {
if(num == a[j]) {
flag = 0;;
break;
}
}
if(flag) a[i] = num;
else --i;
}
for(i = 0; i < N; ++i)
printf("%d ",a[i]);
printf("\n");
return 0;
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mingjiameng4
2013-03-26
知道答主
回答量:22
采纳率:0%
帮助的人:13.4万
展开全部
用随机函数就好了
抄楼下的,但算法结构比楼上 好
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main()
{
int srand_num[10];
srand((unsigned)time(NULL));
for(int i=0;i<10;i++)
{
a[i]=rand()%99+1;
if(i>0&&srand_num[i]==srand[i-1]) i--;
}
for(int i=0;i<10;i++)
printf("%6d",srand_num[i]);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天堂丨禁区
2013-03-26 · 超过21用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:35.8万
展开全部
rand()函数,遇到重复的不输出就ok了嘛
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式