程序设计实验报告

  • 格式:doc
  • 大小:127.50 KB
  • 文档页数:18

下载文档原格式

  / 18
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

班级:11计科姓名:王向阳学号:201130457106 C语言“图书信息管理系统设计”实验报告

一﹑设计目的 (1)

二﹑总体设计 (1)

三详细设计 (2)

1 界面设计 (2)

2 模块设计 (3)

3 主函数声明: (3)

4 主函数: (3)

5 录入密码模式源代码: (4)

6 浏览 (5)

7 书名的读取 (5)

8 书名的保存 (6)

9 书名查找 (6)

10 图书信息的录入 (8)

11 删除 (9)

12 信息保存在TXT中要链接 (10)

四调试与测试 (11)

五整个图书信息管理系统源代码如下: (11)

一﹑设计目的

为了进一步提高我们的逻辑思维能力、动手能力和提高独立解决问题的能力,我们小组选择了“图书信息管理系统”课题来进行C语言的强化训练。图书信息管理系统,是每所大学都有的一个较实用的管理系统,我们选择“图书管理系统“课题,更贴近我们的生活从而能更一步了了解图书信息管理的运用。

二﹑总体设计

本系统的功能模块如下图:

如图1-1:简单图书管理系统主要功能三详细设计

1 界面设计

图1-2所示:

按Enter键后进入密码模式

输入登入密码:123456

2 模块设计

1 头文件:#include

#include

#include

#include

2 结构体:typedef struct books

{

int ID; //登入号

char name[10]; //图书书名

char authorname[10]; //作者名

int no; // 分类号

char publisher[5];//出版单位

char time[10];//出版时间

float price; //价格

struct books *next;

}BOO;

3 主函数声明:

BOO *create_form();

void Cipher(); //密码登入菜单

BOO *del(); //删除与修改

void prin(); //浏览图书信息

void search(); //查询图书信息

void insert();

void savefile();

void readfile();

void books();

void myInsert(BOO *books);

4 主函数:

int main()

{

int w=1;

do

{

system("cls");

puts("\n\n\t\t****************MENU**************\n\n");

puts("\t\t\t\t1.登入菜单\n");

puts("\t\t\t2.退出");

puts("\n\n\t\t************************************\n");

printf("请输入选择(1-2):[]\b\b");

scanf("%d",&ID);

switch(ID)

{

case 1:Cipher();break;

case 2:w=0;break;

}

}while(w==1);

return 0;

}

5 录入密码模式源代码:

void Cipher()

{

int n,w=1,flag=0,i=3;

char s[8];

char password[7]="123456";

do

{

printf("\n\nEnter password:");

scanf("%s",s);

if(!strcmp(s,password))

{

flag=1;

break;

}

else

{

printf("\n\nError! You only have %d times! Enter again:\n",i-1);

i--;

}

}while(i>0);

if(!flag)

{

printf("you have Enter 3 times!");

exit(0);

}

do

{

system("cls");

puts("\n\n\t\t**************登陆菜单*******************\n\n");

puts("\t\t\t\t1---图书信息录入\n");

puts("\t\t\t\t2---图书信息浏览\n");

puts("\t\t\t\t3---图书信息查询\n");

puts("\t\t\t\t4---图书信息的删除与修改---\n");

puts("\t\t\t\t5---返回主菜单");

puts("\n\n\t\t********************************************\n");

printf("请输入选择(1-5):[]\b\b");

scanf("%d",&n);

switch(n)

{

case 1:insert();savefile();break;

case 2:prin();break;

case 3:search();break;

case 4:del();insert();savefile();break;

case 5:return;

}

}while(w==1);

}

6 浏览

浏览的函数名为“void prin()”,浏览选项可以将录入的图书一次显示出来。可被主函数调用浏览的源代码为:

void prin() //浏览图书信息

{

BOO *ptr=NULL;

head=NULL;

readfile();

if(head==NULL)

{

printf("\n\n\t*******NO RECORDS!*******\n");

return;

}

printf("登入号书名作者名分类号出版单位出版时间价格\n");

for(ptr=head;ptr;ptr=ptr->next)

{

printf("%5d%10s%12s%12d%10s%12s%12f\n",ptr->ID,ptr->name,

ptr->authorname,ptr->no,ptr->publisher,ptr->time,ptr->price);

}

system("pause");

}

7 书名的读取

读取保存在”all_book.txt”中的图书信息。

读取的源代码:void readfile()

{

BOO *newBoo=NULL;

char c,fID[15];

FILE *fp;

strcpy(fID,"all_boo.txt");