亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 圖書管.cpp

?? 本軟件利用VC++樹結構
?? CPP
字號:
//圖書館借書和還書
#include <iostream>
#include <fstream>
#include <string>
#include <utility>		// for pair class
#include "d_stree.h"		// stree class
#include "d_book.h"		// video class
#include "d_util.h"		// for writeSTree()
using namespace std;

//書庫
void setupInventory(stree<book>& inventory);
//根據ISBN還書
void returnTransaction(stree<book>& inventory,
			  stree<book>& rentals, const string& ISBN);
//根據ISBN借書
void rentalTransaction(stree<book>& inventory,
					   stree<book>& rentals, const string& ISBN);
//根據輸入的書名檢索
void search(stree<book>& inventory, const string& name);
//書本入庫(寫到樹中,同時修改books.dat的數據)
void store(stree<book>& inventory);

//**************************main**********************************
int main()
{
	stree<book> inventory, rentals;
	stree<book>::iterator bookter;

	char transactionType;
	string ISBN;
	string name;
	char yesorno=true;

	setupInventory(inventory);
	cout<<left<<setw(15)<<"ISBN"
		<<left<<setw(15)<<"書名"
		<<left<<setw(15)<<"作者"
	    <<left<<setw(15)<<"出版日期"
		<<left<<setw(15)<<"庫存量"<<endl;
	writeSTree(inventory, "\n");
	cout << endl;
	do
	{
		cout << "Transactions: Enter type (A:借書,B: 還書,C:檢索 ,D:存儲)" << endl;
		cout << "followed by ISBN or space if done" << endl << endl;
		cout << "Transaction: ";
		cin>>transactionType;
		switch(transactionType)
		{
		case 'A':
			cout<<"請輸入ISBN號: ";
			cin>>ISBN;
			rentalTransaction(inventory, rentals, ISBN);break;
		case 'B':
			cout<<"請輸入ISBN號: ";
			cin>>ISBN;
			returnTransaction(inventory, rentals, ISBN);break;
		case 'C':
			cout<<"請輸入您所查詢的書名: ";
			cin>>name;
			search(inventory,name);break;
		case 'D':
			store(inventory);break;
		}
		/*cout<<"圖書管的收藏情況:"<<endl;
		cout<<left<<setw(15)<<"ISBN"
		<<left<<setw(15)<<"書名"
		<<left<<setw(15)<<"作者"
	    <<left<<setw(15)<<"出版日期"
		<<left<<setw(15)<<"庫存量"<<endl;
	writeSTree(inventory, "\n");*/
		cout<<"**************************************************************"<<endl;
		cout<<"是否繼續:是(Y),否(N)"<<endl;
		cin>>yesorno;
	}while(yesorno!='N');
	cout << endl;
	return 0;
}
//*************************建立書庫************************************
void setupInventory(stree<book>& inventory)
{
	ifstream bookFile;	// input stream
	string author;
    string name;
    string ISBN;
    string pudate;	
	string fenge=" ";
	// use with stree insert()
	pair<stree<book>::iterator, bool> p;

	// open the file "films.dat"
	bookFile.open("books.dat");
	if (!bookFile)
	{
		cerr << "File 'books.dat' not found!" << endl;
		exit(1);
	}//end for if

	// read lines until EOF; insert names in inventory list
	while(true)
	{   
		getline(bookFile,author,'\n');
		getline(bookFile,name,'\n');
		getline(bookFile,ISBN,'\n');
		getline(bookFile,pudate,'\n');
		if (!bookFile)
			break;
		p = inventory.insert(book(author,name,ISBN,pudate));
		if (p.second == false)//如果有相同了,就加1
			(*(p.first)).updateCopies(1);
	}//end for while
}

