LC-3 成绩排序问题

2018-05-12  本文已影响0人  Neuroway

利用提供的安装软件包和软件使用说明文档,完成16名学生成绩排序,及统计分析

成绩分类规则

A:全班排名前25%,且成绩在85分及以上

B:非A成绩,全班排名前50%,且成绩在75分及以上

C:非A、B成绩

要求

使用LC-3汇编语言,编写程序实现以上功能

输入

16名学生成绩,存储于x3200至x320F

每个成绩为0至100之间,由16比特无符号整数表示

输出

成绩降序排序,并存储于x4000至x400F内存位置,x4000位置成绩为最高成绩

得A、B成绩的学生总人数,分别存储于x4100,及x4101位置

三、实验步骤与过程

[if !supportLists]1.     [endif]总体把握

首先,对于批量数据的排序首先要确定排序算法,考虑到中间循环的复杂性,应当逐步考虑分离相关内容为多个子函数,通过子函数调用实现排序、Callee 入栈模式。

排序使用快速排序法实现

[if !supportLists]2.     [endif]实现迭代器(循环内逐个调度)函数

[if !supportLists]3.     [endif]实现两个数字的比较函数

[if !supportLists]4.     [endif]实现两个数字的交换函数

[if !supportLists]5.     [endif]实现数组取值

[if !supportLists]6.     [endif]实现数组写值

[if !supportLists]7.     [endif]实现数组拷贝

[if !supportLists]8.     [endif]实现快速排序函数(自定比较函数版、数组地址、数组长度、单个数值内存宽度)

[if !supportLists]9.     [endif]实现统计函数(统计a,b,c)

[if !supportLists]10. [endif]编写测试样例、测试相关算法正确性

上一篇下一篇

猜你喜欢

热点阅读