实验七排序的基本操作.docVIP

  • 77
  • 0
  • 约1.34千字
  • 约 4页
  • 2016-07-04 发布于重庆
  • 举报
实验七排序的基本操作

计算机软件实验报告 (实验七 排序的基本操作) 一、实验目的与基本要求 掌握常用的排序方法,并用高级语言实现排序算法。 理解排序的定义和各种排序的特点。 了解排序过程以及依据的原则,并了解各种排序方法的时间复杂度分析。 二、实验条件 硬件:一台微机 软件:操作系统和C语言系统 三、实验方法 确定存储结构后,上机调试不同的排序方法。 四、实验内容 1.设计一待排序的线性表以顺序存储结构存储,试写出冒泡排序算法。 2.给出n个学生的考试成绩表,每条信息由姓名与分数组成,试设计一个算法: (1)按分数高低次序,打印出每个学生在考试中获得的名次,分数相同的为同一名次。 (2)按名次列出每个学生的姓名与分数。 五、实验代码及运行结果 #include stdio.h #define N 10 #includeiostream using namespace std; void main( ) { int a[N]; int i,j,t; cout请输入10个数:endl; for(i=0;iN;i++) cina[i]; cout\n; for(j=0;jN-1;j++) for(i=0;iN-j-1;i++) if(a[i]a[i+1]) {t=a[i]; a[i]=a[i+1]; a[i+1]=t; } cout排序结果:\n; for(i=0;iN;i++) couta[i]\t; return; } #include stdio.h #define n 6 #includeiostream using namespace std; struct student { char name[8]; int score; }; void main() { struct student R[n]; int num,i,j,max; struct student temp; cout\n 请输入学生成绩:\n; for(i=0;in;i++) { cout姓名:; cinR[i].name; cinR[i].score; } for(i=0;in;i++) { max=i; for(j=i+1;jn;j++) if(R[j].scoreR[max].score) max=j; if(max!=i) { temp=R[max]; R[max]=R[i]; R[i]=temp; } } num=1; for(i=0;in;i++) {if((i0)(R[i].scoreR[i-1].score))num=i+1; cout第num\tR[i].name\tR[i].scoreendl; } return; } 1

文档评论(0)

1亿VIP精品文档

相关文档