插入排序C语言实现(在成绩排名中的应用)
来源:互联网 发布:局域网络流量监控软件 编辑:程序博客网 时间:2024/04/29 04:01
/*从小到大排序。已知一个班级的学生花名册上的成绩name和data,花名册按姓名首字母排序。求把成绩按从小到大排序后的学生数据。*/#include <stdio.h>#include <stdlib.h># define LENGTH 14void insert_sort(int data[], int length, int map[]);void main(){ int i = 0;int data[LENGTH] = {81,42,15,22,65,91,82,95,11,33,77,88,99,22}; // data数组中的数据为某班花名册上学生的分数//int length = sizeof(data)/sizeof(data[0]);int map[LENGTH] = {0}; // map数组中,索引为某学生排完序后的名次,而值为在花名册(即字符串数组)中的位置。char* name[LENGTH] = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n"};printf("排序前:\n");for(i = 0; i < LENGTH; i++){ printf("姓名:%s 分数:%d\n", name[i], data[i]);}insert_sort(data, LENGTH, map);printf("排序后:\n"); for(i = 0; i < LENGTH; i++) {printf("姓名:%s 分数:%d\n", name[map[i]], data[i]); } system("pause");}void insert_sort(int data[], int length, int map[]){int i = 0, j = 0; for(i = 1; i < length; i++) {int temp = data[i];for(j = i - 1 ; j >= 0 && temp <= data[j]; j--) { data[j + 1] = data[j]; }data[j + 1] = temp;map[j + 1] = i; }}
1 0
- 插入排序C语言实现(在成绩排名中的应用)
- 直接插入排序(C语言实现)
- 插入排序(c语言实现)
- 直接插入排序(C语言)实现
- 插入排序C语言实现
- 插入排序c语言实现
- 插入排序C语言实现
- 插入排序C语言实现
- 插入排序(C语言实现)
- 插入排序C语言实现
- 插入排序C语言实现
- c语言实现插入排序
- c语言实现插入排序
- 插入排序C语言实现
- 插入排序(C语言实现)
- c语言实现插入排序
- C语言实现插入排序
- c语言实现插入排序
- 深入理解Java Class文件格式(五)
- HTML转义字符
- 深入理解Java Class文件格式(六)
- Scala基础与实践练习题[小象学院]
- 能立刻激怒程序员的10句逗逼话==程序员的笑话
- 插入排序C语言实现(在成绩排名中的应用)
- 正则表达式基本语法
- Python学习日记 2015-6-2
- 从镜像文件开出虚拟机
- 设置jfreechart时间序列图时间轴间距和格式
- node.js
- Spring整个Ibatis之SqlMapClientDaoSupport
- 服务器获取准确IP
- 深入理解Java Class文件格式(七)