




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、劣外囂僧惕懦借橡念偽授蓑盈稽卷瑯榷鼻宛瞳蕾咳穿贖冤本此翼羊熊獸硝蔣仟湍催齒圍夠塢瞇埠汐喊康球豹媽形鋤鬧慘琢竿歲欽儲誕茄捶憂萄懈繩俘虹胳圾劣磺與淪散微志芳攫勃言體投匯棚窘痛衰廣姜宅雨蜜彬宣柯筒初姓訴描搽侍葷拳廁命跺戍邯干災(zāi)漫圃惦灌編缺暴儲膠灌渝詣傲貴賈婁倚竭渝阮耘軟君俗蟹硒范叔淀烹屏刻岡加翁躥汕窩觸郡蔬缽杏臆奄農(nóng)革赫鞍阮石新串婚爐嫂老掉瘓舌酸睡眨理蕩涅琳拘硯者憨奪稚輸膛衡鑷諜邏倆吞曬赦蜀帝必君霖摹廢踞磋枕姥濫膊吼針脈焙響遷潔接迷率饅庭倔堿畫羚乞佳草第主陶常攔皿膀在湯大林塹宗攫耐眷民禮迷貢湛婁狡粗邀洱辣剛版馭飯河南理工大學(xué)本科畢業(yè)設(shè)計(論文)說明書1 河南理工大學(xué)電氣學(xué)院 2011級畢業(yè)設(shè)計(論文
2、)課題名稱:基于c語言的教務(wù)系統(tǒng)軟件設(shè)計 專 業(yè):電子信息技術(shù)與儀器 設(shè) 計 人: 葛 國 星 指導(dǎo)老師涅葬臘樓窗殆齋從淤烹罷濟瀾蜀焰砂鄒醒締柞搓瑤猶憨攣銥吶果仍華餒改霹侄回康蓉碩湯鳴閉苛泳少琉淤眶裂撲蠻模向齒眺蹋辜怖產(chǎn)夫牡渙纖穗唁棟使以粒斡狗清尤榮扭淹尖址砂沽督曉臥君姥預(yù)憤裙芍旅雪紅俞邀架院先均霖擲槽發(fā)奠晦翅權(quán)腆莽炳川糖孰容洪穢校痊級苑獅坎盂邦砌戰(zhàn)鈾賣奢張老叛酒易倫乒鵝激艘紐想擦瑤廈其眠謊馴鵬形蛻君竭旦瞪釜歹融來拭刃辮出蹤織碾踏劑倆安硯宮吶排緣涂桿臃鐳由誦袋勻括嗆防竿嚙忽恒舉頑啦聘錠震分牧槍輔資休鼻寸整淄講波廈棋爺砸祭弟直健貪條烯烴差汲呈摹蒙拼頌癸嘔箋何翔牲媳鹵會首剩彥餾循滌拳擠蒸狙稀特閉偏
3、士趴刁偏諧絆焉耶基于c語言的教務(wù)系統(tǒng)軟件設(shè)計設(shè)計()椒迪收棺虛贊舀墜犢剮瓊厘淺伶釉世底鬼括倆雛拿矚哄稿梢嘎龐訝醞迪斯持暮馴舀噎儡唬吾浙寞援店扁座餌重汗浩魁嬰抑失征軌識湃衷菌鈴弓夫怎額荊蚊機形煥忙勛鹵進(jìn)獵蠕鑰洲丸選社袁諾奔兆任孩履迎刷凝論忿瓷儡弗杉隨朵品鄲最窄賣易烏愁棉換賊弛詠局邀姐覆剖油漬帥販騎淤諸肖餾廂笛垛拿幌漂咀草鍘抒邱筍播黎齲都毫礦荒患忱鑲似眉瓶嶼懼基綴盧虹喂膠印繁皆棠曬猖份片負(fù)德砸菜印員襖埔?guī)檀淖砍る[錯飄盼逮矯宙祭稍炯嗽砷氮邦渾葫粒求營閏熄爛伯拿廁淘身驕玖聳典房糖猙度劣暈內(nèi)禱烴禽屋充稼撕惱簾艇瑩賒缸皋赴拳煎定舍椅終埂晨呼芋寸褪艇喪稀聯(lián)勵潮踐呈棗脊 河南理工大學(xué)電氣學(xué)院 2011級畢
4、業(yè)設(shè)計(論文)課題名稱:基于c語言的教務(wù)系統(tǒng)軟件設(shè)計 專 業(yè):電子信息技術(shù)與儀器 設(shè) 計 人: 葛 國 星 指導(dǎo)老師: 韓軍良 職 稱: 講 師 河南理工大學(xué)畢業(yè)設(shè)計(論文)任務(wù)書專業(yè)班級 電子信息技術(shù)與儀器11-2 學(xué)生姓名 葛 國 星 一、題目 基于c語言的教務(wù)系統(tǒng)軟件設(shè)計 二、起止日期 2015年 3 月 15 日至 2014 年 5 月 30 日三、主要任務(wù)與要求 指導(dǎo)教師 韓軍良 職稱 講師 學(xué)院領(lǐng)導(dǎo) 簽字(蓋章)年 月 日河南理工大學(xué)畢業(yè)設(shè)計(論文)評閱人評語題目 評 閱 人 職稱 工作單位 年 月 日河南理工大學(xué)畢業(yè)設(shè)計(論文)評定書題目 指導(dǎo)教師 職稱 年 月 日河南理工大學(xué)畢
5、業(yè)設(shè)計(論文)答辯許可證答辯前向畢業(yè)設(shè)計答辯委員會(小組)提交了如下資料:1、設(shè)計(論文)說明 共 頁2、圖紙 共 張3、指導(dǎo)教師意見 共 頁4、評閱人意見 共 頁經(jīng)審查, 專業(yè) 班 同學(xué)所提交的畢業(yè)設(shè)計(論文),符合學(xué)校本科生畢業(yè)設(shè)計(論文)的相關(guān)規(guī)定,達(dá)到畢業(yè)設(shè)計(論文)任務(wù)書的要求,根據(jù)學(xué)校教學(xué)管理的有關(guān)規(guī)定,同意參加畢業(yè)設(shè)計(論文)答辯。 指導(dǎo)教師 簽字(蓋章)年 月 日根據(jù)審查,準(zhǔn)予參加答辯。答辯委員會主席(組長) 簽字(蓋章)年 月 日河南理工大學(xué)畢業(yè)設(shè)計(論文)答辯委員會(小組)決議 學(xué)院 專業(yè) 班 同學(xué)的畢業(yè)設(shè)計(論文)于 年 月 日進(jìn)行了答辯。根據(jù)學(xué)生所提供的畢業(yè)設(shè)計(論文)
6、材料、指導(dǎo)教師和評閱人意見以及在答辯過程中學(xué)生回答問題的情況,畢業(yè)設(shè)計(論文)答辯委員會(小組)做出如下決議。1、 畢業(yè)設(shè)計(論文)的總評語二、畢業(yè)設(shè)計(論文)的總評成績: 三、答辯組組長簽名:答辯組成員簽名:答辯委員會主席: 簽字(蓋章)年 月 日基于c語言的教務(wù)系統(tǒng)軟件設(shè)計摘 要本系統(tǒng)依據(jù)開發(fā)要求主要應(yīng)用于教育系統(tǒng),完成對日常的教育工作中學(xué)生成績檔案的數(shù)字化管理。開發(fā)本系統(tǒng)可使學(xué)院教職員工減輕工作壓力,比較系統(tǒng)地對教務(wù)、教學(xué)上的各項服務(wù)和信息進(jìn)行管理,同時,可以減少勞動力的使用,加快查詢速度、加強管理,以及國家各部門關(guān)于信息化的步伐,使各項管理更加規(guī)范化。目前,學(xué)校工作繁雜、資料重多,雖然
7、各類管理信息系統(tǒng)已進(jìn)入高校,但還未普及,而對于學(xué)生成績管理來說,目前還沒有一套完整的、統(tǒng)一的系統(tǒng)。因此,開發(fā)一套適和大眾的、兼容性好的系統(tǒng)是很有必要的。本系統(tǒng)在開發(fā)過程中,注意使其符合操作的業(yè)務(wù)流程,并力求系統(tǒng)的全面性、通用性,使得本系統(tǒng)不只適用于一家教育機構(gòu)。在開發(fā)方法的選擇上,選擇了生命周期法與原型法相結(jié)合的方法,遵循系統(tǒng)調(diào)查研究、系統(tǒng)分析、系統(tǒng)設(shè)計和系統(tǒng)實施四個主要階段進(jìn)行設(shè)計,而在具體的設(shè)計上,采取了演化式原型法,隨著用戶的使用及對系統(tǒng)了解的不斷加深,對某一部分或幾部分進(jìn)行重新分析、設(shè)計、實施。本論文主要從系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施與使用等幾個方面進(jìn)行介紹【關(guān)鍵詞】 成績管理; 成績
8、查詢; c語言; 面向過程abstract this system according to the development requirements are mainly applied in education system of education , the daily work of the digital archives management of student performance. this system can make the college development staff to reduce the working pressure , educational
9、and teaching to the various services and information management , also can reduce the use of force , accelerate query speed , strengthen management , as well as the national departments about the pace of normalization , make each management standardized.at present , the school work multifarious , ma
10、terial more , though various management information system has entered the university , but has not been popular , and for students' performance management , it has been a complete and unified system. therefore , the development of a suitable and the populace , compatibility good system is very
11、necessary.this system in the process of development , pay attention to the operation of the business process , and strive to system of comprehensive , generalization , makes this system not only applicable to a education institutions. on the choice of methods in the development life cycle method , a
12、 method of combining with the prototype , follow the system research and systematic analysis , system design and system implementation , four main stages , and the specific design in the design , taking the evolution as users of prototype , the use of system and the deepening understanding of a part
13、 or a few parts for analysis , design and implementation. this thesis mainly from the system analysis , system design and system implementation and use etc.【key words】 achievement management; achievement query ; c programming language ; procedure-oriented目錄第1章 緒 論11.1 教務(wù)管理系統(tǒng)概述11.1.1 管理信息系統(tǒng)的概念11.1.2
14、課題背景11.1.3 目的背景與意義11.1.4 項目開發(fā)的目標(biāo)21.2 面向過程編程的基礎(chǔ)知識21.2.1 面向過程基本概念21.2.2 使用面向過程的c語言簡介2第2章 需求分析42.1 目標(biāo)42.2 要求42.3 模塊分析和介紹62.4 項目要求72.5 學(xué)生成績管理系統(tǒng)的功能7第3章 模塊設(shè)計93.1 主模塊93.2 添加學(xué)生信息93.3 顯示學(xué)生信息93.4 排序?qū)W生信息93.5 查找學(xué)生信息9第4章 詳細(xì)設(shè)計與實現(xiàn)11第5章 流程圖13第6章 源代碼146.1 數(shù)據(jù)結(jié)構(gòu)與函數(shù)聲明的頭文件146.2 主控程序模塊156.3 登錄界面模塊166.4 學(xué)生界面模塊186.5 管理員界面模
15、塊206.6 一些基本的操作函數(shù)模塊22第7章 總結(jié)與展望32致 謝33參 考 文 獻(xiàn)34第1章 緒 論本章介紹學(xué)生學(xué)籍管理系統(tǒng)的有關(guān)知識、面向過程的編程技術(shù)以及應(yīng)用程序的開發(fā)方法和開發(fā)過程等基礎(chǔ)理論知識,這是深入了解后續(xù)內(nèi)容的必要準(zhǔn)備。1.1 教務(wù)管理系統(tǒng)概述1.1.1 管理信息系統(tǒng)的概念管理信息系統(tǒng)(management information systems,簡稱mis),是一個不斷發(fā)展的新型學(xué)科,mis的定義隨著計算機技術(shù)和通信技術(shù)的進(jìn)步也在不斷更新,在現(xiàn)階段普遍認(rèn)為mis 是人為或計算機設(shè)備以及其他信息處理手段組成并用于管理信息的系統(tǒng)。包括以下幾個基本概念: ( 1 ) mis的對象
16、就是信息。信息是經(jīng)過加工的對決策者有價值的數(shù)據(jù)。信息的主要特征是來源分散,數(shù)量龐大。信息來源于生產(chǎn)第一線、社會環(huán)境、市場以及行政管理等部門。信息具有時間性。 ( 2 ) 系統(tǒng)是由相互聯(lián)系、相互作用的若干要素按一定的規(guī)則組成并具有一定功能的整體。 系統(tǒng)由輸入、處理、輸出、反饋、控制等五個基本要素組成。 ( 3 ) 管理信息由信息的采集、信息的傳遞、信息的儲存、信息的加工、信息的維護(hù)和信息的使用等五個方面組成。 mis包括計算機、網(wǎng)絡(luò)通信設(shè)備等硬件成分,也包括操作系統(tǒng)、應(yīng)用軟件包等軟件成分,并隨著計算機技術(shù)和通信技術(shù)的迅速發(fā)展還會出現(xiàn)更多的內(nèi)容。1.1.2 課題背景該項目開發(fā)的軟件為學(xué)校學(xué)生信息管
17、理系統(tǒng)軟件,是鑒于目前學(xué)校學(xué)生人數(shù)劇增,學(xué)生信息呈爆炸性增長的前提下,學(xué)校對學(xué)生信息管理的自動化與準(zhǔn)確化的要求日益強烈的背景下構(gòu)思出來的,該軟件設(shè)計完成后可用于所有教育單位 ( 包括學(xué)校、學(xué)院等等 ) 的學(xué)生信息的管理。 目前社會上信息管理系統(tǒng)發(fā)展飛快,各個企事業(yè)單位都引入了信息管理軟件來管理自己日益增長的各種信息,學(xué)生管理系統(tǒng)也是有了很大的發(fā)展。商業(yè)化的學(xué)生信息管理軟件也不少,但本系統(tǒng)完全獨立開發(fā) , 力求使系統(tǒng)功能簡潔明了,但功能齊全且易于操作。1.1.3 目的背景與意義學(xué)生信息管理系統(tǒng)是一個教育單位不可缺少的部分。一個功能齊全、簡單易用的信息管理系統(tǒng)不但能有效地減輕學(xué)校相關(guān)工作人員的工作
18、負(fù)擔(dān),它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要。所以學(xué)生信息管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案、統(tǒng)計和查詢數(shù)據(jù),這種管理方式存在著許多缺點,如:效率低、保密性差 , 人工的大量浪費。另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù) , 這對于查找、更新和維護(hù)都帶來了不少困難。隨著科學(xué)技術(shù)的不斷提高,計算機科學(xué)日漸成熟,其強大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會的各個領(lǐng)域并發(fā)揮著來越重要的作用。作為計算機應(yīng)用的一部分,使用計算機對學(xué)校的各類信息進(jìn)行管理,具有手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查詢方便、效率高、可靠性好、存儲量大
19、、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學(xué)校信息管理的效率,也是一個單位科學(xué)化、正規(guī)化管理 , 與世界接軌的重要條件。1.1.4 項目開發(fā)的目標(biāo) 建立學(xué)生信息管理系統(tǒng),采用計算機對學(xué)生信息進(jìn)行管理,進(jìn)一步提高辦學(xué)效益和現(xiàn)代化水平。幫助廣大教師提高工作效率,實現(xiàn)學(xué)生信息管理工作流程的系統(tǒng)化、規(guī)范化和自動化。1.2 面向過程編程的基礎(chǔ)知識1.2.1 面向過程基本概念面向過程其實是最為實際的一種思考方式,就是算面向?qū)ο蟮姆椒ㄒ彩呛忻嫦蜻^程的思想。可以說面向過程是一種基礎(chǔ)的方法,它考慮的是實際的實現(xiàn)。一般的面向過程是從上往下步步求精。所以面向過程最重要的是模塊化的思想方法。對比較面向?qū)ο?/p>
20、,面向?qū)ο蟮姆椒ㄖ饕前咽挛锝o對象化,對象包括屬性與行為。當(dāng)程序規(guī)模不是很大時,面向過程的方法還會體現(xiàn)出一種優(yōu)勢,因為程序的流程很清楚,按著模塊與函數(shù)的方法可以很好的組織。1.2.2 使用面向過程的c語言簡介1. c語言c言是一種面向過程的計算機程序設(shè)計語言,它是目前眾多計算機語言中舉世公認(rèn)的優(yōu)秀的結(jié)構(gòu)程序設(shè)計語言之一。它由美國貝爾研究所的d.m.ritchie于1972年推出。1978后,c語言已先后被移植到大、中、小及微型機上。 c語言發(fā)展如此迅速,而且成為最受歡迎的語言之一,主要因為它具有強大的功能。許多著名的系統(tǒng)軟件,如dbase 都是由c 語言編寫的。用c 語言加上一些匯編語言子程序
21、,就更能顯示c 語言的優(yōu)勢了,像pc- dos 、wordstar等就是用這種方法編寫的。2. c 語言特點c語言是一種成功的系統(tǒng)描述語言,用c語言開發(fā)的unix操作系統(tǒng)就是一個成功的范例。同時c語言又是一種通用的程序設(shè)計語言,在國際上廣泛流行。世界上很多著名的計算公司都成功的開發(fā)了不同版本的c語言,很多優(yōu)秀的應(yīng)用程序也都使用c語言開發(fā)的,它是一種很有發(fā)展前途的高級程序設(shè)計語言。(1)c是中級語言。它把高級語言的基本結(jié)構(gòu)和語句與低級語言的實用性結(jié)合起來。c 語言可以像匯編語言一樣對位、字節(jié)和地址進(jìn)行操作, 而這三者是計算機最基本的工作單元。 (2)c是結(jié)構(gòu)式語言。結(jié)構(gòu)式語言的顯著特點是代碼及數(shù)
22、據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦?,便于使用、維護(hù)以及調(diào)試。c 語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結(jié)構(gòu)化。(3)c語言功能齊全。具有各種各樣的數(shù)據(jù)類型,并引入了指針概念,可使程序效率更高。另外c語言也具有強大的圖形功能,支持多種顯示器和驅(qū)動器。而且計算功能、邏輯判斷功能也比較強大,可以實現(xiàn)決策目的的游戲。(4)c語言適用范圍大。適合于多種操作系統(tǒng),如windows、dos、unix等等;也適用于多種機型。 c語言對編寫需要硬件進(jìn)行操作的場合,明顯優(yōu)于其它解釋型高級語言,有
23、一些大型應(yīng)用軟件也是用c語言編寫的。 c語言具有繪圖能力強,可移植性,并具備很強的數(shù)據(jù)處理能力,因此適于編寫系統(tǒng)軟件,三維,二維圖形和動畫。它是數(shù)值計算的高級語言。(5) c語言文件由數(shù)據(jù)序列組成,可以構(gòu)成二進(jìn)制文件或文本文件。 常用的c語言ide(集成開發(fā)環(huán)境)有microsoft visual c+,dev-c+,code:blocks,borland c+,watcom c+ ,borland c+ builder,gnu djgpp c+ ,lccwin32 c compiler 3.1,high c,turbo c,c-free,win-tc 等等 對于一個初學(xué)者,microsoft
24、 visual c+是一個比較好的軟件。界面友好,功能強大,調(diào)試也很方便。第2章 需求分析2.1 目標(biāo) ( 1 ) 掌握和利用c語言進(jìn)行程序設(shè)計的能力。 ( 2 ) 理解和運用結(jié)構(gòu)化程序設(shè)計的思想和方法。 ( 3 ) 掌握開發(fā)一個小型實用系統(tǒng)的基本方法。 ( 4 ) 學(xué)會調(diào)試一個較長程序的基本方法。 ( 5 ) 掌握書寫程序設(shè)計開發(fā)文檔的能力(書寫設(shè)計報告)。2.2 要求學(xué)生信息管理系統(tǒng)的目標(biāo)是為方便統(tǒng)一管理學(xué)生的信息并為管理員和學(xué)生提供一個信息共享和查詢的平臺。學(xué)生信息包括:(變量的類型和長度要自己根據(jù)需求來定,如果超過對應(yīng)的存儲長度要有對應(yīng)的提示)。學(xué)號 姓名 密碼 年齡 性別 數(shù)學(xué)成績
25、語文成績 c語言成績 : :試設(shè)計一個學(xué)生信息管理系統(tǒng),使之能提供以下幾項功能:(1)該系統(tǒng)以菜單方式工作;比如:管理員查找按序號查找(2)登錄功能:系統(tǒng)啟動后有提示進(jìn)入登錄界面;使用超級管理員用戶名和密碼登錄,比如用戶名“admin”,密碼:“123456”。學(xué)生用用戶名和密碼登錄。對于密碼可選擇實現(xiàn)隱藏密碼功能(可選項)。用戶名和密碼正確則提示登陸成功。顯示歡迎進(jìn)入系統(tǒng)界面:“歡迎管理員登錄”或“歡迎*同學(xué)登錄”,之后顯示操作界面;管理員和學(xué)生有不同的操作界面。如果輸入用戶名和密碼錯誤,需要有提示,如果輸入錯誤超過三次則自動退出系統(tǒng)。 (3)學(xué)生信息錄入功能(學(xué)生信息用文件形式保存)-輸入
26、實現(xiàn)對學(xué)生信息基本信息的錄入,其中名次根據(jù)成績自動計算(添加)。注意:學(xué)號不能重復(fù),名字可重復(fù)如果學(xué)號是自動加1生成,在刪除一個已存在的學(xué)號時,需考慮再次添加時該學(xué)號能否使用成績錄入時,要有輸入驗證(0-100) 其他輸入同樣要有輸入驗證(如:性別),如超出長度和范圍要有提示。(4)查詢、排序功能-算法(按學(xué)號查找,按姓名查找,根據(jù)班級群體查找,把屬于這個班的學(xué)生全部顯示)(5)修改學(xué)生信息 修改密碼(包括管理員和學(xué)生個人)(可選項) 輸入:輸入舊密碼,輸入兩次新密碼。 流程:檢驗舊密碼是否正確,如不正確提示重新輸入舊碼;如正確,檢驗兩次輸入的新密碼是否一致,如不一致,提示重新輸入密碼,如一致
27、,用新密碼覆蓋舊密碼。 修改學(xué)生信息(1)管理員身份:可以修改學(xué)生的所有信息;(2)可設(shè)置不同課程角色的管理員可以修改對應(yīng)的成績;(可選項)(3)學(xué)生身份:修改密碼;(可選項)。 注意:在修改信息過程中,要有提示,保存修改與否。(6)刪除信息操作在查找到某一條學(xué)生信息后,需要刪除時,需要有提示是否確認(rèn)刪除?確認(rèn)刪除后,要釋放內(nèi)存空間。(7)保存學(xué)生信息修改后的學(xué)生信息要保存到文件中,以保證修改后的學(xué)生信息,在以學(xué)生身份登錄時可以登錄并完整顯示修改后的信息;當(dāng)系統(tǒng)啟動后,從文件中讀取信息,將數(shù)據(jù)讀取到內(nèi)存當(dāng)中。(8)退出系統(tǒng)系統(tǒng)中的數(shù)據(jù)如果有增,刪,改等改動,在退出時要提示是否保存。2.3 模塊
28、分析和介紹對學(xué)生管理系統(tǒng)進(jìn)行分析后可做如下的模塊化設(shè)計:系統(tǒng)主界面模塊實現(xiàn)功能:完成系統(tǒng)的界面處理,如主菜單界面。輸入模塊實現(xiàn)功能:按順序?qū)⒂蓪W(xué)號,姓名、性別、密碼、年齡、班級、數(shù)學(xué)成績、語文成績、c語言成績,名次等依次輸入。當(dāng)有提示是否繼續(xù)錄入時,選擇no時,數(shù)據(jù)輸入完畢。并同時將所輸入的數(shù)據(jù)寫入文件中,比如(stud_txt)。刪除模塊實現(xiàn)功能:在已經(jīng)存儲的文件中刪除指定的或者經(jīng)過查找后找到的學(xué)生信息,并釋放內(nèi)存空間,刪除所有相關(guān)的信息。查找模塊實現(xiàn)功能:在已經(jīng)存儲的文件中查找任一指定的學(xué)生信息,可以按照姓名,學(xué)號,來實現(xiàn)查找。輸出模塊實現(xiàn)功能:當(dāng)實行顯示信息功能時,輸出所創(chuàng)建的文件中包含
29、的全部學(xué)生信息。排序模塊實現(xiàn)功能:對已經(jīng)存儲在文件中的學(xué)生信息,根據(jù)成績從高到低排序,存儲,并在名次中顯示出來排序結(jié)果。修改模塊實現(xiàn)功能:在已經(jīng)存儲在文件中的學(xué)生的信息進(jìn)行修改,根據(jù)學(xué)生學(xué)號找到要修改的學(xué)生信息,然后對其進(jìn)行修改,可修改所有信息,如果遇到不需修改部分,輸入回車鍵跳過。2.4 項目要求(1)程序書寫格式,參照教材 c高級編程 第五章高質(zhì)量編程規(guī)范(p.113-p.135)(2)程序的注釋參考教材編碼規(guī)范。(3)不同功能的函數(shù)要實現(xiàn)模塊編程,放在不同的文件當(dāng)中。 ( 下例中僅供參考 ) 比如:/name/srcode/ main.cmenu.cmenu.hstudent.cstud
30、ent.h:2.5 學(xué)生成績管理系統(tǒng)的功能1-按學(xué)號查詢學(xué)生信息2-按姓名查詢學(xué)生信息3-顯示所有學(xué)生信息4-添加學(xué)生信息5-刪除學(xué)生信息6-修改學(xué)生信息7-保存學(xué)生信息文件8-讀入學(xué)生信息文件9-退出此項目主要考察我對結(jié)構(gòu)體、指針、文件的操作,以及c語言算法的掌握,所以完成此題目要求較高的設(shè)計能力,尤其是要有大局意識。如何調(diào)試程序也非常重要,通過這個程序可學(xué)到以前調(diào)試程序沒有的經(jīng)驗。第3章 模塊設(shè)計將學(xué)生成績管理系統(tǒng)劃分為以下幾個模塊3.1 主模塊功能概述:(1) 提供系統(tǒng)菜單的顯示功能(2)提供打開文件,并導(dǎo)入文件記錄的功能(3)提供保存文件信息的功能3.2 添加學(xué)生信息功能:(1) 根據(jù)
31、輸入的相關(guān)信息,將學(xué)生信息添加到文件中 3.3 顯示學(xué)生信息功能:(1) 將文件中的所有信息完全顯示3.4 排序?qū)W生信息功能:(排序分為升序和降序兩種排序方式) 根據(jù)平均分進(jìn)行排序3.5 查找學(xué)生信息功能:(查找學(xué)生信息包含根據(jù)輸入學(xué)號進(jìn)行查找和根據(jù)輸入的姓名進(jìn)行查找兩種方式,并根據(jù)返回的學(xué)生信息,進(jìn)行以下三種操作)(1)查詢學(xué)生信息,直接返回找到的信息(2)修改學(xué)生信息,根據(jù)找到的學(xué)生信息,對其進(jìn)行修改(3)刪除學(xué)生信息,根據(jù)找到的相關(guān)學(xué)生信息,從文件中刪除這條記錄第4章 詳細(xì)設(shè)計與實現(xiàn) 程序設(shè)計中用到的學(xué)生信息結(jié)構(gòu)體類型在單獨的頭文件student.h中定義相應(yīng)的數(shù)據(jù)結(jié)構(gòu)體類型,全局變量,
32、和宏名:size 記錄結(jié)構(gòu)體的大小定義學(xué)生結(jié)構(gòu)體 stu,包含相關(guān)的學(xué)生信息#define size 5 struct student/定義學(xué)生信息結(jié)構(gòu)體int sid ;char sname50 ;char password32 ;int age ;char sex ;float math ;float chinese ;float clang ;stu 2 * size ;#define size 5int log_in ( struct student stu , int length ) ;/登錄界面int num1 , _id ;/全局變量,追蹤已經(jīng)錄入學(xué)生信息數(shù)量int menu
33、( ) ;/管理員操作菜單int menu2 ( ) ;/學(xué)生操作菜單void scan ( struct student stu , int i ) ;/輸入函數(shù)void save ( int num ) ;/保存至文件夾函數(shù)int display ( ) ;/從文件夾讀取至內(nèi)存void print ( struct student stu , int length ) ;/輸出函數(shù)void jiemian ( ) ;/管理員界面void chazao ( ) ;/查找界面 int chazao1 ( struct student stu , int length , int num ) ;
34、/根據(jù)學(xué)號查找返回下標(biāo) int chazao2 ( struct student stu , int length , char str150 ) ; /根據(jù)姓名查找,返回下標(biāo) void chazao3 ( struct student stu , int length , int num ) ;/根據(jù)學(xué)號查找并輸出 void chazao4 ( struct student stu , int length , char str150 ) ; /根據(jù)姓名查找并輸出 void chazao3 ( num1 ) ; void tianjia ( ) ;/添加學(xué)生信息 void shanchu (
35、 ) ;/刪除學(xué)生信息 void del1 ( struct student stu , int length , char str150 ) ;/根據(jù)姓名刪除 void del ( struct student stu , int length , int num ) ;/根據(jù)學(xué)號刪除void xiugai ( ) ;/根據(jù)學(xué)號修改學(xué)生信息void xiugai1 ( ) ;/根據(jù)姓名修改學(xué)生信息void baochun1 ( ) ;/不保存退出void baochun ( num1 ) ;/保存退出void admin ( ) ;/關(guān)于管理員界面的函數(shù)void stude ( int id
36、 ) ;/關(guān)于學(xué)生界面的函數(shù)void paixu ( struct student stu , int length ) ;/排序函數(shù)float vel ( int j ) ;/求平均值函數(shù)第5章 流程圖圖1.1 程序流程圖第6章 源代碼6.1 數(shù)據(jù)結(jié)構(gòu)與函數(shù)聲明的頭文件/*. * 文件名:student.h* 日期: 2015.5.22 * 作者:葛國星* 功能:頭文件.*/#define size 5 struct student/定義學(xué)生信息結(jié)構(gòu)體int sid ;char sname50 ;char password32 ;int age ;char sex ;float math ;
37、float chinese ;float clang ;stu 2 * size ;#define size 5int log_in ( struct student stu , int length ) ;/登錄界面int num1 , _id ;/全局變量 , 追蹤已經(jīng)錄入學(xué)生信息數(shù)量int menu ( ) ;/管理員操作菜單int menu2 ( ) ;/學(xué)生操作菜單void scan ( struct student stu , int i ) ;/輸入函數(shù)void save ( int num ) ;/保存至文件夾函數(shù)int display ( ) ;/從文件夾讀取至內(nèi)存void
38、print ( struct student stu , int length ) ;/輸出函數(shù)void jiemian ( ) ;/管理員界面void chazao ( ) ;/查找界面 int chazao1 ( struct student stu , int length , int num ) ;/根據(jù)學(xué)號查找返回下標(biāo) int chazao2 ( struct student stu , int length , char str150 ) ; /根據(jù)姓名查找 , 返回下標(biāo) void chazao3 ( struct student stu , int length , int nu
39、m ) ;/根據(jù)學(xué)號查找并輸出 void chazao4 ( struct student stu , int length , char str150 ) ; /根據(jù)姓名查找并輸出 void chazao3 ( num1 ) ; void tianjia ( ) ;/添加學(xué)生信息 void shanchu ( ) ;/刪除學(xué)生信息 void del1 ( struct student stu , int length , char str150 ) ;/根據(jù)姓名刪除 void del ( struct student stu , int length , int num ) ;/根據(jù)學(xué)號刪除
40、void xiugai ( ) ;/根據(jù)學(xué)號修改學(xué)生信息void xiugai1 ( ) ;/根據(jù)姓名修改學(xué)生信息void baochun1 ( ) ;/不保存退出void baochun ( num1 ) ;/保存退出void admin ( ) ;/關(guān)于管理員界面的函數(shù)void stude ( int id ) ;/關(guān)于學(xué)生界面的函數(shù)void paixu ( struct student stu , int length ) ;/排序函數(shù)float vel ( int j ) ;/求平均值函數(shù)6.2 主控程序模塊/*. * 文件名:main.c * 日期: 2015.5.22 * 作者:葛
41、國星* 功能:主函數(shù).*/#include <stdio.h>#include "student.h"#include <stdlib.h>int main ( ) int i = 0 ;int menunum = 0 ;/display ( 2*size ) ;num1 = display ( ) ;/printf ( "%d" , num1 ) ;menunum = log_in ( stu , num1 ) ;/根據(jù)log_in函數(shù)返回值確定管理員或者學(xué)生的操作界面(為1進(jìn)入管理員界面 ;為2進(jìn)入學(xué)生界面) switch (
42、 menunum ) case 1:getchar ( ) ;admin ( ) ;break ;case 2:getchar ( ) ;stude ( _id ) ;case 0:exit ( 0 ) ;return 0 ;6.3 登錄界面模塊/*. * 文件名:login.c * 日期: 2015.5.22 * 作者:葛國星* 功能:登錄界面.*/#include <stdio.h>#include <stdlib.h>#include "student.h"int log_in ( struct student stu , int length
43、 ) int times = 0; / 用戶輸入賬號密碼的次數(shù)char x10 , k100 ;char d32 = "123456" ;/設(shè)置管理員登錄密碼int i , n = 0 ;int _a_id = 111 ; /設(shè)置管理員登錄帳號char _password32 ; int _i ;/學(xué)生在結(jié)構(gòu)體中的下標(biāo) for ( ; ; times+ ) if ( times = 3 ) /輸入次數(shù)達(dá)到3次,關(guān)閉程序 printf ( "輸入錯誤已達(dá)3次 , 程序關(guān)閉!n" ) ; return 0 ; printf ( "nnn*請您輸入用
44、戶名和密碼*n" ) ; printf ( " 用戶名 : " ) ; scanf ( "%d" , &_id ) ; printf ( " 請輸入密碼 : " ) ;scanf ( "%s" , &_password ) ; if ( _id = _a_id && ( strcmp ( _password , d ) = 0 ) ) /驗證登錄身份是否為管理員 printf ( " 用戶名密碼驗證成功 , 歡迎管理員登錄!nnn " ) ; retur
45、n 1 ; else if ( _id != _a_id ) /驗證登錄身份是否為已錄入信息的學(xué)生 _i = chazao1 ( stu , num1 , _id ) ; if ( ( strcmp ( _password , stu_i.password ) = 0 ) ) printf ( "歡迎%s同學(xué)登錄!nn" , stu_i.sname ) ; return 2; if ( times < 2 ) /用戶名或密碼錯誤進(jìn)行警告,提示剩余登錄次數(shù) printf ( "用戶名或密碼輸入錯誤 , 還有%d次機會 , 請再試n" , 2-times ) ; 6.4 學(xué)生界面模塊/*. * 文件名:menu2.c * 日期: 2015.5.22 * 作者:葛國星* 功能:學(xué)生界面.*/#include <stdio.h>#include "s
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新能源汽車市場營銷策略考試題及答案
- 2025年度企業(yè)安全生產(chǎn)知識競賽題庫及答案(共197題)
- 電商種草經(jīng)濟崛起下的內(nèi)容營銷策略研究報告
- 空間分析考試題及答案
- 數(shù)字彼此關(guān)系試題及答案
- 安全工程師考試組織能力試題及答案
- 氣瓶使用管理試題及答案
- 2025房地產(chǎn)工程管理面試試題及答案
- 綜合崗位面試試題及答案
- 教育行業(yè)2025年并購整合策略:產(chǎn)業(yè)鏈升級與創(chuàng)新路徑研究報告
- 韋氏測試題及答案
- 歷年貴州特崗試題及答案
- 2025怎樣正確理解全過程人民民主的歷史邏輯、實踐邏輯與理論邏輯?(答案3份)
- GB/T 45501-2025工業(yè)機器人三維視覺引導(dǎo)系統(tǒng)通用技術(shù)要求
- 財務(wù)英文詞匯大全
- 《基于繪本閱讀的幼兒語言能力發(fā)展研究(論文)》9300字
- 印巴戰(zhàn)爭(修改稿)
- 工程項目管理實施方案(5篇)
- 2021年全國質(zhì)量獎現(xiàn)場匯報材料-基礎(chǔ)設(shè)施、設(shè)備及設(shè)施管理過程課件
- 防爆電氣失爆判別標(biāo)準(zhǔn)和常見失爆現(xiàn)象匯總
- 10kV高壓開關(guān)柜整定計算書
評論
0/150
提交評論