C语言实现不重复随机序列(源码)

简介:

今天有个朋友需要用C语言实现显示0-100的随机序列,并且要大于50的显示1,小于50的显示0。

俺觉得无非就是rand()函数的使用呗,于是抽空写一下实现,本机测试无误。需要的朋友可以直接拷贝运行。

那个向我提问的朋友也可以看看,并提出下一步设计。俺也给出了详细的注释。程序很短,没有考虑性能,仅以实现

为目的。好久没发贴了,估计近期都会少发帖,因为手头的两个网站要快些做。

 

复制代码
#include  < stdlib.h >   // 标准工具库,要用到其中的rand() 
#include  < stdio.h >  
#include
< conio.h >  
#include 
< time.h >   // 时间库,要用到里面的时间来做随机数的种子 

int  main(){
// 循环变量 
int  i;
int  j;
int  t;
// 随机变量 
int  k;
// 数组初始化 
int  sy[ 100 ] = {};
for (t = 0 ;t <= 100 ;t ++ ){
        sy[t]
= t;
}

// 获得随机种子 
srand(time(NULL));

printf(
" 将0-100的数随机排列,并且大于50的数显示1,小于50的数显示0的程序\n\n " );
for (i = 0 ; i < 100 ; i ++ ){
         k
= rand() % ( 100 - i); 
         
if (sy[k] > 50 )
             printf(
" %d\n " , 1 );
         
else
             printf(
" %d\n " , 0 );
         
// 数组中随机位置后的所有数整体前移一位,覆盖该随机数,防止数列重复 
          for (j = k;j < 100 ;j ++ )
             sy[j]
= sy[j + 1 ]; 

getch(); 
return   0

复制代码

 本文转自施杨博客园博客,原文链接:http://www.cnblogs.com/shiyangxt/archive/2009/03/18/1415736.html,如需转载请自行联系原作者

相关文章
|
23天前
|
存储 SQL 网络协议
C语言C/S架构PACS影像归档和通信系统源码 医院PACS系统源码
医院影像科PACS系统,意为影像归档和通信系统。它是应用在医院影像科室的系统,主要的任务是把日常产生的各种医学影像(包括核磁、CT、超声、各种X光机、各种红外仪、显微仪等设备产生的图像)通过各种接口(模拟、DICOM、网络)以数字化的方式海量保存起来,并在需要的时候在一定授权下能够快速地调回使用。同时,PACS系统还增加了一些辅助诊断管理功能。
39 11
|
2月前
|
C语言
你知道C语言中实现有序序列并序输出的2种方法吗?
你知道C语言中实现有序序列并序输出的2种方法吗?
|
4月前
|
NoSQL Linux Redis
redis源码调试---vscode使用技巧-----C语言跳转到函数定义
redis源码调试---vscode使用技巧-----C语言跳转到函数定义
75 0
|
5月前
|
C语言
c语言编程练习题:7-52 求简单交错序列前N项和
c语言编程练习题:7-52 求简单交错序列前N项和
29 0
|
5月前
|
C语言
c语言编程练习题:7-51 求奇数分之一序列前N项和
c语言编程练习题:7-51 求奇数分之一序列前N项和
30 0
|
1月前
|
存储 人工智能 搜索推荐
【C语言/C++】电子元器件管理系统(C源码)【独一无二】
【C语言/C++】电子元器件管理系统(C源码)【独一无二】
|
1月前
|
存储 人工智能 机器人
【C/C++】C语言 学生信息管理系统(源码)【独一无二】
【C/C++】C语言 学生信息管理系统(源码)【独一无二】
|
1月前
|
人工智能 机器人 测试技术
【C/C++】C语言 21点桌牌游戏 (源码) 【独一无二】
【C/C++】C语言 21点桌牌游戏 (源码) 【独一无二】
|
1月前
|
人工智能 机器人 测试技术
【C语言】C语言实现猜单词小游戏(源码+报告)【独一无二】
【C语言】C语言实现猜单词小游戏(源码+报告)【独一无二】
|
2月前
|
C语言
【C语言】求一个整数的二进制序列中1的个数的三种方法
【C语言】求一个整数的二进制序列中1的个数的三种方法
16 0