三元组s1(a,b,c) 元素类型可自定义 elemtype
下面直接贴代码
triple.h 头文件
#ifndef _TRIP_H_
#define _TRIP_H_
#define ERROR -1
//可更改三元组的数据类型
typedef int elem_type;
//三元组结构体定义
typedef struct _TRIP
{
elem_type e1;
elem_type e2;
elem_type e3;
}TRIP;
bool init_trip(TRIP *p);
TRIP *init_trip_ex();
bool destory_trip(TRIP *p);
bool destory_trip_ex(TRIP *p);
bool put(TRIP *p, int pos ,elem_type *e);
bool get(TRIP *p, int pos,elem_type *e);
elem_type get_max(elem_type a,elem_type b);
elem_type get_min(elem_type a,elem_type b);
elem_type max(TRIP *p);
elem_type min(TRIP *p);
bool is_ascending(TRIP *p);
bool is_descending(TRIP *p);
bool sort(TRIP *p);
bool show(TRIP *p,void (*pfunc)(elem_type *,elem_type *,elem_type *));
void print_int(int *a,int *b,int *c);
bool add1(TRIP *p,TRIP *s);// p=p+s;
bool add2(TRIP *p,TRIP *s,TRIP *x);//p+s=x;
TRIP *add3(TRIP *p,TRIP *s);//p+s=x;
bool swap_trip(TRIP *p,TRIP *s);
#endif