學生宿舍管理系統

2022-07-15 16:24:10 字數 2957 閱讀 6902

運用了結構體,檔案指標。其實寫起來不算難,主要是檔案的指標很少用到,所以花了很長時間不斷的除錯。最終的程式還是有一點bug的,比如雙人互換宿舍必須在單人調換宿舍前面使用,不然後面的讀取資料會出錯,還有互換宿舍時a同學的記錄必須在b同學的前面,否則會出錯。這都是檔案指標的問題,還有待改善。儘管花了很長時間,老師並不認可這樣的作業,因為沒有視覺化介面,他說,乙個程式設計師必須考慮使用者使用的感受,所以只要是沒有視覺化介面的,無論你寫的多麼好,都不會得到好的分數。

#include#include

#include

typedef

struct

student;

typedef

struct

dormitory;

char filename[20

];file *fp; //

學生資訊檔案指標

file *_fp; //

宿舍資訊檔案指標

void

create()

}else

printf(

"檔案已存在!\n");

fclose(fp);

fclose(_fp);

}void

open()

}void

insert_dorm()

fclose(_fp);

fclose(fp);

}void

insert_stu()

locate=ftell(_fp); }

if(flag==0

) fwrite(s,

sizeof(student),1

,fp);

rewind(_fp);

scanf("%s

",s->id);

} fclose(_fp);

fclose(fp);

}void

dormnumsearch() }

if(flag) }

if(tag==0

) printf(

"\n該宿舍沒有學生入住!\n");

}else

printf(

"不存在該宿舍記錄!!\n");

fclose(_fp);

fclose(fp);

}void

change()

locate_c=ftell(_fp);

} }break; }

locate_b=ftell(_fp); }

if(tag==0)

break; }

locate=ftell(fp); }

if(flag==0

) printf(

"\n不存在該學生!\n");

fclose(_fp);

fclose(fp);

}void

namesearch() }

if(tag==0

) printf(

"\n沒有室友!\n");

tag=0;

while(fread(d,sizeof(dormitory),1

,_fp)) }

//break;}

//同名情況

if(flag)

fseek(fp,locate,seek_set);}

if(flag==0

) printf(

"\n沒有符合條件的學生的記錄!\n");

fclose(_fp);

fclose(fp);

}void

check_out()

locate=ftell(fp);

} locate_b=ftell(_fp);

while(fread(d,sizeof(dormitory),1

,_fp))

locate_b=ftell(_fp);

} fclose(_fp);

fclose(fp);

}void

numsearch()

} strcpy(dor_num,s->dormitory); if

(flag) }

if(tag==0

) printf(

"\n沒有室友!\n");

while(fread(d,sizeof(dormitory),1

,_fp))

} }else

printf(

"\n沒有該學生的記錄!\n");

fclose(_fp);

fclose(fp);

}void

exchange()

locate_a=ftell(fp);

} rewind(fp);

locate_b=ftell(fp);

while(fread(_s,sizeof(student),1

,fp))

locate_b=ftell(fp); }

if(flag==0 || tag==0

)else

printf(

"更換宿舍後:\n");

rewind(fp);

locate_a=ftell(fp);

while(fread(s,sizeof(student),1

,fp))

locate_a=ftell(fp);

}locate_b=ftell(fp);

while(fread(_s,sizeof(student),1

,fp))

locate_b=ftell(fp);

}fclose(_fp);

fclose(fp);

}void

display()

locate=ftell(fp);

} fclose(_fp);

fclose(fp);

}int

main()

}

return0;

}

學生宿舍管理系統

幫同學做的課程設計,內容比較簡單,功能為錄入學生的姓名 學號 宿舍號以及是否違規,可以用學號 宿舍號來查詢,並且統計乙個宿舍違規總次數。include include include include include using namespace std define n 4 int mulu cl...

學生宿舍管理系統

四 專案演示 1 登入之後的介面 2 新增使用者 三 分配宿舍 四 宿舍保修 現如今是飛速發展的資訊時代。在各行各業中離不開資訊處理,這正是計算機被廣泛應用於資訊管理系統的環境。計算機的最大好處在於利用它能夠進行資訊管理。使用計算機進行資訊控制,不僅提高了工作效率,而且大大的提高了其安全性。學生宿舍...

學生宿舍管理系統 完成總結

題目 學生宿舍管理系統 考查點 線性結構 檔案操作 注意 必須使用檔案儲存資料,不得使用資料庫管理系統。任務 通過此系統可以實現如下功能 錄入 可以錄入宿舍情況,包括宿舍號 可容納學生數 已容納學生數 男生 女生宿舍等資訊 可以錄入學生住宿情況,包括學號 姓名 性別 宿舍號等資訊。其他資訊可以自行設...