1. 题目:图书信息管理系统设计
图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:
● 图书信息录入功能(图书信息用文件保存)
● 图书信息浏览功能
● 查询或排序功能:(至少一种查询方式)
按书名查询
按作者名查询
图书信息的删除与修改
#include<stdio.h> /* 输入输出函数 */
#include<stdlib.h> /* 动态存储分配 字符转换函数 */
#include<string.h> /* 字符串函数 */
#define N 3
Int OK=N;
struct books /* 图书信息结构体*/
{
long num; /*登录号*/
char bname[20]; /*书名*/
char writer[15]; /*作者*/
char sort[20]; /*分类号*/
char publisher[10]; /*出版单位*/
long time[10]; /*出版时间*/
float price; /* 价格*/
};
void load(struct books inform[],FILE *fp)//定义一个输入函数,完成信息录入功能
//FILE *fp为文件指针,指向FILE类型
{if(fp=fopen("","w"))==NULL //以写方式大家,并使指针指向它
printf("文件打开错误");
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格 \n");
fprintf(fp,"登录号 书名 作者名 分类号 出版单位 出版时间 价格 \n");
fprintf作用for(int i=0;i<N;i++)
{
scanf("%ld %s %s %s %s %ld %f",&inform[i].num,inform[i].bname,inform[i].writer,inform[i].sort,inform[i].publisher,&inform[i].time,&inform[i].price);
fprintf(fp,"%-6ld %-8s %-8s %-8s %-8s %-6ld %-8f\n",inform[i].num,inform[i].bname,inform[i].writer,inform[i].sort,inform[i].publisher,inform[i].time,inform[i].price);
//在文件fp中存入N本书
}
fclose(fp);
}
void look(struct books inform[])//定义一个输出函数,完成信息的浏览功能
{
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格 \n");
for(int i=0;i<N;i++)
{
printf("%ld %s %s %s %s %ld %f\n",inform[i].num,inform[i].bname,inform[i].writer,inform[i].sort,inform[i].publisher,inform[i].time,inform[i].price);
}
}
void search1(struct books system[])//定义一个查询函数
{
int i; int n;//以n表示书名为p的书本书
char p[20];//p代表要查书名
printf("请输入要查的书名:");
scanf("%s",&p);
for(i=0;i<N;i++)
if(strcmp(inform[i].name,p)==0)//判断两字符串是否相等
{
printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格 \n")
printf("%ld %s %s %s %s %ld %f\n",inform[i].num,inform[i].bname,inform[i].writer,inform[i].sort,inform[i].publisher,inform[i].time,inform[i].price);
n++;
}
if(n==0) printf("输入的书不存在");
}
void search2(struct books inform[])//完成对作者名的查询
{
}
void main()
{int pushbutton;
struct books inform[N];
FILE *fp;
fp=fopen("","web+");
do
{
printf("**********MENU***********\n");
printf("0输入图书信息\n");
printf("1浏览图书信息\n");
printf("2按书名查询\n");
printf("3按作者名查询\n");
printf("4按图书价格降序排序\n");
printf("5按书名删除信息\n");
printf("6修改图书价格\n");
printf("7退出\n");
printf("请输入0~7按钮选择操作项:");
scanf(%d,&pushbutton);
switch(pushbutton)
{ case0:load(inform,fp);break;
Case1:look(inform);break;
Case2:search1(inform);break;
Case3:search2(inform);break;
Case4:order(inform,fp);break;
Case5:cancel(inform,fp);break;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论