sortfunc.c
来自「纯用C写的图形化的职工管理系统 虽然只实现了基本功能 但很有代表性」· C语言 代码 · 共 57 行
C
57 行
typedef struct
{
unsigned long num;
char name[20];
char sex;
unsigned char age;
unsigned long salary;
}WORKERTYPE;
/*/////////////按各种方式排序的函数////////////*/
/*按职工号*/
int sort_num(WORKERTYPE *n,WORKERTYPE *m)
{
if((n->num)==(m->num))
return 0;
else
return (((n->num)>(m->num))?1:-1);
}
/*按姓名*/
int sort_name(WORKERTYPE *n,WORKERTYPE *m)
{
return strcmp(n->name,m->name);
}
/*按性别*/
int sort_sex(WORKERTYPE *n,WORKERTYPE *m)
{
if((n->sex)==(m->sex))
return 0;
else
return(((n->sex)>(m->sex))?1:-1);
}
/*按年龄*/
int sort_age(WORKERTYPE *n,WORKERTYPE *m)
{
if((n->age)==(m->age))
return 0;
else
return((n->age)>(m->age)?1:-1);
}
/*按薪水*/
int sort_salary(WORKERTYPE *n,WORKERTYPE *m)
{
if((n->salary)==(m->salary))
return 0;
else
return (((n->salary)>(m->salary))?1:-1);
}
/*///////////////////////////////////////////////*/
/*排序方式挂接数组*/
int (*p_way[5])(WORKERTYPE *n,WORKERTYPE *m)=
{sort_num,sort_name,sort_sex,sort_age,sort_salary};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?