1. 程式人生 > >c語言:圖書館管理系統(含續借,清欠款操作)

c語言:圖書館管理系統(含續借,清欠款操作)

/*****************************************
 **            圖書館管理系統            **
 **            登入介面:                **
 **	       1.學生登入                **
 **	       2.管理員登入              **
 **	       3.註冊新使用者              **
 **	       4.退出                   **
 **            管理員登入:              **
 **	       1.新增書籍                **
 **	       2.刪除書籍                **
 **	       3.書籍資訊更改            **
 **	       4.查詢書籍                **
 **	       5.檢視已註冊使用者列表       **
 **            6.還欠款操作              **
 **	       7.返回登入介面            **
 **	       普通使用者登入:            **
 **            1.檢視已借書籍            **
 **	       2.借閱書籍                **
 **	       3.歸還書籍                **
 **            4.檢視所有書籍            **
 **            5.續借                   **
 **            6.返回登入介面            **
******************************************/
/**************** main函式 ****************/
void main(){
	char a;
	book Lb;
	stu Ls,s;
	man Lm,m;
	Lb = Init_Book(Lb);
	Ls = Stu_Table(Ls);  //初始化學生連結串列
	Lm = Man_Table(Lm);  //初始化管理員連結串列
	Select_Options();
	scanf("%c",&a);   //使用char型別,這樣輸入字母不會死迴圈
	while(a != '4'){
		switch(a){
			//學生登入
			case '1':s = Stu_Login(Ls);
				if(s == NULL){
					printf("使用者名稱或密碼錯誤!╮( ̄▽ ̄)╭\n");
					printf("是否註冊新使用者?(1.是   2.否)\n");
					int z;
					while(true){
						scanf("%d",&z);
						if(z == 1) {
							Ls = Guidein(Ls);
							break;
						}
						if(z == 2) break;
						else printf("您的輸入有誤,請重新輸入!\n");
					}
				}else{
					Stu_Menu(Lb,Ls,s);
				}
			break;
			//管理員登入
			case '2':m = Man_Login(Lm);
				if(m == NULL){
					printf("帳號或密碼錯誤!╮( ̄▽ ̄)╭\n\n");
				}else{
					Man_Menu(Lb,m,Ls);
				}
				break;
			//註冊新使用者
			case '3':Ls = Guidein(Ls);break;
			case 10:break;
			default:printf("input error!\n");
		}
		if(a == 10) scanf("%c",&a);  //如果是回車,就繼續錄入,不顯示選單
		else{
			Select_Options();
			scanf("%c",&a);
		}
	}
}

上面只貼上了部分程式碼,執行結果如下:

1.登入介面顯示

2.學生登入

a.因為沒有註冊,所以出現登入失敗的情況:

不慌,選擇註冊:

輸入姓名、回車

輸入學號,也就是待會兒要使用的使用者名稱(這裡用的是111)

輸入密碼(這裡也設定為111)

確認密碼(如果兩次輸入不一致會報錯並讓你重新輸入密碼,下面有演示)

b.這個時候就可以登入啦

c.檢視所有書籍(檢視書籍列表,這裡預設初始化有3本)

d.借閱書籍(這裡借閱3本)

e.檢視已借書籍(為方便測試,我預設設定的是超時1秒罰款0.5元

f.這裡再次檢視所有書籍

g.歸還書籍(如果尚未超期則歸還成功,如果超期狀態無法自助歸還)

h.超期狀態無法借閱書籍

i.續借(如果無欠款續借成功,這裡看有欠款的)

3.管理員登入(管理員已設定好,直接登入)

a.檢視已註冊使用者列表

b.檢視所有書籍

c.新增書籍

d.刪除書籍(書籍尚未被借閱)

e.修改書籍資訊(書籍尚未被借閱)

f.如果書籍已經被借閱,則無法刪除或修改書籍

g.清欠款操作