———————————array.h———————————
#ifndef ARRAY_H
#define ARRAY_H
#ifndef ERR
#define ERR -1
#define OK 1
#endif
#ifndef MIN
#define MIN 0
#define MAX 100
#endif
typedef int status;
typedef int elemtype;
typedef struct {
elemtype *iva;
int size;
} array;
status array_init( array *, int );
status w_array( array* );
status print( array* );
elemtype find( array*,int );
#endif
__________________array.c___________________________
#include <stdio.h>
#include <malloc.h>
#include "array.h"
status array_init( array *pev, int sz = MAX )
{
pev->iva =
( elemtype* ) malloc ( sz * sizeof ( elemtype ) );
if( !pev->iva )
return ERR;
pev->size = sz;
return OK;
}
status w_array( array *op )
{
int ix;
if( !op )
return ERR;
printf( "请输入%d个数:",op->size );
for( ix = 0; ix < op->size; ++ix )
scanf( "%d", &op->iva[ ix ] );
return OK;
}
status print( array *op )
{
int ix;
if( !op )
return ERR;
printf( "正在输出%d个数:",op->size );
for( ix = 0; ix < op->size; ++ix )
printf( "%d ", op->iva[ ix ] );
printf( "/n" );
return OK;
}
elemtype find( array *op,int xi )
{
if( !op )
return ERR;
return op->iva[ xi ];
}