?? wangtao.cpp
字號:
char choice='y';
fp=fopen("D:\\計035.txt","r");
printf("\n請輸入書本的種類:");
scanf("%s",form1);
fflush(stdin);
do
{
for(i=0;fread(&books[i],sizeof(struct bookstype),1,fp)!=0;i++)
{
if(form1==books[i].form)
{
printf("\n找到要查詢的書,具體資料如下:\n");
printf("編號:%2d\n",books[i].number);
printf("日期:%d.%d.%d",books[i].date.year,books[i].date.month,books[i].date.day);
printf("書名:%s\n",books[i].name);
printf("作者名:%s\n",books[i].writer);
printf("類型:%s\n",books[i].form);
printf("租借情況:%s\n",books[i].lend);
flag=1;
}
}
if(flag==0)
{
printf("\n沒有找到種類為%s的書!",form1);
}
fflush(stdin);
printf("是否要繼續(xù)查找Y/N:");
scanf("%c",&choice);
}while(choice=='Y'||choice=='y');
fclose(fp);
}
/*以下為排序部分*/
void ordernumber()
{
FILE *fp;
struct bookstype temp;
int i,j;
fp=fopen("D:\\計035.txt","r");
/*運用"直接插入排序"的方法進行排序*/
for(i=0;fread(&books[i],sizeof(struct bookstype),1,fp)!=0;i++)
{
temp=books[i+1];
j=i;
while(j>-1&&temp.number<books[j].number)
{
books[j+1]=books[j];
j--;
}
books[j+1]=temp;
}
fflush(stdin);
output();
/*調用輸出函數(shù),顯示排序結果*/
fclose(fp);
}
void orderform()
{
FILE *fp;
struct bookstype temp;
int i,j;
fp=fopen("D:\\計035.txt","r");
for(i=0;fread(&books[i],sizeof(struct bookstype),1,fp)!=0;i++)
{
temp=books[i+1];
j=i;
while(j>-1&&temp.form<books[j].form)
{
books[j+1]=books[j];
j--;
}
books[j+1]=temp;
}
fflush(stdin);
output();
/*調用輸出函數(shù),顯示排序結果*/
fclose(fp);
}
/*刪除函數(shù)*/
void delenumber()
{
FILE *fp,*fp2;
int i;
int booknumber;
char choice;
fp=fopen("D:\\計035.txt","r");
fp2=fopen("E:\\計031.txt","w");
printf("請輸入你要刪除的書名\n");
printf("如果你輸入的書名存在,系統(tǒng)自動刪除該信息!如果不存在,系統(tǒng)不做任何改動\n");
scanf("%d",&booknumber);
for(i=0;fread(&books[i],sizeof(struct bookstype),1,fp)!=0;i++)
{
if(booknumber==books[i].number)
{
fwrite(&books[i],sizeof(struct bookstype),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要刪除該書籍?刪除后該書籍的所有信息將無法恢復Y/N\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("D:計035.txt","w");
fp2=fopen("D:計035.txt","r");
for(i=0;fread(&books[i],sizeof(struct bookstype),1,fp2)!=0;i++)
{
fwrite(&books[i],sizeof(struct bookstype),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("D:計035.txt","w");
fclose(fp2);
printf("按任意鍵返回\n");
getch();
return;
}
else
{
printf("按任意鍵返回\n");
getch();
return;
}
}
void delename()
{
FILE *fp,*fp2;
int i;
char bookname[10],choice;
fp=fopen("D:\\計035.txt","r");
fp2=fopen("D:\\計035.txt","w");
printf("請輸入你要刪除的書名\n");
printf("如果你輸入的書名存在,系統(tǒng)自動刪除該信息!如果不存在,系統(tǒng)不做任何改動\n");
scanf("%s",bookname);
for(i=0;fread(&books[i],sizeof(struct bookstype),1,fp)!=0;i++)
{
if(strcmp(bookname,books[i].name)!=0)
{
fwrite(&books[i],sizeof(struct bookstype),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要刪除該書籍?刪除后該書籍的所有信息將無法恢復Y/N\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("D:\\計035.txt","w");
fp2=fopen("D:\\計035.txt","r");
for(i=0;fread(&books[i],sizeof(struct bookstype),1,fp2)!=0;i++)
{
fwrite(&books[i],sizeof(struct bookstype),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("D:\\計035.txt","w");
fclose(fp2);
printf("按任意鍵返回\n");
getch();
return;
}
else
{
printf("按任意鍵返回\n");
getch();
return;
}
}
void main()
{
char ch1,ch2;
printf("** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **\n");
printf("** * * **\n");
printf("** * 歡迎訪問圖書館管理系統(tǒng) * **\n");
printf("** * * **\n");
printf("**——————————————————————————**\n");
printf("**——————————————————————————**\n");
printf("**——————————————————————————**\n");
printf("** || 學校:廣西工學院 || **\n");
printf("** || 系別:計算機工程系 || **\n");
printf("** || 班別:計算機035 || **\n");
printf("** || 學號: 2003041222 || **\n");
printf("** || 姓名:王濤 || **\n");
printf("** || 地址:南區(qū)6#702 || **\n");
printf("** || 電話:2684876 || **\n");
printf("** || || **\n");
printf("** || —————————————— || **\n");
printf("** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **\n");
printf("首先你要輸入正確口令,方可進入!");
path();
do
{
printf("\n");
printf("請選擇操作類型:\n");
printf("1 圖書管理模塊\n");
printf("2 圖書借閱模塊\n");
scanf("%s",&ch1);
switch(ch1)
{
case'1':
{
printf("\n歡迎訪問管理模塊!\n");
printf("1 輸入輸出與保存\n");
printf("2 查詢\n");
printf("3 排序\n");
printf("4 刪除\n");
printf("0 退出\n");
printf("請輸入0-4:\n");
scanf("%s",&ch1);
switch(ch1)
{
case'1':
{
printf("\2歡迎訪問輸入輸出與保存模塊!\n");
printf("1 輸入書籍\n");
printf("2 保存\n");
printf("3 輸出書籍\n");
printf("請輸入1-3:");
scanf("%s",&ch2);
switch(ch2)
{
case'1':
input();
break;
case'2':
save();
break;
case'3':
output();
break;
default:
printf("無此操作!\n");
getch();
break;
}
break;
}
case'2':
{
printf("\n 歡迎進入書籍查詢系統(tǒng)! \n");
printf("1: 按書號查詢 \n");
printf("2: 按日期查詢 \n");
printf("3: 按書名查詢 \n");
printf("4: 按作者名查詢 \n");
printf("5: 按書的類型查詢 \n");
printf(" 請輸入1-5 \n");
scanf("%s",&ch2);
switch(ch2)
{
case'1':
seeknumber();
break;
case'2':
seekdate();
break;
case'3':
seekname();
break;
case'4':
seekwriter();
break;
case'5':
seekform();
break;
default:
printf("無此操作!\n");
break;
}
break;
}
case'3':
{
printf("\2歡迎進入書籍的排序系統(tǒng)!\n");
printf("1 按書號排序\n");
printf("2 按日期排序\n");
printf("3 按類型排序\n");
printf("請輸入1-3:\n");
scanf("%s",&ch2);
switch(ch2)
{
case'1':
ordernumber();
break;
case'2':
/* orderdate();*/
break;
case'3':
orderform();
break;
default:
printf("無此操作!\n");
}
break;
}
case'4':
{
printf("\n歡迎進入書籍的刪除系統(tǒng)!\n");
printf("1: 按書號刪除\n");
printf("2: 按書名刪除\n");
printf("請輸入1-2:\n");
scanf("%s",&ch2);
if(ch2=='1')
delenumber();
else
delename();
break;
}
case'0':
exit(0);
default:
printf("無此操作!\n");
}
}
case'2':
{
printf("歡迎訪問書籍借閱模塊:\n");
printf("1借閱書籍\n");
printf("2歸還書籍\n");
printf("請輸入1-2:\n");
scanf("%s",&ch2);
if(ch2=='1')
book_borrowed();
else
returnbooks();
}
}while(1);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -