C语言随机生成成绩排序,如何实现以下功能给出1000个通过随机数生成的数据,分别用直接插入排序法、冒泡排序法、快速排序法进行排序...
已结贴√
问题点数:20 回复次数:2
如何实现以下功能给出1000个通过随机数生成的数据,分别用直接插入排序法、冒泡排序法、快速排序法进行排序
#include
#include
#include
#include
void create();
void InsertSort(int a[], int length);
void BubbleSort(int a[], int length);
void QKSort(int a[], int length);
void main() /*主函数即用户的操作界面*/
{
int b,flag=0; /*声明局部变量*/
while(1) /*循环输出以下信息*/
{
printf("**************************--------------------主菜单--------------------************************\n");
printf("***************-------------------------------排序-----------------************************\n");
printf(" 1.新建随机生成1000数 \n");
printf(" 2.直接插入排序法进行排序 \n");
printf(" 3.冒泡排序法进行排序 \n");
printf(" 4.快速排序法进行排序 \n");
printf(" 0.退出 \n");
printf(" 请输入选项0-4 \n");
printf(" 请输入你的选择:" );
scanf("%d",&b);
switch(b)
{
case 1:create();break;
case 2:InsertSort(int a[],int length);break;/*直接插入排序法*/
case 3:BubbleSort(int a[],int length);break;/*冒泡排序法*/
case 4:QKSort(int a[], int length);break; /*快速排序法进行排序*/
case 0:flag=1;break;/*退出SWITCH语句*/
default :printf("错误!");
}
if(flag) break; /*如果选择0就退出循环*/
}
}
void create()
{
int a[1000];
srand((unsigned)time(NULL));
for(int i=0;i<1000;i++)
{
a[i]=rand()%1000;printf("%d\t",a[i]);
if(i%10==0)
printf("\n");
}
}
void InsSort(int a[], int length)
/* 对记录数组r做直接插入排序,length为数组中待排序记录的数目*/
{
int i,j;
for (i=2;i<=length;i++)
{
a[0]=a[i]; /*将待插入记录存放到监视哨r[0]中*/
j=i-1;
while (a[0]< a[j] ) /* 寻找插入位置 */
{
a[j+1]= a[j];
j=j-1;
}
a[j+1]=a[0]; /*将待插入记录插入到已排序的序列中*/
}
} /* InsSort */
void BubbleSort(int a[], int length )
/*对记录数组r做冒泡排序,length为数组的长度*/
{
int n,i,j;
int change;
RecordType x;
n=length;
change=TRUE;
for ( i=1 ; i<= n-1 && change ;++i )
{
change=FALSE;
for ( j=1 ; j<= n-i ; ++j)
if (a[j]> a[j+1] )
{
x= a[j];
a[j]= a[j+1];
a[j+1]= x;
change=TRUE;
}
}
} /* BubbleSort */
void QKSort(int a[],int low, int high )
/*对记录数组r[low..high]用快速排序算法进行排序*/
{
int pos;
if(low
{
pos=QKPass(a, low, high); /*调用一趟快速排序,将枢轴元素为界划分两个子表*/
QKSort(a, low, pos-1); /*对左部子表快速排序*/
QKSort(a, pos+1, high); /*对右部子表快速排序*/
}
}
C语言随机生成成绩排序,如何实现以下功能给出1000个通过随机数生成的数据,分别用直接插入排序法、冒泡排序法、快速排序法进行排序...相关推荐
- 易语言随机生成MAC源码
这里推荐一个生成随机模拟MAC的源码,非常简洁实用,比如我们在hook物理网卡地址时,需要生成这样的效果. 易语言api hook GetAdaptersAddresses 劫持网卡物理地址 测试输入 ...
- 数据结构—排序算法总结(插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、合并排序、计数排序)
*排序 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作. 稳定性 在待排序的数组中,如果出现多个相同的关键字,例如:98751555512,中出现重复的数字,在 ...
- C语言 - 随机生成数字 和 汉字
目录 0 写在前面 1 随机生成数字(整数 和 浮点数) 1.1 rand() 简析 本质 使用注意 rand()取值范围: 1.2 在 [ m, n ] 中随机取数(整 + 浮) 1.2.1 注意: ...
- 用R语言随机生成30个自然数, 然后把3的倍数的储存到一个向量,3k+1形式的数储存到另外一向量, 3k+2形式储存到第三个向量。写出R代码。
此篇博客主要讲述R语言的应用,随机生成30个自然数(范围0-100),存入向量x, 然后把3的倍数的储存到一个向量x1,3k+1形式的数储存到另外一向量x2, 3k+2形式储存到第三个向量x3.写出R ...
- c语言随机生成1到100随机数_VB之生成随机数
VB6.0制作的一个生成随机数的程序,点击开始后,每个标签框不停转动,随机生成1~10以内的一位数字,点击停止,则转动停止,这个程序主要应用于活动时抽奖需要,下面是整个程序功能的实现. 程序界面主要如 ...
- c语言随机生成n个数求最小值,C语言程序:从N个数中随机取出100个不同的数
/**你题目中的N个数至少得大于100吧.下面的程序N个数是随机生成 你的N个数是?同时这个程序有错误的话请告诉我. */ /* *从N个数中随机取出100个不同的数 *@author:banxi19 ...
- C语言随机生成连连看地图,MFC实现连连看游戏之地图显示
MFC实现连连看游戏前期过程中遇到的一大问题是如何将地图显示出来,最后还是看了其他人的源码才搞定. 首先是地图数组的生成,这个网上找有很多,我用的是随机生成地图的种类,然后将其放在两个连续的位置,最后 ...
- C语言随机生成1到50中7个数,c语言生成50个随机数,对随机数进行快速排序。
楼下的几个回答我怎么看也不是快速排序,所以我做了一个用快速排序法排序的程序 #include #include #include #define LEN 50 //快速排序(升) void quick ...
- c语言随机生成整数存放一维数组_文科生学 Python 系列 7: Numpy 数组/索引和切片...
第四课:本课内容: • 0. 导入 NumPy 包 • 1. 创建 NumPy 数组 • 2. 索引和切片 • 3. 读取文件 • 4. 布尔型索引 • 5. 数组的运算 • 6. 常用函数举例 Nu ...
最新文章
- select,epoll,poll比较
- 网络营销期间交换链接多会有更多网络营销的机会吗?
- C++ Primer 5th笔记(chap 14 重载运算和类型转换)lambda函数对象
- java异常体系_Java 异常体系
- svn Error:Wrong committed revision number: -1。
- ffmpeg php linux,linux(php环境) 安装ffmpeg
- colinux的安装
- no.7_qzhai 开心版_开心宝贝GM版下载-开心宝贝GM版安卓下载
- 地表上最强编程语言——C语言
- [有限元]利用虚位移和虚力的定义、对称性推导弹性力学公式
- 粒子滤波简介(转载)
- seetaface6教程:封装人脸识别,人脸检测,,眼睛检测,状态,特征.....
- Java常用工具类-根据物流单号,从快递100中获取物流详细信息,包含发货,签收等
- 【PyG 教程】PyG 自定义构造 GNN
- Webots水下机器人仿真
- 【BZOJ】【P1135】【POI2009】【Lyz】【题解】【线段树+Hall定理】
- docker中 scp root远程至普通用户
- PinYin4j使用教程
- file.exists(),file.isFile()和file.isDirectory()的区别
- 【软件测试】接口测试用例和报告模板
热门文章
- uses-feature 和 uses-permission总结
- 苏州学生python培训学校
- Java数据库连接——JDBC新手安装、测试教程
- java 转义 方法_JAVA 转义函数:跳过转义字符
- python 逐行调试工具_Python调试的三个工具
- Python 调试方法总结
- Python的打印函数print()中占位符%和format()使用以及f格式化字符串
- 编码,快与慢:开发者和过度自信心理学
- 不折腾,毋宁死。Python修炼之路(目录)
- html4三种版本,bootstrap4有哪些版本?