網(wǎng)站首頁 編程語言 正文
本文實例為大家分享了C語言實現(xiàn)學(xué)生宿舍信息管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
功能描述
該學(xué)生宿舍信息管理系統(tǒng)主要實現(xiàn)的功能有:創(chuàng)建學(xué)生宿舍信息,顯示學(xué)生宿舍信息,查詢學(xué)生宿舍信息,修改學(xué)生宿舍信息,刪除學(xué)生宿舍信息,保存學(xué)生宿舍信息,讀取學(xué)生宿舍信息。其系統(tǒng)功能模塊圖如下:
完整代碼如下:
#include#include #include #include #include ? #define MAX 1000 int k=0; ? //結(jié)構(gòu)體類型 typedef struct ? { ? ?? ? ? ? char name[20]; ? ?//姓名 ? ? char sex[5]; ? ? ?//性別 ?? ? ? char classs[20]; ?//班級 ?? ?int number; ? ? ? //學(xué)號 ?? ?int age; ? ? ? ? ?//年齡 ? ? int dorm; ? ? ? ? //宿舍號 ?? ?int year; ? ? ? ? //年份 ?? ?int month; ? ? ? ?//月份 }students; ? ? ? //創(chuàng)建學(xué)生宿舍信息 int establish(students stu[]) { ?int i,x; ? ?for(i=0;i<1000;i++) ? ?{ ? ? system("cls"); ? ? ? printf("\n\n ? ? ? ? ? ? ? ? 錄入學(xué)生信息 ?(最多%d個)\n",MAX); ? ? printf(" ? ? ? ? ? ? ? ----------------------------\n"); ? ? ? ? ? ? printf("\n ? ? ? ? ? ? ? ? ? ? 第%d個學(xué)生",k+1); ? ? ? ? printf("\n 請輸入學(xué)生的學(xué)號:"); ? ? ? ? scanf("%d",&stu[k].number); ? ? ? ? printf("\n 請輸入學(xué)生的姓名:"); ? ? ? ? scanf("%s",stu[k].name);? ? ? ? ? printf("\n 請輸入學(xué)生的性別:"); ? ? ? ? scanf("%s",stu[k].sex); ? ? ? ? printf("\n 請輸入學(xué)生的年齡:"); ? ? ? ? scanf("%d",&stu[k].age); ? ? ? ? ? printf("\n 請輸入學(xué)生的班級:"); ? ? ? ? scanf("%s",stu[k].classs); ? ? ? ? ? ? ? ? ?? ??? ?printf("\n 請輸入學(xué)生入住時間(如:2017 9):");?? ??? ? ? ? ?? ??? ?while((scanf("%d %d",&stu[k].year,&stu[k].month))!=EOF) ?? ??? ?{ ?? ??? ??? ?if(stu[k].year<1000||stu[k].year>9999||stu[k].month>12||stu[k].month<1)//限定輸入范圍 ?? ??? ??? ?{ ? ? ? ? ? ? ? ? printf("對不起,輸入錯誤,請重新輸入:"); ?? ??? ??? ?} ?? ??? ??? ?else ?? ??? ??? ??? ?break; ?? ??? ?} ?? ??? ?printf("\n 請輸入學(xué)生的宿舍號:"); ? ? ? ? scanf("%d",&stu[k++].dorm); ?? ??? ?printf("\n 請按 1 鍵返回主菜單或按 0 鍵繼續(xù)創(chuàng)建:"); ? ? ? ? scanf("%d",&x); ? ? ? ? if(x!=0) ?break; ? ?} ? ?? ? ?return k; } ? ? ? //顯示學(xué)生宿舍信息 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? void display(students stu[]) { ? ? ? ? int i; ? ? for(i=0;i 7) ?? ??? ??? ??? ?{ ?? ??? ??? ??? ??? ?printf("對不起,輸入錯誤,請重新輸入:"); ?? ??? ??? ??? ?} ?? ??? ??? ??? ?else ?? ??? ??? ??? ?{ ? ? ? ? ? ? ? ? ? ? switch(choose) ?? ??? ??? ??? ??? ?{ ?? ??? ??? ??? ??? ?case 1: ?? ??? ??? ??? ??? ??? ?{ ?? ??? ??? ??? ??? ??? ??? ?printf("\n ? 請輸入你改的新學(xué)號:"); ? ? ? ? ? ? ? ? ? ? ? ? ? ? scanf("%d",&stu[i].number);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ?? ??? ??? ??? ??? ??? ?} ? ? ? ? ? ? ? ? ? ? case 2: ?? ??? ??? ??? ??? ??? ?{ ? ? ? ? ? ? ? ? ? ? ? ? ? ? printf("\n ? 請輸入你改的新姓名:"); ? ? ? ? ? ? ? ? ? ? ? ? ? ? scanf("%s",stu[i].name);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ?? ??? ??? ??? ??? ??? ?} ? ? ? ? ? ? ? ? ? ? case 3: ?? ??? ??? ??? ??? ??? ?{ ? ? ? ? ? ? ? ? ? ? ? ? ? ? printf("\n ? 請輸入你改的新性別:"); ? ? ? ? ? ? ? ? ? ? ? ? ? ? scanf("%s",stu[i].sex);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ?? ??? ??? ??? ??? ??? ?} ? ? ? ? ? ? ? ? ? ? case 4: ?? ??? ??? ??? ??? ??? ?{ ? ? ? ? ? ? ? ? ? ? ? ? ? ? printf("\n ? 請輸入你改的新年齡:"); ? ? ? ? ? ? ? ? ? ? ? ? ? ? scanf("%d",&stu[i].age);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ?? ??? ??? ??? ??? ??? ?} ? ? ? ? ? ? ? ? ? ? case 5: ?? ??? ??? ??? ??? ??? ?{ ? ? ? ? ? ? ? ? ? ? ? ? ? ? printf("\n ? 請輸入你改的新班級:"); ? ? ? ? ? ? ? ? ? ? ? ? ? ? scanf("%s",stu[i].classs);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ?? ??? ??? ??? ??? ??? ?} ? ? ? ? ? ? ? ? ? ? case 6: ?? ??? ??? ??? ??? ??? ?{ ? ? ? ? ? ? ? ? ? ? ? ? ? ? printf("\n ? 請輸入你改的新宿舍:"); ? ? ? ? ? ? ? ? ? ? ? ? ? ? scanf("%d",&stu[i].dorm);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ?? ??? ??? ??? ??? ??? ?} ?? ? ? ? ? ? ? ? ? ?case 7: ?? ??? ??? ??? ??? ??? ?{ ?? ? ? ? ? ??? ? ? ? ? ? ? ?printf("\n ? 請輸入你改的新入住時間:"); ?? ??? ? ? ? ? ? ? ? ? ? ? ?scanf("%d %d",&stu[i].year,&stu[i].month); ?? ??? ??? ? ? ? ? ? ? ? ? ?break; ?? ??? ??? ??? ??? ??? ?} ?? ??? ??? ??? ??? ?} ?? ??? ? ? ? ? ??? ?printf("修改成功!"); ?? ??? ? ? ? ? ??? ?Sleep(500); ? ? ? ? ? ? ? ? ? ? printf("\n\n學(xué)號:%d ?姓名:%s ?性別:%s ?年齡:%d ?班級:%s ?宿舍號: %d ?入住時間:%d/%d\n",stu[i].number,stu[i].name,stu[i].sex,stu[i].age,stu[i].classs,stu[i].dorm,stu[i].year,stu[i].month); ?? ??? ? ? ? ? ? ? ?m=1; ?? ??? ??? ??? ??? ?break; ?? ??? ??? ??? ?} ?? ??? ??? ?} ?? ??? ?} ?? ?} ?? ?if(m==0) ?? ?{ ?? ? ? ?printf("對不起,此學(xué)生信息不存在!\n"); ?? ?} ?? ?printf("按任意鍵返回主菜單!"); ? ? getch(); ? ? return ; } ? //刪除學(xué)生信息 void deletee(students stu[]) {? ?? ? ? ? char name1[20]; ? ? int i,j,m=0; ? ? ? printf("請輸入學(xué)生姓名:"); ? ? scanf("%s",name1); ? ? printf("\n"); ?? ?printf("正在查找是否存在此學(xué)生信息.....\n"); ? ? Sleep(1000); ? ? for(i=0;i 7) ?? ??? ??? ?{ ?? ??? ??? ??? ?printf("對不起,輸入錯誤,請重新輸入:"); ?? ??? ??? ?} ?? ??? ??? ?else ?? ??? ??? ?{ ?? ??? ??? ??? ?switch(choose) ?? ??? ??? ??? ?{ ?? ??? ??? ??? ?case 1: k=establish(stu); break;//創(chuàng)建學(xué)生宿舍信息 ? ? ? ? ? ? ? ? case 2: display( stu) ; break;//顯示學(xué)生宿舍信息 ? ? ? ? ? ? ? ? case 3: query(stu); break;//查詢學(xué)生宿舍信息 ? ? ? ? ? ? ? ? case 4: modify(stu); break;//修改學(xué)生宿舍信息 ? ? ? ? ? ? ? ? case 5: deletee(stu); break;//刪除學(xué)生宿舍信息 ?? ??? ??? ? ? ?case 6: preservation(stu); break;//保存學(xué)生宿舍信息 ?? ??? ??? ? ? ?case 7: read(stu);break;//讀取學(xué)生宿舍信息 ? ? ? ? ? ? ? ? case 0: break; ?? ??? ??? ??? ?} ?? ??? ? ? ?break; ?? ??? ??? ?} ?? ??? ?} ?? ?} } int main() { ?? ? ? title(); ? ? start(); ?? ?return 0; }
原文鏈接:https://blog.csdn.net/ysz171360154/article/details/83904241
相關(guān)推薦
- 2022-02-10 微信小程序this.triggerEvent(),父組件中使用子組件的事件
- 2022-10-21 C++調(diào)用matlab函數(shù)的實例_C 語言
- 2022-07-18 python中數(shù)組array和列表list的基本用法及區(qū)別解析_python
- 2022-06-18 SpringBoot打包docker鏡像發(fā)布的詳細(xì)步驟_docker
- 2023-07-05 實際開發(fā)中如何存儲密碼(md5加鹽bcrypt)golang
- 2022-07-10 CSS解決未知高度垂直居中
- 2022-07-19 使用普通指針實現(xiàn)數(shù)組倒敘和字符串的壓縮
- 2022-05-14 Python實現(xiàn)屏幕代碼雨效果的示例代碼_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支