




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! 數(shù) 據(jù) 結(jié) 構(gòu) 課 程 設(shè) 計(jì)設(shè) 計(jì) 題 目: 學(xué)生信息管理系統(tǒng)(順序) 姓名及學(xué)號(hào) : 專 業(yè) 班 級(jí): 09計(jì)算機(jī)科學(xué)與技術(shù) 指 導(dǎo) 教 師: 完 成 時(shí) 間: 信息工程學(xué) 院 計(jì)算機(jī)科學(xué) 系傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!課題名稱學(xué)生信息管理系統(tǒng)(順序表)院 系信息工程學(xué)院年級(jí)專業(yè)10計(jì)科特色學(xué) 號(hào)姓 名成 績(jī)1042157103何業(yè)祥1042157104孔磊磊10421571019王 舒課題設(shè)計(jì)目的與設(shè)計(jì)意義1、課題設(shè)計(jì)目的:課程設(shè)計(jì)任務(wù)是為了實(shí)現(xiàn)學(xué)生信息的相關(guān)操作,方面用戶快速得到學(xué)生的各種信息,并且能進(jìn)行
2、信息的更新、插入、刪除等操作。課程設(shè)計(jì)的主要目的:熟練利用數(shù)據(jù)結(jié)構(gòu)各種算法思想設(shè)計(jì)程序;掌握C語言基本語法;通過課程設(shè)計(jì),加深對(duì)數(shù)據(jù)結(jié)構(gòu)課程所學(xué)內(nèi)容的進(jìn)一步理解和鞏固;加深對(duì)結(jié)構(gòu)化課程設(shè)計(jì)思想的理解,并設(shè)計(jì)合理的模塊化結(jié)構(gòu);提高程序開發(fā)功能,能運(yùn)用合理的控制流程編寫清晰高效的程序;培養(yǎng)分析問題、解決問題的能力。在課程設(shè)計(jì)中,我們充分發(fā)揮小組優(yōu)勢(shì)完成課程設(shè)計(jì),同時(shí)也體會(huì)到小組合作的重要性與必要性。2、課題設(shè)計(jì)意義:指導(dǎo)教師:年 月 日 安徽新華學(xué)院課程設(shè)計(jì)成績(jī)?cè)u(píng)定表(本科)目 錄傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!一、實(shí)驗(yàn)?zāi)康?1二、實(shí)驗(yàn)內(nèi)容 1三、基本要求 1四、算法設(shè)計(jì)思想
3、 1五、算法流程圖 1六、算法源代碼 6七、運(yùn)行結(jié)果 22八、收獲和體會(huì) 25九、致謝 25傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!1. 實(shí)驗(yàn)?zāi)康模和ㄟ^制作學(xué)生信息管理系統(tǒng) (1) 基本掌握面向過程程序設(shè)計(jì)的的基本思路和方法;(2) 達(dá)到熟練掌握C語言的基本知識(shí)和技能;(3) 能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的程序設(shè)計(jì)問題。2實(shí)驗(yàn)內(nèi)容: 輸入一個(gè)班學(xué)生的學(xué)號(hào),姓名,性別,成績(jī)。編程插入學(xué)生信息,設(shè)計(jì)查找每個(gè)學(xué)生的信息,刪除學(xué)生信息,輸出學(xué)生信息,修改學(xué)生信息,報(bào)表和顯示學(xué)生信息,及退出學(xué)生信息管理系統(tǒng)。3基本要求:(1)硬件:微機(jī),打印機(jī)各一臺(tái)(2)軟件:Visual C+
4、,windows74. 算法設(shè)計(jì)思想(1).分析程序的功能要求,劃分程序功能模塊。 (2). 畫出系統(tǒng)流程圖。 (3). 代碼的編寫。定義數(shù)據(jù)結(jié)構(gòu)和各個(gè)功能子函數(shù)。 (4). 程序的功能調(diào)試。 5. 算法的流程圖傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!根據(jù)printf函數(shù)輸出的提示信息選擇相關(guān)操作3.查找學(xué)生信息4.刪除學(xué)生信息5.輸出學(xué)生信息6.修改學(xué)生信息0.退出學(xué)生信息管理系統(tǒng)1.創(chuàng)建學(xué)上信息表并初始化Main 主函數(shù)開始根據(jù)while語句選擇06相應(yīng)數(shù)字Switch語句實(shí)現(xiàn)具體操作2.添加學(xué)生信息根據(jù)相關(guān)調(diào)用函數(shù)輸出相應(yīng)學(xué)生信息程序結(jié)束傳播優(yōu)秀Word版文檔 ,希望對(duì)您有
5、幫助,可雙擊去除!傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!6. 算法源代碼:#include#include#include#define OK 1#define ERROR 0#define OVERFLOW -2#define MAXSIZE 10#define List_INIT_SPACE 10#define List_INC_SPACE 1typedef structchar number15;char name10;char sex10;int score;Elemtype;傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!typedef structElemty
6、pe *elem;int length;int listsize;sqlist;/*1創(chuàng)建空順序表并初始化*/void creatList(sqlist *L)int i=0,n;Elemtype *newbase;L-elem=(Elemtype*)malloc(List_INIT_SPACE*(sizeof(Elemtype);if(!L-elem) exit(OVERFLOW);L-length=0;L-listsize=List_INIT_SPACE;printf(有幾位同學(xué):n);scanf(%d,&n);傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!for(i=0;ilen
7、gth=L-listsize)newbase=(Elemtype*)realloc(L-elem,(List_INIT_SPACE+List_INC_SPACE)*sizeof(Elemtype);if(newbase) L-elem=newbase;L-listsize+=List_INC_SPACE;else exit(OVERFLOW);printf(請(qǐng)輸入第%d名同學(xué)的信息:n,i+1);printf(學(xué)號(hào)(15)n);scanf(%16s,L-elemL-length.number);printf(姓名(15)n);scanf(%16s,L-elemL-);pr
8、intf(性別(男:M女:F)n);scanf(%16s,L-elemL-length.sex);printf(成績(jī)n);傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!scanf(%10d,&L-elemL-length.score);L-length+;printf(%d名學(xué)生信息如下:n,L-length);printf(學(xué)號(hào)(15)姓名(15)性別(男:M女:F) 成績(jī)n);for(i=0;ilength;i+)printf(%-16s%-16s%-16s%-10dn,L-elemi.number,L-,L-elemi.sex,L-elemi.score);/
9、*2向順序表中插入元素*/void insertlist(sqlist*L)int i,j,k;char sign=y;Elemtype *newbase;Elemtype newelem;while(sign!=n)if(L-length=L-listsize)傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!newbase=(Elemtype*)realloc(L-elem,(List_INIT_SPACE+List_INC_SPACE)*sizeof(Elemtype);if(newbase) L-elem=newbase;L-listsize+=List_INC_SPACE;els
10、e exit(OVERFLOW);printf(請(qǐng)輸入要插入的同學(xué)的信息:n);printf(學(xué)號(hào)(15)n);scanf(%16s,newelem.number);printf(姓名(15)n);scanf(%16s,);printf(性別(男:M女:F)n);scanf(%16s,newelem.sex);printf(成績(jī)n);scanf(%10d,&newelem.score);printf(要插入到第幾個(gè)位置:);scanf(%d,&i);while(iL-length+1)傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!printf(不能插入到第%d個(gè)
11、位置!n只能插入第1到第%d個(gè)位置上!n請(qǐng)重新輸入要插入的位置:,L-length+1);scanf(%d,&i);L-length+;for(j=L-length-1;ji-2;j-)for(k=0;k=L-k;L-elemj.numberk=L-elemj-1.numberk;L-elemj.sexk=L-elemj-1.sexk;L-elemj.score=L-elemj-1.score;j+;for(k=0;k=k;L-elemj.numberk=newelem.numberk;傳播優(yōu)秀Word
12、版文檔 ,希望對(duì)您有幫助,可雙擊去除!L-elemj.sexk=newelem.sexk;L-elemj.score=newelem.score;printf(是否還要輸入?(Y or N);getchar();scanf(%c,&sign);if(sign=n|sign=N)sign=n;printf(%d名學(xué)生信息如下:n,L-length);printf(學(xué)號(hào)(15)姓名(15)性別(男:M女:F) 成績(jī)n);for(i=0;ilength;i+)printf(%-16s%-16s%-16s%-10dn,L-elemi.number,L-,L-elemi.sex,L-
13、elemi.score);/*3查找學(xué)生信息*/int findlist(sqlist *L)傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!int j;char i16;printf(1.按學(xué)號(hào)查找n2.按姓名查找n請(qǐng)選擇:);scanf(%d,&j);if(j=1)printf(請(qǐng)輸入學(xué)號(hào):);scanf(%s,i);for(j=0;jlength;j+)if(!strcmp(i,L-elemj.number)/i=L-elemj.number用數(shù)組函數(shù)return j+1;return 0;elseprintf(請(qǐng)輸入姓名:);scanf(%s,i);for(j=0;jlength
14、;j+)if(!strcmp(i,L-)/用數(shù)組函數(shù)return j+1;return 0;傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!/*4刪除學(xué)生信息*/int delnode(sqlist *L)int j;char i10;printf(1.按學(xué)號(hào)刪除n2.按姓名刪除n請(qǐng)選擇:);scanf(%d,&j);if(j=1)printf(請(qǐng)輸入學(xué)號(hào):);scanf(%s,i);for(j=0;jlength;j+)if(!strcmp(i,L-elemj.number)/i=L-elemj.number用數(shù)組函數(shù)for(;jlength;j+)L-elemj=
15、L-elemj+1;L-length-;return 1;傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!return 0;elseprintf(請(qǐng)輸入姓名:);scanf(%s,i);for(j=0;jlength;j+)if(!strcmp(i,L-)/用數(shù)組函數(shù)for(;jlength;j+)L-elemj=L-elemj+1;/L-elemj以后的向前挪L-length-;return 1;return 0;/*5輸出學(xué)生信息*/傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!void printlist(sqlist *L)int i;printf(%
16、d名學(xué)生信息如下:n,L-length);printf(學(xué)號(hào)(15)姓名(15)性別(男:M女:F) 成績(jī)n);for(i=0;ilength;i+)printf(%-16s%-16s%-16s%-10dn,L-elemi.number,L-,L-elemi.sex,L-elemi.score);/*6修改功能*/void reviselist(sqlist *L)int i,x,a=0;char name16;char sex16;char number16;int score;printf(請(qǐng)選擇你要改的同學(xué)的姓名);scanf(%16s,name); printf(請(qǐng)
17、選擇你要改的同學(xué)的信息n);傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! printf(1.修改學(xué)生的姓名n);printf(2.修改學(xué)生的學(xué)號(hào)n);printf(3.修改學(xué)生的性別n);printf(4.修改學(xué)生的成績(jī)n);scanf(%d,&x);switch(x)case 1:for(i=0;ilength;i+)if(strcmp(name,L-)=0)printf(請(qǐng)輸入新名字);scanf(%16s,name);strcpy(L-,name);a=1;if(a=0)printf(對(duì)不起你要改的名字不存在n);傳播優(yōu)秀Word版文檔
18、,希望對(duì)您有幫助,可雙擊去除!break;case 2:for(i=0;ilength;i+) if(strcmp(name,L-)=0) printf(請(qǐng)輸入新學(xué)號(hào));scanf(%16s,number);strcpy(L-elemi.number,number);a=1; if(a=0)printf(對(duì)不起你要改的名字不存在n);break;case 3:for(i=0;ilength;i+)if(strcmp(name,L-)=0)printf(請(qǐng)輸入新性別);傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!scanf(%16s,sex);s
19、trcpy(L-elemi.sex,sex);a=1;if(a=0)printf(對(duì)不起你要改的名字不存在n);break;case 4:for(i=0;ilength;i+)if(strcmp(name,L-)=0)printf(請(qǐng)輸入新成績(jī));scanf(%d,score);L-elemi.score=score;a=1;if(a=0)printf(對(duì)不起你要改的名字不存在n);傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!break;/*0退出學(xué)生信息管理系統(tǒng)*/void tuichu(sqlist *L)if(!L-elem)free(L-elem);pri
20、ntf(nn再見,歡迎下次使用);exit(-2);void main()sqlist a,*L=&a;int i;printf(*n);printf(* 學(xué)生信息管理系統(tǒng) *n); printf(*=n);傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!printf(*1.創(chuàng)建學(xué)生信息庫(kù)并初始化 *n); printf(*2.添加學(xué)生信息 *n);printf(*3.查找學(xué)生信息 *n); printf(*4.刪除學(xué)生信息 *n); printf(* 5.輸出學(xué)生信息 *n); printf(*6.修改學(xué)生信息 *n); printf(* 0.退出學(xué)生信息管理系統(tǒng) *n); print
21、f(*=n); printf(*n);while(1)printf(nn請(qǐng)選擇(0-6):);scanf(%d,&i);while(i6)printf(只能選擇0到6!請(qǐng)重新選擇:);scanf(%d,&i);switch(i)傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!case 1:creatList(L);printf(初始化完畢!);break;case 2:insertlist(L);break;case 3:i=findlist(L);if(!i)printf(沒有該學(xué)生n);elsei-;printf(要查找的學(xué)生:n);printf(學(xué)號(hào) 姓名 性別 成績(jī)n);prin
22、tf(%-10s%-10s%-10s%-dn,L-elemi.number,L-,L-elemi.sex,L-elemi.score);break;傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!case 4:i=delnode(L);if(!i)printf(沒有該學(xué)生n);elseprintf(該學(xué)生已刪除);break;case 5:printlist(L);break;case 6:reviselist(L);break;case 0:tuichu(L);7.運(yùn)行結(jié)果:(1) 初始化傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!(2) 信息錄入傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!信息插入(3) 信息查詢傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除?。?) 刪除信息(5) 修改學(xué)生信息傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!(6) 退出系統(tǒng)8收獲及體會(huì): 通過這次實(shí)訓(xùn),增加了我們學(xué)習(xí)軟件技術(shù)的興趣,加強(qiáng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 眼科護(hù)理品管圈提升實(shí)踐
- EAU前列腺癌指南更新解讀2025
- 智慧港口AI大模型頂層設(shè)計(jì)方案
- 中央空調(diào)系統(tǒng)操作員專業(yè)知識(shí)考試題庫(kù)(含各題型)
- 傳輸網(wǎng)絡(luò)技術(shù)李世銀習(xí)題答案
- 銷售統(tǒng)計(jì)試題及答案
- 河南省南陽市六校聯(lián)考2024-2025學(xué)年高一下學(xué)期第二次聯(lián)考英語試題含答案
- 2025年山西省呂梁市部分學(xué)校中考模擬語文試題(含答案)
- 歷史●全國(guó)甲卷丨2024年普通高等學(xué)校招生全國(guó)統(tǒng)一考試歷史試卷及答案
- 2025設(shè)備租賃合同書范本(合同版本)
- 2023年高考真題-歷史(遼寧卷) 含解析
- 2024-2030年版中國(guó)市政工程行業(yè)發(fā)展研究及投資規(guī)劃分析報(bào)告
- 2022版ISO27001信息安全管理體系基礎(chǔ)培訓(xùn)課件
- 2024油氣管道無人機(jī)巡檢作業(yè)標(biāo)準(zhǔn)
- 大國(guó)兵器學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2024年共青團(tuán)團(tuán)課考試測(cè)試題庫(kù)及答案
- 招投標(biāo)管理招聘筆試題及解答(某大型國(guó)企)
- 新版《鐵道概論》考試復(fù)習(xí)試題庫(kù)(含答案)
- 2024至2030年中國(guó)快餐業(yè)調(diào)研分析及發(fā)展前景預(yù)測(cè)報(bào)告
- 2024年公選處級(jí)領(lǐng)導(dǎo)干部面試題選及參考答案
- 廣東省珠海市香洲區(qū)2023-2024學(xué)年七年級(jí)下學(xué)期期末歷史試題(解析版)
評(píng)論
0/150
提交評(píng)論