//*****************************************還書操縱***********************************
void returnTransaction(stree<book>& inventory,stree<book>& rentals, const string& ISBN)
{
	stree<book>::iterator bookIter,con;
	string author;
    string name;
    string pudate;
	
	for(con=rentals.begin();con!=rentals.end();con++)
	{   
		if((*con).getISBN()==ISBN)
		{   
			//如果借出去的樹中只有一本書時,直接將它刪除,否則減1
			if ((*con).getCopies() == 1)
			{
	    	rentals.erase(con);
			}//end for if
        	else
	    	(*con).updateCopies(-1);
			break;
		}//end for if
	}//end for for 	
    stree<book>::iterator coniter;
	for(coniter=inventory.begin();coniter!=inventory.end();coniter++)
		if((*coniter).getISBN()==ISBN)  
        	(*coniter).updateCopies(1);
		cout<<"還書成功!"<<endl;
}
//*********************************借書操縱********************************
void rentalTransaction(stree<book>& inventory, stree<book>& rentals, const string& ISBN)
{
	stree<book>::iterator bookIter,con;
	pair<stree<book>::iterator,bool> pObj;
	string name;
	string author;
	string pudate;
	string findBookName;

     for(bookIter=inventory.begin();bookIter!=inventory.end();bookIter++)
	 {      
		 if((*bookIter).getISBN()==ISBN)
			{    
				findBookName=(*bookIter).getName();
				if((*bookIter).getCopies() == 0)
			      cout <<(*bookIter).getName()<< "都已經借完"<< endl;  
				else 
				{       (*bookIter).updateCopies(-1);
				        author=(*bookIter).getAuthor();
					    name=(*bookIter).getName();
						pudate=(*bookIter).getPudate();
						pObj =rentals.insert(book(author,name,ISBN,pudate));
						if (pObj.second == false)
							(*(pObj.first)).updateCopies(1);
						cout<<"借書成功!"
							<<"\n書名:"<<name
							<<"   ISBN:"<<ISBN
							<<"   作者:"<<author<<endl;
							
				}//end for else
			     break;
			}//end for if	
	 }//end for for
	    if(bookIter==inventory.end())
	      cout<<"對不起!您找的"<<findBookName<<"本書庫還沒有"<<endl;
}

//******************************search*********************************
void search(stree<book>& inventory, const string& name)
{
	stree<book>::iterator con;
	int copies;
	bool isexit=false;
		
	for(con=inventory.begin();con!=inventory.end();con++)
	{   
		if(name==(*con).getName())
		{   
			isexit=true;
			break;
		}//end for if
	}
	if(isexit)
	{
		copies=(*con).getCopies();
		cout<<"您所查詢的書"<<name<<"目前還存:"<<copies<<endl;
	}
	else
		cout<<"對不起!目前圖書管沒有你所找的書"<<endl;
}
		
