<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本文範例為大家分享了C語言實現學生宿舍資訊管理系統的具體程式碼,供大家參考,具體內容如下
該學生宿舍資訊管理系統主要實現的功能有:建立學生宿舍資訊,顯示學生宿舍資訊,查詢學生宿舍資訊,修改學生宿舍資訊,刪除學生宿舍資訊,儲存學生宿舍資訊,讀取學生宿舍資訊。其系統功能模組圖如下:
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> #include<windows.h> #define MAX 1000 int k=0; //結構體型別 typedef struct { char name[20]; //姓名 char sex[5]; //性別 char classs[20]; //班級 int number; //學號 int age; //年齡 int dorm; //宿舍號 int year; //年份 int month; //月份 }students; //建立學生宿舍資訊 int establish(students stu[]) { int i,x; for(i=0;i<1000;i++) { system("cls"); printf("nn 錄入學生資訊 (最多%d個)n",MAX); printf(" ----------------------------n"); printf("n 第%d個學生",k+1); printf("n 請輸入學生的學號:"); scanf("%d",&stu[k].number); printf("n 請輸入學生的姓名:"); scanf("%s",stu[k].name); printf("n 請輸入學生的性別:"); scanf("%s",stu[k].sex); printf("n 請輸入學生的年齡:"); scanf("%d",&stu[k].age); printf("n 請輸入學生的班級:"); scanf("%s",stu[k].classs); printf("n 請輸入學生入住時間(如: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 請輸入學生的宿舍號:"); scanf("%d",&stu[k++].dorm); printf("n 請按 1 鍵返回主選單或按 0 鍵繼續建立:"); scanf("%d",&x); if(x!=0) break; } return k; } //顯示學生宿舍資訊 void display(students stu[]) { int i; for(i=0;i<k;i++) { printf("學號:%d 姓名:%s 性別:%s 年齡:%d 班級:%s 宿舍號: %d 入住時間:%d/%dn",stu[i].number,stu[i].name,stu[i].sex,stu[i].age,stu[i].classs,stu[i].dorm,stu[i].year,stu[i].month); } printf("按任意鍵返回主選單!"); getch(); system("cls"); return ; } //查詢學生宿舍資訊 void query(students stu[]) { int i,m=0; int number; printf("nn 請輸入您要查詢的學生的學號: "); scanf("%d",&number); printf(" 正在查詢,請稍後.....n"); Sleep(1000); for(i=0;i<k;i++) { if(number==stu[i].number) { printf("nn學號:%d 姓名:%s 性別:%s 年齡:%d 班級:%s 宿舍號: %d 入住時間:%d/%dn",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; } } if(m==0) { printf("對不起,此學生資訊不存在!n"); } printf("按任意鍵返回主選單!"); getch(); system("cls"); return ; } //修改學生資訊 void modify(students stu[]) { int number,i,choose,m=0; system("cls"); printf("nnn 請輸入您要修改的學生的學號:"); scanf("%d",&number); printf(" 正在查詢,請稍後.....n"); Sleep(1000); for(i=0;i<k;i++) { if(number==stu[i].number) { printf("nn學號:%d 姓名:%s 性別:%s 年齡:%d 班級:%s 宿舍號: %d 入住時間:%d/%dn",stu[i].number,stu[i].name,stu[i].sex,stu[i].age,stu[i].classs,stu[i].dorm,stu[i].year,stu[i].month); printf("nn ********請輸入您想要修改的資料********nn"); printf(" 1. 學號n"); printf(" 2. 姓名n"); printf(" 3. 性別n"); printf(" 4. 年齡n"); printf(" 5. 班級n"); printf(" 6. 宿舍號n"); printf(" 7. 入住時間nn"); printf(" 請選擇(1-7):"); while((scanf("%d",&choose))!=EOF) { if(choose<1||choose>7) { printf("對不起,輸入錯誤,請重新輸入:"); } else { switch(choose) { case 1: { printf("n 請輸入你改的新學號:"); 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("nn學號:%d 姓名:%s 性別:%s 年齡:%d 班級:%s 宿舍號: %d 入住時間:%d/%dn",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("對不起,此學生資訊不存在!n"); } printf("按任意鍵返回主選單!"); getch(); return ; } //刪除學生資訊 void deletee(students stu[]) { char name1[20]; int i,j,m=0; printf("請輸入學生姓名:"); scanf("%s",name1); printf("n"); printf("正在查詢是否存在此學生資訊.....n"); Sleep(1000); for(i=0;i<k;i++) { if(strcmp(stu[i].name,name1)==0) { m=1; printf("已找到此學生資訊!n刪除中....n"); Sleep(2000); for(j=i;j<k;j++) { strcpy(stu[j].name,stu[j+1].name); strcpy(stu[j].sex,stu[j+1].sex); strcpy(stu[j].classs,stu[j+1].classs); stu[j].age=stu[j+1].age; stu[j].dorm=stu[j+1].dorm; stu[j].number=stu[j+1].number; stu[j].year=stu[j+1].year; stu[j].month=stu[j+1].month; } k--; printf("刪除成功!n"); } } if(m==0) { printf("此學生資訊不存在!n"); } printf("按任意鍵返回主選單!"); getch(); system("cls"); return ; } //儲存學生住宿資訊 void preservation(students stu[]) { int i; FILE *fp; if((fp=fopen("學生宿舍資訊.txt","w"))==NULL) { printf("未發現學生宿舍資訊!n"); printf("按任意鍵返回...n"); getch(); system("cls"); return ; } else { for(i=0;i<k;i++) { fprintf(fp,"nn學號:%d 姓名:%s 性別:%s 年齡:%d 班級:%s 宿舍號: %d 入住時間:%d/%dn",stu[i].number,stu[i].name,stu[i].sex,stu[i].age,stu[i].classs,stu[i].dorm,stu[i].year,stu[i].month); } fclose(fp); printf("正在儲存檔案....n"); Sleep(1000); printf("檔案儲存成功!n"); printf("按任意鍵返回...n"); getch(); system("cls"); return ; } } //讀取學生住宿資訊 void read(students stu[]) { FILE *fp; char ch; if((fp=fopen("學生宿舍資訊.txt","r"))==NULL) { printf("檔案無法開啟!n"); exit(0); } printf("正在讀入檔案...n"); Sleep(1000); printf("檔案讀入成功!n"); ch=fgetc(fp); while(!feof(fp)) { putchar(ch); ch=fgetc(fp); } printf("n"); fclose(fp); printf("按任意鍵返回...n"); getch(); system("cls"); return ; } void title() { printf(" nnn **********************************n"); printf(" * *n"); printf(" * *n"); printf(" * *n"); printf(" * 歡迎進入學生宿舍資訊管理系統 *n"); printf(" * *n"); printf(" * *n"); printf(" * *n"); printf(" **********************************n"); printf("n 按任意鍵進入系統!n"); getch(); } void start() { students stu[20]; int choose,k; while(choose!=0) { system("cls"); printf("nnn ********學生宿舍資訊管理系統********nn"); printf(" 1. 建立學生宿舍資訊nn"); printf(" 2. 顯示學生宿舍資訊nn"); printf(" 3. 查詢學生宿舍資訊nn"); printf(" 4. 修改學生宿舍資訊nn"); printf(" 5. 刪除學生宿舍資訊nn"); printf(" 6. 儲存學生宿舍資訊nn"); printf(" 7. 讀取學生宿舍資訊nn"); printf(" 0. 退出系統nn"); printf(" 請選擇(0-7):"); while((scanf("%d",&choose))!=EOF) { if(choose<0||choose>7) { printf("對不起,輸入錯誤,請重新輸入:"); } else { switch(choose) { case 1: k=establish(stu); break;//建立學生宿舍資訊 case 2: display( stu) ; break;//顯示學生宿舍資訊 case 3: query(stu); break;//查詢學生宿舍資訊 case 4: modify(stu); break;//修改學生宿舍資訊 case 5: deletee(stu); break;//刪除學生宿舍資訊 case 6: preservation(stu); break;//儲存學生宿舍資訊 case 7: read(stu);break;//讀取學生宿舍資訊 case 0: break; } break; } } } } int main() { title(); start(); return 0; }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45