qsort实现结构体数组排序】的更多相关文章

要注意强制转换 #include <stdio.h> #include <stdlib.h> typedef struct{ int num; char name[20]; float chinese; float math; float english; }Stu,*pStu; #define N 3 void arrPrint(pStu sArr) { int i; for(i=0;i<N;i++) { printf("%d %10s %5.2f %5.2f %…
1007 DNA 排序 题目大意: 序列“未排序程度”的一个计算方式是元素乱序的元素对个数.例如:在单词序列“DAABEC'”中,因为D大于右边四个单词,E大于C,所以计算结果为5.这种计算方法称为序列的逆序数.序列“AACEDGG”逆序数为1(E与D)——近似排序,而序列``ZWQM'' 逆序数为6(它是已排序序列的反序). 你的任务是分类DNA字符串(只有ACGT四个字符).但是你分类它们的方法不是字典序,而是逆序数,排序程度从好到差.所有字符串长度相同. 输入: 第一行包含两个数:一个正整…
c中没有自带的sort函数emm 不过有自带的qsort函数 (其实用法都差不多(只是我经常以为c中有sort 头文件要用 #include <stdlib.h> 一定要重新把指针指向的值赋值给一个node类型,不然比较不了 struct node{ int d,id,tmp; }a[N]; int cmp(const void *x,const void *y){ struct node xx = *(struct node*)x; struct node yy = *(struct nod…
按结构体中某个成员进行排序,下面代码以成员b1为升序的排序 代码: #include<iostream> #include<algorithm> using namespace std; struct st { int a1; int b1; }arr[100]; bool cmp(const st &x, const st &y) { return x.b1<y.b1;//从小到大排<,若要从大到小排则> } int main() { int i…
结构体模板 struct STU { string name; //用string可以代替char string num; int s; }; sort是用快速排序实现的,属于不稳定排序,stable_sort是用归并排序实现的,因此是稳定的.从此以后,为了保险起见我打算使用stable_sort. 不管是sort还是stable_sort默认都是升序,有些情况要求降序等更加复杂的情况,利用默认的升序就会变得比较麻烦(其实都是一样的) 因此为了方便,可以自定义一个bool类型的cmp函数 boo…
#include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct student { char *name; }; void scan(student stu[], int &n){ ]; scanf("%d", &n); ; i < n; ++i){ scanf("%s", str); int len = strlen(str…
假设学生的基本信息包括学号.姓名.三门课程成绩以及个人平均成绩,定义一个能够表示学生信息的结构类型.输入n(n<50)个学生的成绩信息,按照学生的个人平均分从高到低输出他们的信息.如果平均分相同,按输入的先后顺序排列. 输入格式:输入一个正整数n(n<50),下面n行输入n个学生的信息,包括:学号.姓名.三门课程成绩(整数). 输出格式:输出从高到低排序后的学生信息,包括:学号.姓名.平均分(保留两位小数). 输入样例:3101 Zhang 78 87 85102 Wang 91 88 901…
C++标准快速排序库qsort进行结构体快速排序 代码如下 #include <stdio.h> #include <stdlib.h> typedef struct { int date; int value; }X_S; /* a->z */ int cmpfunA2Z(const void * a, const void * b) { X_S * p1 = (X_S *)a; X_S * p2 = (X_S *)b; return p1->value > p…
1.本章学习总结(2分) 1.1 学习内容总结 (1)结构体如何定义.成员如何赋值 结构体的一般形式为:      struct  结构体名     {      数据类型 成员名1:      数据类型 成员名2:      :      数据类型 成员名n:      }: a.结构体的定义及赋值: 先定义结构体类型再定义变量名,这是C语言中定义结构体类型变量最常见的方式.       struct 结构体名      {              成员列表:      }:      st…
1.本章学习内容总结 1.1学习内容总结 什么是结构类型? 结构Structure类型是一种允许程序员把一些数据分量聚合成一个整体的数据类型. 结构和数组的区别? 结构和数组的最大区别是数组中所有元素的数据类型必须是相同的,而结构中各成员的数据类型可以不同. 有几种结构的定义形式? 1.一般形式: ··· struct 结构名{ 类型名 结构成员名1; 类型名 结构成员名2; ... 类型名 结构成员名n; }; 2.混合定义: ··· struct 结构名{ 类型名 结构成员名1; 类型名 结…