程序设计实验报告
- 格式:doc
- 大小:127.50 KB
- 文档页数:18
班级: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");