




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
程序設計基礎課程設計實驗報告書目錄1.設計題目2正文2.1系統簡介2.2選題背景2.3設計內容2.4設計思路2.5算法(條列式或流稈圖)2.6稈序清單與運行結果2.7總結設計題目學生信息管理系統設計正文系統簡介學生信息包括:學號,姓名,年齡,性別,出生年月,地址,電話,E-mail等。試設計學生信息管理系統,使之能提供以下功能:1、系統以菜單方式工作2、學生信息錄入功能(學生信息用文件保存)--輸入3、學生信息瀏覽功能--輸出4、學生信息查詢功能--按學號查詢、按姓名查詢、5、學生信息的刪除與修改(可選項)要求:使用文件方式存儲數據。選題背景經典計算機問題,設計學生信息管理系統,可以進行多項系統信息管理功能。
2.3設計內容設計學生信息管理的各個功能。系統以菜單方式工作。學生信息錄入功能(學生信息用文件保存)--輸入。學生信息瀏覽功能--輸出。學生信息查詢功能--按學號查詢、按姓名查詢。學生信息的刪除與修改(可選項)2.4設計思路將程序的各個功能分開獨立的執行,問題有大而小,細化。2.5算法(條列式或流程圖)主程序模塊:輸入準備V運彳判不同功能:按退!格鍵創建文件模塊獨立函結口束得文件名生數創建文件輸入一個學生信息并存放到文件足:嚴NO刪除信息模塊主程序輸入一個學生信息并存放到文件足:嚴NO刪除信息模塊主程序函數):按讀入要刪除開姓于存放文件的文件夾建100個結構體,并將文件中的信息E存放到結構體相按讀入要刪除開姓于存放文件的文件夾建100個結構體,并將文件中的信息E存放到結構體相通過鏈表把要向下一個結構信息在結構數開文構體結構體全部寫入除的姓名是否顯示瀏覽文件―——返回主程序輸入存放信息的文件夾的文件名,并打開文件
夾-_創建一百個結構體數組將一個結構體_大小從文件中讀取到內存,并顯示不相同從文件中讀入一個結構體大小,并顯示到內存查找學生信息模塊查找學生信息模塊返獨文立函數否#include<stdlib.h>#include<string.h>#include<io.h>structbirth{intyear,month,day;};structstudent{intnumber,age,tel[10];charname[10],sex,address[20],E_mail[20];structbirthbirthday;structstudent*link;};voidshow(){printf("請輸入數字加回車鍵進行選擇:\n");printf("1、學生信息錄入功能(學生信息用文件保存)輸入\n");printf("2、學生信息瀏覽功能輸出\n");printf("3、學生信息查詢功能--按學號查詢、按姓名查詢\n");printf("4、學生信息的刪除與修改(可選項)\n");printf("按其他任意鍵加回車退出程序\n");}\*創建文件夾并存入信息模塊:*\voidcredit(intn){FILE*fp;charfpname[20];structstudent*head,*next,*end;inti;printf("請輸入用于存放文件的文件路勁及文件名:“);scanf("%s",fpname);getchar();fp=fopen(fpname,"w+");head=(structstudent*)malloc(sizeof(structstudent));printf(〃請輸入學生學號姓名性別出生年月日地址電話e_mail:〃);scanf("%d%s%c%d%d%d%s%s%s",&head->number,head->name,&head->sex,&(*head).birthday.year,&(*head).birthday.month,&(*head).birthday.day,head->address,head->tel,head->E_mail);getchar();fprintf(fp,"%d%s%c%d%d%d%s%s%s",head->number,head->name,head->sex,(*head).birthday.year,(*head).birthday.month,(*head).birthday.day,head->address,head->tel,head->E_mail);end=head;for(i=1;i<n;i++){next=(structstudent*)malloc(sizeof(structstudent));printf(〃請輸入學生學號姓名性別出生年月日地址電話e_mail:〃);scanf("%d%s%c%d%d%d%s%s%s",&next->number,next->name,&next->sex,&(*next).birthday.year,&(*next).birthday.month,&(*next).birthday.day,next->address,next->tel,next->E_mail);getchar();fprintf(fp,"%d%s%c%d%d%d%s%s%s",next->number,next->name,next->sex,(*next).birthday.year,(*next).birthday.month,(*next).birthday.day,next->address,next->tel,next->E_mail);end->link=next;end=next;end->link=NULL;}fclose(fp);}\*瀏覽信息模塊:*\voidshow2(intn){FILE*fp;inti;charfpname[20];structstudent*head;head=(structstudent*)malloc(sizeof(structstudent));printf("請輸入存放信息的文件路徑以及文件名:“);gets(fpname);fp=fopen(fpname,"r+");for(i=0;i<n;i++){fscanf(fp,"%d%s%c%d%d%d%s%s%s",&head->number,head->name,&head->sex,&(*head).birthday.year,&(*head).birthday.month,&(*head).birthday.day,head->address,head->tel,head->E_mail);printf("%d%s%d%d%d%d%s%s%s",&head->number,head->name,head->sex,(*head).birthday.year,(*head).birthday.month,(*head).birthday.day,head->address,head->tel,head->E_mail);}fclose(fp);}\*按學號查找學生信息模塊:*\intsearch1(intn)inti,checkname;FILE*fp;charfpname[20];structstudent*head;head=(structstudent*)malloc(sizeof(structstudent));printf("請輸入存放信息的文件路徑以及文件名:“);gets(fpname);fp=fopen(fpname,"r+");printf("請輸入要查詢信息的學生學號:");scanf("%d",&checkname);getchar();for(i=0;i<n;i++){fscanf(fp,"%d%s%c%d%d%d%s%s%s",&head->number,head->name,&head->sex,&(*head).birthday.year,&(*head).birthday.month,&(*head).birthday.day,head->address,head->tel,head->E_mail);if(checkname==head->number){printf("%d%s%c%d%d%d%s%s%s\n",head->number,head->name,head->sex,(*head).birthday.year,(*head).birthday.month,(*head).birthday.day,head->address,head->tel,head->E_mail);fclose(fp);return(1);}}printf("未找到");}\*按姓名查找學生信息模塊:*\voidsearch2(intn){inti;FILE*fp;charfpname[20],checkname[10];structstudent*head;head=(structstudent*)malloc(sizeof(structstudent));printf("請輸入存放信息的文件路徑以及文件名:“);gets(fpname);fp=fopen(fpname,"r+");printf("請輸入要查詢信息的學生姓名:");scanf("%s",checkname);getchar();for(i=0;i<n;i++){fscanf(fp,"%d%s%c%d%d%d%s%s%s",&head->number,head->name,&head->sex,&(*head).birthday.year,&(*head).birthday.month,&(*head).birthday.day,head->address,head->tel,head->E_mail);if(strcmp(checkname,head->name)==0){printf("%d%s%c%d%d%d%s%s%s",head->number,head->name,head->sex,(*head).birthday.year,(*head).birthday.month,(*head).birthday.day,head->address,head->tel,head->E_mail);fclose(fp);return(1);}}printf("未找到\n");}\*刪除或修改文件信息模塊:*\intmost(n){FILE*fp;charget;charfpname[20];structstudent*ans[500];inti;charcheckname[10];printf("請輸入存放信息的文件路徑以及文件名:“);gets(fpname);fp=fopen(fpname,"r+");ans[0]=(structstudent*)malloc(sizeof(structstudent));fscanf(fp,"%d%s%c%d%d%d%s%s%s",&ans[0]->number,ans[0]->name,&ans[0]->sex,&(*ans[0]).birthday.year,&(*ans[0]).birthday.month,&(*ans[0]).birthday.day,ans[0]->address,ans[0]->tel,ans[0]->E_mail);for(i=1;i<n;i++){ans[i]=(structstudent*)malloc(sizeof(structstudent));fscanf(fp,"%d%s%c%d%d%d%s%s%s",&ans[i]->number,ans[i]->name,&ans[i]->sex,&(*ans[i]).birthday.year,&(*ans[i]).birthday.month,&(*ans[i]).birthday.day,ans[i]->address,ans[i]->tel,ans[i]->E_mail);ans[i-1]->link=ans[i];}ans[i]->link=NULL;printf("如果想修改信息請輸入1加回車鍵,想刪除信息輸入2加回車鍵:");get=getchar();getchar();if(get=='1'){printf("請輸入要修改信息的學生姓名:");scanf("%s",checkname);getchar();for(i=0;i<n;i++){if(strcmp(checkname,ans[i]->name)==0){printf(〃請輸入學生新信息學號姓名性別出生年月日地址電話e_mail:〃);scanf("%d%s%c%d%d%d%s%s%s",&ans[i]->number,ans[i]->name,&ans[i]->sex,&(*ans[i]).birthday.year,&(*ans[i]).birthday.month,&(*ans[i]).birthday.day,ans[i]->address,ans[i]->tel,ans[i]->E_mail);getchar();}}}if(get=='2'){printf(〃請輸入要刪除的學生姓名:〃);scanf("%s",checkname);getchar();for(i=0;i<n;i++){if(strcmp(checkname,ans[i]->name)==0){ans[i-1]->link=ans[i]->link;n--;break;}}}fp=fopen(fpname,"w+");for(i=0;i<n;i++){fprintf(fp,"%d%s%c%d%d%d%s%s%s",ans[i]->number,ans[i]->name,ans[i]->sex,(*ans[i]).birth
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 防火墻設置與管理試題及答案
- 考前心理調適2025年信息系統項目管理師試題及答案
- 知識提升信息系統項目管理師試題及答案
- 長線備考西方政治考試的方案試題及答案
- 機電工程2025年外部環境試題及答案
- 西方政治制度與文化遺產保護的結合探討試題及答案
- 政治變革中的青年參與關系試題及答案
- 網絡工程中的團隊協作與試題及答案
- 解析軟件設計師考試問答試題及答案
- 機電工程國際技術標準試題及答案
- 納米陶瓷噴涂施工方案范本
- 銀行訴訟案件管理辦法
- 危險性較大的分部分項工程專項施工方案編制指南
- 云南省昆明市成考專升本2023年醫學綜合真題及答案
- 生物質材料及應用淀粉
- GB/T 4223-2004廢鋼鐵
- GB/T 36148.1-2018船舶與海上技術海上環境保護圍油欄第1部分:設計要求
- GB 2811-1989安全帽
- 端子壓接規范標準
- 新版《藥品管理法》解讀課件
- 東南大學附屬中大醫院ECMO操作記錄單
評論
0/150
提交評論