图书管理系统 查询图书部分
大学计算机基础 陈建勋 000001 高等教育出版 2005年6月6日 30 语言大学 黄远林 000002 电子工业出版 2004年3月6日 25
计算机网络技术 宋文官 000003 中国铁道出版 2010年6月6日 28
数据库系统概述 萨师煊 000004 高等教育出版 2001年7月8日 40
计算机组成原理 白中英 000005 科学出版社 2008年6月1日 25
数据结构 刘大友 000006 清华大学出版 2009年1月6日 30
这是文本、
#include<stdio.h>
#include<cstdlib>
#include<stdlib.h>
#include<string.h>
struct book
{
char name[20]; //书名
char writer[10]; //作者
char num[8]; //书号
char press[10]; //出版社
char outtime[10]; //出版日期
char price[3]; //图书价格
}book[50];
void main()
{
void query();
void B_name();
void Writer();
void Number();
void Press();
query();
}
void query() //查询书籍
{
int lookup;
printf("@#$%@$#%@#$%@#$%&*@#$%&*@#$%&*@#$%&*@#$%&*@#$%@&\n");
printf("#####1.按书名查找。******* 2.按作者查找。 ######\n");
printf("#####3.按书号查找。******* 4.按出版社查找。######\n");
printf("#####5.退出查询功能。 ######\n");
printf("@#@$%&*@#%*@#%&*@#%^%*@#%!%@@^#@#^!%!@#$%$^&^!%@\n");
printf("please choice!!!: "); //选择按什么方式查找书籍
scanf("%d",&lookup);
while(lookup>5||lookup<1)
{
printf("input error!!!请重新输入!!!: \n");
scanf("%d",&lookup);
}
switch(lookup)
{
case 1:B_name();
break;
case 2:Writer();
break;
case 3:Number();
break;
case 4:Press();
break;
case 5: //返回主菜单
break;
}
}
void B_name() //按书名查找
{
int i,k;
char b_name[10];
FILE*fp;
fp=fopen("text.txt","rb");
k=0;
printf("please input the book name: ");
scanf("%s",&b_name);
for(i=0;((fp=fopen("text.txt","rb"))==NULL);i++)
{
fread(&book[i],sizeof(struct book),1,fp);
if(strcmp(book[i].name,b_name)==0)
{
printf("书名:%s 作者:%s 书号:%d 出版社:%s 出版日期:%s 单价:%s\n",book[i].name,book[i].writer,book[i].num,book[i].press,book[i].outtime,book[i].price);
k++;
}
}
if(k==0)
printf("没有此书!!!请重新输入!!!");
fclose(fp);
query(); //返回选择菜单
system("pause");
}
void Writer() //按作者查找
{
int i,k;
char writer[10];
FILE*fp;
fp=fopen("text.txt","rb");
printf("please input the writer: ");
scanf("%s",&writer);
for(i=0;((fp=fopen("text.txt","rb"))==NULL);i++)
{
fread(&book[i],sizeof(struct book),1,fp);
if(strcmp(book[i].writer,writer)==0)
{
printf("书名:%s 作者:%s 书号:%s 出版社:%s 出版日期:%s 单价:%s\n",book[i].name,book[i].writer,book[i].num,book[i].press,book[i].outtime,book[i].price);
k++;
}
}
if(k==0)
printf("没有此书!!!请重新输入!!!");
fclose(fp);
query(); //返回选择菜单
system("pause");
}
void Number() //按书号查找
{
int i,k;
char num[6];
FILE*fp;
fp=fopen("text.txt","rb");
printf("please input the book num: ");
scanf("%s",&num);
for(i=0;((fp=fopen("text.txt","rb"))==NULL);i++)
{
fread(&book[i],sizeof(struct book),1,fp);
if(strcmp(book[i].num,num)==0)
{
printf("书名:%s 作者:%s 书号:%s 出版社:%s 出版日期:%s 单价:%s\n",book[i].name,book[i].writer,book[i].num,book[i].press,book[i].outtime,book[i].price);
k++;
}
}
if(k==0)
printf("没有此书!!!请重新输入!!!");
fclose(fp);
query(); //返回选择菜单
system("pause");
}
void Press() //按出版社查找
{
int i,k;
char press[10];
FILE*fp;
fp=fopen("text.txt","rb");
printf("please input the press: ");
scanf("%s",&press);
for(i=0;((fp=fopen("text.txt","rb"))==NULL);i++)
{
fread(&book[i],sizeof(struct book),1,fp);
if(strcmp(book[i].press,press)==0)
{
printf("书名:%s 作者:%s 书号:%s 出版社:%s 出版日期:%s 单价:%s\n",book[i].name,book[i].writer,book[i].num,book[i].press,book[i].outtime,book[i].price);
k++;
}
}
if(k==0)
printf("没有此书!!!请重新输入!!!");
fclose(fp);
query(); //返回选择菜单
system("pause");
}