这个C语言程序50分,有没有高手来!!

来源:百度知道 编辑:UC知道 时间:2024/05/22 07:36:52
1、建立一个存放图书的二进制文件"bookf.dat",在该文件中使每个记录包括图书编号、图书名、出版社、作者和价格。

2、浏览文件"bookf.dat"。

3、用键盘输入某本图书的编号,在文件"bookf.dat"中查找该图书的图书名、出版社、作者和价格。

4、在文件"bookf.dat"末尾添加新记录。

5、按给定编号删除相应的记录。
要求:分别编写函数完成上述各项工作;并在main函数中使用菜单选择某项功能。

/*****************************************
版权所有 陈冠钢
*****************************************/

#include<stdio.h>
#include<string.h>

FILE *fp;

/*书的结构体*/
struct book
{
int number; /*书号*/
char name[100]; /*书名*/
char publisher[200];/*出版社*/
char author[20]; /*作者*/
float price; /*价钱*/
};
struct book book1;

/*
openfile(): 功能,打开bookf.dat文件用于读写,若文件不存在则创建一个。
*/
void openfile()
{
if((fp=fopen("bookf.dat","a+"))==NULL)
{
printf("can not open file bookf.dat!");
}
}

/*
查找与number号相同的记录并显示出来。
*/
int findrecord(int number)
{
if(fp!=NULL)
{
rewind(fp);
while(!feof(fp))
{
fscanf(fp,"%d %s %s %s %f\n",&book1.number,book1.name,book1.publisher,book1.author,&book1.price);
if(book1.number==number)
{
printf