2010年吉林高考语文试题

  • 格式:doc
  • 大小:321.50 KB
  • 文档页数:3

还书系统

该系统可以让借书者很容易的知道还书的步骤,操作简便,确保借阅者能够顺利的还书。

借书者还书时的方法:

借阅者进入自己的页面,会看到如下的提示:

借阅者可以很容易的进入还书模块。

借阅者进入还书模块后,可以从两个方面输入方式进行还书:

第一种, printf("\n请输入要还书的读者编号:"); 进行遍历一次借阅者链表,看它借的书是否存在(while(q->next!=NULL&&strcmp(return_reader_num,q->reader_num)!=0)

q=q->next;

如果不存在,就会通过以下程序输出,告诉读者信息错误:if(q->next==NULL&&strcmp(return_reader_num,q->reader_num)!=0)

{

find=2;/*设置标志,用于判断读者是否借了此书或是否出错提前结束,若提前出错,则find=2,若借了,则find=1,若没借为find=0*/

printf("\n此读者编号不存在!按任意键返回..\n");

goto end;

}

第二种还书方式:输入读者还书的编号(printf("\n此读者编号不存在!按任意键返回..\n");),还是像上面一样进行一次遍历,如果出错,还是用find=2这个标志输出,告诉读者出错。

我们也设计了以下的程序,来说明读者已经借书:

for(i=0;i

if(strcmp(return_book_num,q->borrow[i].borrow_book_num)==0) / / 借书者

输入要还书的读者编号 输入读者还书的编号 {

find=1; /*设置标志,用于判断读者是否借了此书或是否出错提前结束,若提前出错,则find=2,若借了,则find=1,若没借为find=0*/

又通过以下的程序来告诉读者还书成功,这个程序用后一个借的书的代码覆盖现在要还的书,也就是说明借的这本书的记录已经不存在,用后面一本书的还书截止日期覆盖要还的书的还书日期,也就是说明借阅者还书成功。

for(j=i;j

{

strcpy(q->borrow[j].borrow_book_num,q->borrow[j+1].borrow_book_num);

strcpy(q->borrow[j].limit_date,q->borrow[j+1].limit_date);

}

strcpy(q->borrow[Max-1].borrow_book_num,"0");

strcpy(q->borrow[Max-1].limit_date,"0");

p->book_xy++;

q->right--;

printf("\n编号%s的读者还书完毕!按任意键继续下步操作..",return_reader_num);

}

但是如果借阅者并没有借过那本书,那么我们就用find=0这样一个标志输出来告诉借阅者,他并未借阅此书。

主要步骤用下面的流程图来表示;

输入读者还书的编号输入要还书的读者编号是否存在此读者编号不存在!按任意键返回开始不存在用后面书的信息覆盖前面的信息存在读者还书完毕!按任意键继续下步操作结束

输入读者还书的编号输入要还书的读者编号是否存在此读者编号不存在!按任意键返回开始不存在用后面书的信息覆盖前面的信息存在读者还书完毕!按任意键继续下步操作结束