#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define eq(a,b) (!strcmp((a),(b)))
#define lt(a,b) (strcmp((a),(b))<0)
#define lq(a,b) (strcmp((a),(b))<=0)
/*
制作者:张越
学号:130610328
院系:理学院数学系
备注:由于程序简易,需一直保持运行状态,默认学生账号为九位,管理员账号小于九位。
*/
typedef struct
{
char c[80];
int copies;
char intro[400];
int *stid;
int clength;
int csize;
}name;
typedef struct
{
name *elem;
int length;
int size;
}list;
void init(list &l)
{
l.elem=(name *)malloc(40*sizeof(name));
l.length=0;
l.size=40;
}
int increase(list &l,int i)//录入书籍
{
int b,a,m;
b=l.length+i;
a=1;
if(l.length>=l.size)
{
name *newbase=(name *)realloc(l.elem,(l.size+10)*sizeof(name));
l.elem=newbase;
l.size+=10;
}
while(l.length<b)
{
printf("%d:\n",a);
printf("书名: ");
scanf("%s",l.elem[l.length].c);
printf("份数: ");
m=scanf("%d",&l.elem[l.length].copies);
if(m!=1)
{
printf("error!\n");
getchar();
return -1;
}
printf("简介: ");
scanf("%s",l.elem[l.length].intro);