//**********************************store*****************************
void store(stree<book>& inventory)
{
	string ISBN ;
	string name;
	string author;
	string pudate;
	int copies;
	stree<book>::iterator con;
	bool isexit=false;
	pair<stree<book>::iterator,bool> pObj;

	cout<<"請輸入ISBN:";
    cin>>ISBN;
	for(con=inventory.begin();con!=inventory.end();con++)
	{
		//如果要輸入的書已存在于圖書館,則只需要輸入數量即可
		if(ISBN==(*con).getISBN())
		{		
			isexit=true;
			break;
		}
	}
	if(isexit)
	{
		cout<<"請輸入該書的數量:";
		cin>>copies;
		name=(*con).getName();
		author=(*con).getAuthor();
		pudate=(*con).getPudate();
		for(int i=1;i<=copies;i++)
		{
		pObj =inventory.insert(book(author,name,ISBN,pudate));
	    	if (pObj.second == false)
		    	(*(pObj.first)).updateCopies(1);	
		}
		
	}
	else
	{
	//如果要存入的書目前圖書館還未收藏,則需要輸入全部的信息
		cout<<"該書為新書,請輸入該書的全部信息:"<<endl;
		cout<<"書名:";
		cin>>name;
		cout<<"作者:";
		cin>>author;
		cout<<"出版日期";
		cin>>pudate;
		cout<<"數量:";
		cin>>copies;
		for(int i=1;i<=copies;i++)
		{
		pObj =inventory.insert(book(author,name,ISBN,pudate));
	    	if (pObj.second == false)
		    	(*(pObj.first)).updateCopies(1);	
		}
	   //inventory.insert(book(author,name,ISBN,pudate,copies));
	  }

	//插入到樹的同時把書的信息寫入到books.dat的文件中
	fstream file1;
	file1.open("books.dat",ios::out|ios::app);
	if(!file1)
	{
		cout<<"文件不存在!"<<endl;
	}else
	{
    	for(int i=1;i<=copies;i++)
		{
		file1<<author<<"\n";
		file1<<name<<"\n";
		file1<<ISBN<<"\n";
		file1<<pudate<<"\n";
		}
	}
	file1.close();

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费久久精品视频| 国产在线精品一区二区不卡了| 亚洲伊人色欲综合网| 天天综合网 天天综合色| 美女免费视频一区| 成人免费毛片a| 欧美美女直播网站| 久久久久国产精品麻豆ai换脸| 日韩美女精品在线| 日本在线不卡视频一二三区| 粉嫩久久99精品久久久久久夜| 在线免费精品视频| 久久综合九色综合久久久精品综合| 中文字幕在线不卡一区| 日韩国产一二三区| 成人精品视频一区二区三区| 欧美色精品天天在线观看视频| 久久久噜噜噜久久中文字幕色伊伊| 亚洲欧洲三级电影| 日韩av不卡在线观看| 国产九色sp调教91| 91成人国产精品| 国产欧美一区二区精品性色超碰 | 成人精品免费网站| 欧美中文字幕一区| 日本一区二区三级电影在线观看| 国产激情精品久久久第一区二区| 久久精品免费观看| 色偷偷久久一区二区三区| 91精品国产欧美一区二区18| 亚洲欧美精品午睡沙发| 国产精品夜夜嗨| 日韩欧美亚洲国产另类| 亚洲国产精品一区二区久久 | 91丨九色丨蝌蚪丨老版| 精品国产成人在线影院| 婷婷中文字幕综合| 在线视频你懂得一区| 中文字幕二三区不卡| 国产乱人伦偷精品视频不卡| 日韩欧美二区三区| 午夜久久久久久| 91免费视频大全| 欧美成人一区二区三区在线观看 | 国产精品毛片a∨一区二区三区| 日韩黄色免费电影| 91麻豆国产香蕉久久精品| 亚洲国产成人在线| 成人一区二区三区视频在线观看 | 亚洲成a人片在线观看中文| av动漫一区二区| 午夜精品一区二区三区免费视频| 99久久777色| 国产精品久久毛片| bt欧美亚洲午夜电影天堂| 欧美国产视频在线| 成人毛片视频在线观看| 日本一区二区动态图| 精品一区二区在线视频| 久久免费看少妇高潮| 国产剧情一区二区| 国产精品国产自产拍高清av| av影院午夜一区| 亚洲精选在线视频| 欧美日韩成人一区二区| 日韩av二区在线播放| 欧美大片免费久久精品三p| 美国一区二区三区在线播放| 欧美mv日韩mv国产网站app| 精品一二线国产| 久久精品人人做| 99精品欧美一区二区三区综合在线| 亚洲欧美日韩综合aⅴ视频| 欧美伊人精品成人久久综合97| 天堂蜜桃91精品| 2023国产精品视频| 成人高清免费观看| 国产欧美一区二区精品性| 国产aⅴ精品一区二区三区色成熟| 中文字幕一区在线观看| 欧美精品一级二级| 国产一区二区三区最好精华液| 国产精品情趣视频| 日本高清不卡aⅴ免费网站| 欧美aaa在线| 国产精品久久久久天堂| 欧美日韩精品电影| 国产伦理精品不卡| 亚洲男人的天堂一区二区| 欧美一级在线视频| 波多野结衣亚洲一区| 日韩电影免费一区| 国产精品久久久久久户外露出 | 欧美一区二区国产| 成人午夜电影网站| 天堂影院一区二区| 自拍偷拍亚洲激情| 欧美一级欧美三级| 色综合久久综合| 精彩视频一区二区| 亚洲欧美日韩小说| 欧美zozozo| 在线观看亚洲a| 成人毛片老司机大片| 日韩和欧美的一区| 最新日韩av在线| 久久免费电影网| 欧美精品久久99久久在免费线 | 天天综合日日夜夜精品| 中文字幕欧美一区| 2020国产精品久久精品美国| 欧美日高清视频| 91免费版在线| 国产69精品久久久久毛片| 日产欧产美韩系列久久99| 一区二区三区中文字幕电影 | 色综合激情久久| 日韩不卡一二三区| 亚洲三级免费电影| 亚洲123区在线观看| 亚洲欧美日本韩国| 成人免费在线视频| 亚洲天堂精品视频| 亚洲欧美自拍偷拍色图| 3d成人h动漫网站入口| 欧美日韩高清一区二区| 日本大香伊一区二区三区| 国产成人免费视| 国产福利一区二区三区视频| 同产精品九九九| 亚洲韩国一区二区三区| 一区二区三区**美女毛片| 亚洲视频香蕉人妖| 亚洲欧美aⅴ...| 亚洲同性gay激情无套| 亚洲色图制服丝袜| 亚洲猫色日本管| 亚洲日本在线a| 一区二区三区在线视频免费 | 日韩美女天天操| 日韩一区二区三区视频| 91精品国产综合久久福利软件| 色婷婷国产精品综合在线观看| 91高清视频在线| 91麻豆免费在线观看| 成人免费看的视频| 国产一区二区三区电影在线观看 | 石原莉奈一区二区三区在线观看| 亚洲欧美一区二区视频| 欧美一区二区三区视频免费 | 99久久er热在这里只有精品15| av一区二区三区黑人| 91麻豆国产精品久久| 欧美伊人久久久久久久久影院| 欧美日韩成人在线| 精品国产乱码久久久久久夜甘婷婷 | 色综合天天天天做夜夜夜夜做| 欧美一区二区三区在线观看| 综合久久给合久久狠狠狠97色| 精品一区二区三区不卡| 欧美日韩视频在线第一区| 国产精品久久综合| 国产精品一区不卡| 日韩一级高清毛片| 国产欧美一区二区三区在线看蜜臀| 亚洲成人一区二区| 欧美少妇一区二区| 亚洲图片有声小说| 欧美性大战久久久| 性做久久久久久免费观看欧美| 在线免费视频一区二区| 亚洲综合色在线| 欧美性猛交xxxx乱大交退制版| 一区二区三区高清| 欧美日韩成人综合天天影院 | 久久久精品黄色| 国产成人免费在线观看| 国产精品嫩草影院av蜜臀| 成人91在线观看| 一区二区三区高清在线| 欧美蜜桃一区二区三区| 天天影视色香欲综合网老头| 日韩一区二区三区观看| 精品一区二区影视| 国产人成亚洲第一网站在线播放| 国产激情一区二区三区桃花岛亚洲| 国产三级欧美三级日产三级99| 成人国产精品免费观看动漫| 17c精品麻豆一区二区免费| 91色九色蝌蚪| 婷婷六月综合网| 日韩欧美久久久| 国产麻豆视频精品| 亚洲三级小视频| 欧美精品1区2区| 老司机精品视频线观看86| 久久精品在线观看| 色综合天天视频在线观看| 无码av免费一区二区三区试看| 精品日韩在线一区|