




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
編程基礎(chǔ)
名稱:電子詞庫軟件
C語言編程培訓(xùn)任務(wù)書
題目:學(xué)生選修課系統(tǒng)
一、設(shè)計(jì)目的
I.進(jìn)一步掌握和使用c語言進(jìn)行編程的能力;
2.進(jìn)一步理解和應(yīng)用結(jié)構(gòu)化編程的思想和方法;
3、掌握開發(fā)小型實(shí)用系統(tǒng)的基本方法;
4、學(xué)習(xí)調(diào)試較長程序的基本方法;
5、學(xué)會(huì)用流程圖或NS圖來表示算法;
6.掌握編寫培訓(xùn)開發(fā)文檔的能力(編寫培訓(xùn)報(bào)告)
二、設(shè)計(jì)任務(wù)及能力
假設(shè)有n門課程,每門課程都有課程編號(hào)、課程名稱、課程性質(zhì)、總學(xué)時(shí)、教學(xué)時(shí)
數(shù)、實(shí)驗(yàn)或計(jì)算機(jī)學(xué)時(shí)、學(xué)分、課程學(xué)期等信息、,學(xué)生可以自由選擇課程:必填(例如
總學(xué)分不少于60)。嘗試設(shè)計(jì)一個(gè)選修課系統(tǒng),提供以下功能:
1、系統(tǒng)工作在菜單模式。
2.課程信息輸入功能一一輸入
3.課程信息瀏覽功能-輸出
4.查詢功能:-算法(二選一)
1)根據(jù)學(xué)分查詢課程信息。
2)根據(jù)課程性質(zhì)查詢課程信息。
5.學(xué)生選修課
6.按課程編號(hào)順序插入課程信息。
7.按課程名稱刪除課程信息。
8.以課程名稱的字典順序輸出所有課程信息。
三、設(shè)計(jì)要求
1、用C語言實(shí)現(xiàn)系統(tǒng);
2、使用結(jié)構(gòu)和數(shù)組設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu);
3、系統(tǒng)具有添加、查詢、插入、排序等基本功能;
4、要求系統(tǒng)各功能模塊以函數(shù)的形式實(shí)現(xiàn);
5.資料:每名學(xué)員一份培訓(xùn)指導(dǎo)書,并放入統(tǒng)一資料箱;
6.CD-ROM:每個(gè)學(xué)生的文件和程序資料都建在一個(gè)以他/她的學(xué)號(hào)命名的文件夾中,
每個(gè)班級(jí)的負(fù)責(zé)人需要收集每個(gè)學(xué)生的文件,將它們放在班級(jí)命名的文件夾中,刻錄成
光盤,放入專用資料袋中。
四。提交結(jié)果
1.設(shè)計(jì)任務(wù)書一本(學(xué)校統(tǒng)一格式)
2.設(shè)計(jì)規(guī)范,包括:
1)中文摘要為100字,3-5個(gè)關(guān)鍵詞。
2)培訓(xùn)主題、內(nèi)容和要求。
3)整體設(shè)計(jì)(包括幾個(gè)功能模塊)。
4)詳細(xì)設(shè)計(jì)(各功能模塊的具體實(shí)現(xiàn)算法-流程圖)
5)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)說明、各模塊(功能)功能介紹、參數(shù)說明等。
6)調(diào)試分析(包括每個(gè)模塊的測(cè)試用例和測(cè)試結(jié)果。)
7)總結(jié)(培訓(xùn)完成了哪些功能,有哪些需要改進(jìn)的地方,培訓(xùn)有哪些收獲,調(diào)試
程序的經(jīng)驗(yàn)等)
8)參考文獻(xiàn)、信件等。
五、主要參考資料
1.王連祥?!禖/C++編程》大學(xué).2013.7
2.譚浩強(qiáng)C語言程序設(shè)計(jì)學(xué)習(xí)指南(第2版)清華大學(xué)。2012年12月
3.李、龔以健《C語言編程實(shí)踐指導(dǎo)教程》華中科技大學(xué)2009年6月出版
4.曉東、洪振,《C語言編程與應(yīng)用》,人民郵電.2009.4
5.郭翠英《C語言課程設(shè)計(jì)案例匯編》中國水利水電2004.03.01
6.郭友強(qiáng),C語言程序設(shè)計(jì),清華大學(xué),2009年2月1日
7.程丹,穎,那軍,C語言程序設(shè)計(jì)案例實(shí)踐,清華大學(xué),2009年2月1日
8.《C語言程序設(shè)計(jì)教程》,麗娟,人民郵電,2013年1月1日
9.吳亞莉、王永玲、杰亞莉的C語言程序設(shè)計(jì),清華大學(xué),2009年2月1日
六、每個(gè)階段的時(shí)間表(共1周)
日期允許地點(diǎn)表現(xiàn)老師簽名
教師解釋設(shè)計(jì)要求并準(zhǔn)備參考資
周一課堂
料。
周二系統(tǒng)分析與方案設(shè)計(jì)課堂
周三方案設(shè)計(jì)與編程課堂
周四調(diào)試程序并編寫訓(xùn)練指令。課堂
星期五完成培訓(xùn)指導(dǎo)并回復(fù)。課堂
摘要
20世紀(jì)末,隨著計(jì)算機(jī)科學(xué)的發(fā)展,網(wǎng)絡(luò)的應(yīng)用越來越廣泛,為用戶提供了更加周
到、人性化的服務(wù)。本文研究了一種基于文件存儲(chǔ)的學(xué)生選修課系統(tǒng)。本系統(tǒng)是根據(jù)現(xiàn)
代校園發(fā)展為學(xué)生設(shè)計(jì)的課程系統(tǒng)。方便老師和家長來校了解學(xué)生成績、近期獎(jiǎng)懲情況
等。隨著教育改革的深化和素質(zhì)教育的加強(qiáng)以及完整學(xué)分制的實(shí)施,選修課發(fā)揮在學(xué)生
的培訓(xùn)計(jì)劃中扮演著越來越重要的角色!使用在線選課系統(tǒng)后,您可以在開課前在線選
課。每個(gè)學(xué)生的課程在開課前就已經(jīng)確定了,不用浪費(fèi)體力去選課,還可以合理、均勻
地分配教學(xué)資源。
關(guān)鍵詞:學(xué)生選課;C)語言;文件內(nèi)存
目錄
1mio理論1
1.1基本容量1
1.2發(fā)展趨勢(shì)1
1.3用途和特點(diǎn)1
2問題需求分析3
2.1提出的問題3
2.2問題3
3整體設(shè)計(jì)4
3.1整體設(shè)計(jì)思路4
五介紹及框圖4
1米奧理論
1.1基本容量
隨著教育改革的深入和素質(zhì)教育的加強(qiáng)以及完整學(xué)分制的實(shí)施,選修課在學(xué)生的培
養(yǎng)計(jì)劃中發(fā)揮著越來越重要的作用!學(xué)生在選擇課程時(shí),應(yīng)查看每門課程的詳細(xì)信息,
并選擇一些感興趣的課程。他們需要生成課程表,發(fā)現(xiàn)課程沖突后可以修改之前選擇的
信息、。隨著高校課程改革的不斷深入,學(xué)校規(guī)模不斷擴(kuò)大,課程項(xiàng)目數(shù)量不斷增加。為
解決學(xué)生選修課管理中繁雜的人工操作,制定選修課系統(tǒng)迫在眉睫。全校選修課的目的
是拓寬學(xué)生的知識(shí)面,加強(qiáng)學(xué)生的素質(zhì)教育,培養(yǎng)復(fù)合型高級(jí)人才,具有不可替代的重
要性!
1.2發(fā)展趨勢(shì)
對(duì)于復(fù)雜的信息管理,計(jì)算機(jī)可以充分發(fā)揮其優(yōu)勢(shì)。計(jì)算機(jī)信息管理與信息管理系
統(tǒng)的發(fā)展密切相關(guān),信息管理系統(tǒng)是系統(tǒng)管理的前提。該系統(tǒng)旨在管理學(xué)生的選課信息。
當(dāng)今是一個(gè)飛速發(fā)展的信息時(shí)代,各行各業(yè)都離不開信息處理,這是計(jì)算機(jī)在信息
系統(tǒng)中得到廣泛應(yīng)用的環(huán)境。計(jì)算機(jī)最大的優(yōu)點(diǎn)是可以管理信息和控制信息,不僅提高
了工作效率,而且大大提高了它的安全性。
基于這個(gè)問題,我認(rèn)為有必要建立一個(gè)學(xué)生選課系統(tǒng),使學(xué)生選課的信息管理有規(guī)
律、系統(tǒng)化、程序化,避免學(xué)生選課管理的隨意性,提高信息的速度和準(zhǔn)確性。處理,
并能夠及時(shí)、準(zhǔn)確、有效地查詢和修改選課情況。
1.3用途和特點(diǎn)
現(xiàn)代社會(huì)是信息社會(huì),信息無處不在。在生產(chǎn)、流通領(lǐng)域和各個(gè)部門,每天都在處
理信息。如何處理如此多的信息已成為一個(gè)重要的問題。學(xué)生在學(xué)期開始選課是教學(xué)活
動(dòng)中的一個(gè)重要環(huán)節(jié)。如果這個(gè)環(huán)節(jié)管理得好,不僅可以加快學(xué)生的選課,還可以提高
整個(gè)活動(dòng)的效率。
一般來說,大學(xué)有數(shù)以萬計(jì)的學(xué)生。每個(gè)學(xué)期開始時(shí),學(xué)生都要選擇課程,從而產(chǎn)
生大量的課程信息。考慮到用戶的方便和處理的信息量,系統(tǒng)需要完成課程信息的輸入、
保存、查詢、修改、刪除等各個(gè)過程,并可以打印出課程信息表。
系統(tǒng)的主要對(duì)象是需要選課的學(xué)生。根據(jù)學(xué)生選修課的變化,計(jì)算相應(yīng)的總學(xué)分。
全部選中后打印報(bào)告。系統(tǒng)還需要管理員查看和修改學(xué)生的整體課程選擇、課程信息和
學(xué)生信息。本系統(tǒng)選課方便快捷。它使用簡(jiǎn)單的界面來顯示學(xué)生的選課信息。具有應(yīng)用
簡(jiǎn)單明了、存儲(chǔ)容量大、可靠性高、性能好、使用壽命長、成本低等優(yōu)點(diǎn),可以大大提
高學(xué)生信息管理的效率。隨著c語言的發(fā)展,實(shí)現(xiàn)了對(duì)學(xué)生課程信息的輸入、修改、查
詢、刪除等簡(jiǎn)單操作,原始數(shù)據(jù)可以通過文件系統(tǒng)長期保存。
2問題需求分析
2.1提出的問題
隨著教育改革、高校規(guī)模擴(kuò)大、專業(yè)急劇增加,以教師講課為主的傳統(tǒng)教育模式已不再
適合我國高校的現(xiàn)狀。而且,安排上市時(shí)間表是一項(xiàng)非常復(fù)雜和艱巨的任務(wù)。在帕克的
過程中,除了要滿足大量的約束之外,還要解決很多的沖突。因此,利用網(wǎng)絡(luò)選課、教
學(xué)生應(yīng)該是有道理和必要的。那么如何打造在線選修課系統(tǒng)呢?如何實(shí)現(xiàn)學(xué)生隨時(shí)隨地
按照自己的日程安排在線學(xué)習(xí)?這已經(jīng)成為網(wǎng)絡(luò)選修課研究者的一大難題。
2.2問題分析
大學(xué)里總是有很多公共選修課。過去,選修課的方式是在課堂上注冊(cè)。這種方法雖
然直接,但在選課時(shí)會(huì)造成盲目性。有些班級(jí)人滿為患,而另一些則無人看管。原因是
傳統(tǒng)的選課方式是不可預(yù)測(cè)的,大家也沒有提前協(xié)調(diào)好。這種情況在高校中已經(jīng)產(chǎn)生了
很長時(shí)間,短時(shí)間內(nèi)不可能改變。使用在線選課系統(tǒng)后,您可以在開課前在線選課。每
個(gè)學(xué)生的課程在開課前就己經(jīng)確定了,不用浪費(fèi)體力去選課,還可以合理、均勻地分配
教學(xué)資源。
本系統(tǒng)開發(fā)的目的是利用信息技術(shù)和網(wǎng)絡(luò)技術(shù)幫助學(xué)生和學(xué)校管理選課的教學(xué)任務(wù)。教
育體制的改革和學(xué)生人數(shù)的急劇增加,無疑為在線選修課提供了前所未有的機(jī)遇。本系
統(tǒng)是專門為方便用戶根據(jù)自己的時(shí)間隨時(shí)隨地學(xué)習(xí)而開發(fā)的。學(xué)校將老師講課視頻直接
放到學(xué)校官網(wǎng),學(xué)生可以通過官網(wǎng)在學(xué)生選課系統(tǒng)中隨意學(xué)習(xí)。這不僅節(jié)省了學(xué)生的時(shí)
間,也為學(xué)校節(jié)省了大量的教師資源。學(xué)??梢詫⑦@部分節(jié)省下來的教師資源用于學(xué)術(shù)
研究、教育方法研究等。
目前,大部分學(xué)校都沒有完善的學(xué)生選修課體系,電腦的使用以微軟。ffice為主,無法
發(fā)揮有效作用。而且,隨著中國教育改革,學(xué)生可以選擇多種科目,這使得學(xué)校對(duì)學(xué)生
選修課的管理變得繁瑣、復(fù)雜和繁重。這種傳統(tǒng)的學(xué)校選修課模式已經(jīng)不能適應(yīng)當(dāng)前的
發(fā)展。實(shí)現(xiàn)學(xué)生選課的系統(tǒng)化、標(biāo)準(zhǔn)化、自動(dòng)化,做到全面、相對(duì)集中,為學(xué)生提供全
面的選課信息,為選課的有效管控提供有力幫助;為了及時(shí)了解選修課的情況,做好選
修課的安排。該系統(tǒng)是高校個(gè)人選課和管理的現(xiàn)代化信息平臺(tái)。學(xué)生可以通過瀏覽器在
線選課,可以查看自己的選課計(jì)劃和選課進(jìn)度。同時(shí),管理員可以通過瀏覽器添加、刪
除和修改課程。這為學(xué)生和老師節(jié)省了大量的工作。充分利用網(wǎng)上選課系統(tǒng),提高教學(xué)
選課管理效率,實(shí)現(xiàn)全面聯(lián)網(wǎng)、規(guī)范化、一體化。
3整體設(shè)計(jì)
3.1整體設(shè)計(jì)思路
通過課題分析,程序需要設(shè)計(jì)選修課管理系統(tǒng),可以輸入和修改選修課,需要主界
面和退出功能。首先,考慮到程序的數(shù)據(jù)輸入,可以設(shè)置一個(gè)管理員登錄選項(xiàng)。通過該
界面可以輸入和修改選修課。最后,您可以將輸入的課程保存到相應(yīng)的文件中。然后定
義各種功能的功能包括:查看、查詢、刪除等。另一個(gè)是學(xué)生登錄界面,可以讓學(xué)生選
擇課程、瀏覽和查詢。在此操作之前,您需要先閱讀管理員保存的文件,然后查詢其中
的內(nèi)容。學(xué)生選課后,可以將選課保存在相應(yīng)的文件中,以便下次修改。程序的邏輯結(jié)
構(gòu)是通過函數(shù)的逐層調(diào)用來實(shí)現(xiàn)的。通過中間文件的打開和關(guān)閉,可以對(duì)文件段中包含
的數(shù)據(jù)進(jìn)行操作。然后通過對(duì)課題的分析,必須實(shí)現(xiàn)的功能包括主線程對(duì)四大線程的隨
機(jī)調(diào)度和輸出結(jié)果的顯示。為了方便用戶控制和管理,我們?cè)黾恿艘恍└诵曰墓δ?
如手動(dòng)調(diào)試、運(yùn)行配置等。它主要使用序列結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)等多種基本結(jié)構(gòu)。
同時(shí),文件存儲(chǔ)信息的方式簡(jiǎn)化了程序結(jié)構(gòu),使程序更易于閱讀。另外,本系統(tǒng)采用塊
實(shí)現(xiàn)功能,所要實(shí)現(xiàn)的功能,如添加課程信息、修改課程信息、刪除課程信息、添加學(xué)
生信息和修改學(xué)生信息,由不同的子程序完成,不僅方便我們程序調(diào)試,也提高了程序
的可移植性。
為了方便用戶的控制和管理,本系統(tǒng)增加了手動(dòng)調(diào)試、運(yùn)行配置等更加人性化的功能。
它主要使用序列結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)等多種基本結(jié)構(gòu)。同時(shí),文件存儲(chǔ)信息的方
式簡(jiǎn)化了程序結(jié)構(gòu),使程序更易于閱讀。另外,本系統(tǒng)采用塊實(shí)現(xiàn)功能,所要實(shí)現(xiàn)的功
能,如添加課程信息、修改課程信息、刪除課程信息、添加學(xué)生信息和修改學(xué)生信息,
由不同的子程序完成,不僅方便我們程序調(diào)試,也提高了程序的可移植性。
3.2整體設(shè)計(jì)模塊介紹及框圖
該系統(tǒng)由一個(gè)主模塊和幾個(gè)子模塊組成。主模塊有兩個(gè)模塊:管理員和學(xué)生。管理
員模塊的主要功能是添加和刪除課程信息,而學(xué)生模塊主要管理學(xué)生信息和課程選擇。
Mainmodule
AdministratorStudentmodu
圖3-1整體模塊框圖
4詳細(xì)設(shè)計(jì)
4.1各模塊流程圖
4.L1主要功能模塊
主功能設(shè)計(jì)簡(jiǎn)單,只提供一個(gè)主菜單和幾個(gè)函數(shù)調(diào)用來顯示功能。Switch語句將
整個(gè)程序分為三個(gè)功能模塊。具體流程圖如下:
圖4-1主要功能模塊圖
4.1.2管理員模塊
管理員具有瀏覽、查詢、增刪課程、使用字符串處理功能處理密碼問題四大功能。
如果密碼正確,則可以進(jìn)入管理員模塊。否則,請(qǐng)重新輸入名稱。如果密碼輸入錯(cuò)誤3
次,則無法進(jìn)入管理員模塊。密碼時(shí)間由int變量計(jì)算。使用switch語句調(diào)用函數(shù):
end
圖4-2管理員模塊流程圖
4.1.3學(xué)生模塊
學(xué)生有四個(gè)功能:瀏覽所有課程信息、查詢課程信息、選擇選修課、瀏覽選擇的課程、
刪除錯(cuò)誤的課程等。使用switch語句調(diào)用該功能:
be
no
be
no
be
no
be
no
be
no
be
no
圖4-3學(xué)生模塊流程圖
4.1.4創(chuàng)建鏈表模塊
利用鏈表的創(chuàng)建、插入、刪除和查詢功能。體現(xiàn)為菜單選項(xiàng)的形式,可以增加課程信息、
增加學(xué)生信息、刪除課程信息、修改學(xué)生信息等。使用鏈表實(shí)現(xiàn)這些功能可以很好的與
用戶交互。
istforeachelem
entofthestruct
*
CreationfSuccessful
Vy
圖4-4鏈表創(chuàng)建流程圖
4.1.5瀏覽模塊
瀏覽模塊主要使用管理員中的“瀏覽課程”和學(xué)生功能中的“瀏覽所有課程”輸出
所有課程信息,即輸出2.txt文件中的所有內(nèi)容:
圖4-5瀏覽模塊流程圖
4.1.6查詢模塊
查詢模塊主要用于管理員功能中的“查詢課程”和學(xué)生功能模塊中的“查詢所有課
程”。查詢模塊分為三種查詢方式:按課程名稱查詢、按課程性質(zhì)查詢和按學(xué)分查詢。
每個(gè)case語句都是查詢方法之一:
hrpak
圖4-6查詢模塊流程圖
4.1.7插入鏈表模塊
插入鏈表的操作主要用于添加課程,在整個(gè)課程信息中添加一些新課程。它在添
加模塊中調(diào)用:
圖4-7插入模塊流程圖
4.1.8添加模塊
添加模塊主要用于增加課程信息,使用鏈表操作:
圖4-8添加模塊流程圖
4.1.9刪除模塊
刪除模塊主要用于管理員刪除課程信息和學(xué)生刪除自己的課程,均采用刪除鏈表
節(jié)點(diǎn)的操作:
Enddeletion
圖4-9刪除模塊流程圖
4.1.10選修課模塊
選修課模塊采用插入鏈表的操作:
begin
Enterthenumbero
圖470選修課模塊流程圖
4.1.11讀取文件模塊
文件讀取模塊用于讀取文件內(nèi)容并輸出到內(nèi)存中。輸入文件名后,即可打開指定
的文件。輸入all_sub.txt后,即可打開所有課程信息的文件。輸入my_sub.txt,即
可瀏覽學(xué)生選修課信息。
!feof(fp)
no
be
11
newSub=(SUB*)malloc(sizeof(SUB));
fscanf(fp,&newSub->num,newSub->name,newSub
->kind,&newSub->stime,&newSub->ttime,&newSu
closeadocument
Failedtoopen
圖4-11讀取文件模塊流程圖
4.1.12保存文件模塊
文件保存模塊分為兩個(gè)子程序,將修改后的信息保存到2.txt文件中。
V)
Thesystemdetectsthefi1
圖4-12文件保存模塊流程圖
4.2功能的具體實(shí)現(xiàn)和算法
4.2.1每個(gè)功能的具體功能
int()程序主函數(shù),程序入口
voidmanagers()管理員主菜單,管理員入口
voidSUB*create_form()創(chuàng)建鏈表結(jié)構(gòu)
voidsavefile()將新添加的課程信息保存到文件中。
voidsavefilelO將修改后的課程信息文件保存到文件中。
voidreadfile()讀取文件
voidprin()瀏覽所有課程
voidprint()瀏覽所有選修課
void*myInsert(SUB*subj)鏈表插入操作
void*insert()插入課程信息
void*del()刪除課程
voidchoose()選修新課---學(xué)生選課功能
voidsearch。課程信息查詢
無效學(xué)生()學(xué)生登錄門戶
4.2.1實(shí)現(xiàn)各個(gè)功能的具體算法。
本系統(tǒng)程序使用的主要算法有:二分法、冒泡排序等算法。其中,二分法用于管理員錄
入的多種課程信息操作,如添加課程信息、查找課程信息、修改課程信息、瀏覽選修課
等。以學(xué)生身份登錄輸入的課程信息的操作主要采用冒泡排序的方式。冒泡排序和二分
法是c語言中最基本的算法,但應(yīng)用非常廣泛。本系統(tǒng)主要使用二分法和冒泡排序的
搜索功能。
5.調(diào)試分析過程
5.1各模塊運(yùn)行結(jié)果
5.1.1開始跑步。
啟動(dòng)程序進(jìn)入登錄界面,輸入1:以管理員身份登錄,輸入1密碼,輸入2:以學(xué)生身份
登錄,輸入3:退出登錄界面。
"XX-X歡迎進(jìn)入學(xué)生選修課程系統(tǒng)—"XXXX
1.以管理員身份'登錄<pass”o?d1>
2.以學(xué)生身份登錄
3.退出
Chioseyournunber<l-3>:[J
圖5-1運(yùn)行結(jié)果
5.1.2管理員菜單
進(jìn)入管理員菜單。1:輸入所有要選擇的課程,2:瀏覽所有輸入的課程,3:查詢輸
入的課程,4:刪除輸入的課程,5:返回主菜單。
圖5-2管理員菜單圖
5.1.31按進(jìn)入課程模塊。
進(jìn)入課程界面,輸入課程編號(hào)、課程名稱、課程性質(zhì)、總學(xué)時(shí)、教學(xué)時(shí)數(shù)、實(shí)踐或計(jì)算
機(jī)學(xué)時(shí)、學(xué)分、開學(xué)學(xué)期。添加完成后點(diǎn)擊回車?yán)^續(xù)添加,輸入o完成添加。
tJUIUII?I
Chioseyournunber<l—5>:[10
輸入要插入的課程信息:
請(qǐng)輸入課程編號(hào):6
請(qǐng)輸入課程名稱:現(xiàn)代醫(yī)學(xué)
請(qǐng)輸入課程性質(zhì):人文
請(qǐng)輸入總學(xué)時(shí):3。
請(qǐng)輸入授課學(xué)時(shí):15
請(qǐng)輸入實(shí)踐或上機(jī)學(xué)時(shí):15
請(qǐng)輸入學(xué)分:25
請(qǐng)輸入開課學(xué)期:[
添加完畢,新信息存入文件中
繼續(xù)插入請(qǐng)按回車
加
按
結(jié)束
3。:0
程
課程
名
0稱
蓄課程性鼠國學(xué)時(shí)授課學(xué)時(shí)實(shí)驗(yàn)或上機(jī)學(xué)時(shí)學(xué)分開課學(xué)期
創(chuàng)
已
建2
放
人
意.txt,文件中
請(qǐng)
續(xù)
按^
--
圖5-3輸入課程模塊運(yùn)行結(jié)果圖
5.1.4輸入課程信息后進(jìn)入管理員瀏覽模塊。
進(jìn)入課程信息程序后,課程編號(hào)會(huì)自動(dòng)排序,并顯示輸入的課程信息結(jié)果。按任意鍵退
出該界面。
"^<1TJ
”n
總
學(xué)
程
質(zhì)
時(shí)
就
號(hào)
ch課[2
課
性
seourUn):程
編
i踣
^授課學(xué)時(shí)實(shí)踐或上機(jī)學(xué)時(shí)學(xué)分開課學(xué)期
文
人
德20
,200301
文
人
理825
220251
然
生
自
:30
352010301
嫉
自30
4節(jié)2010351
爻
^人25
S糙1510301
文
6人30
是15251
按
意
請(qǐng)15
任-■
半-.
圖5-4課程信息輸入運(yùn)行結(jié)果
5.1.5按課程性質(zhì)查詢
進(jìn)入課程查詢界面,選擇查詢方式,選擇1按課程性質(zhì)搜索,找出所有課程性質(zhì)相同的
課程,選擇3退出搜索界面。
圖5-5:管理員瀏覽模塊運(yùn)行結(jié)果圖。
5.1.6按課程學(xué)分查詢
進(jìn)入課程查詢界面,選擇查詢方式,選擇2按課程學(xué)分搜索,找出所有課程學(xué)分相同的
課程,選擇3退出搜索界面。
請(qǐng)選擇查詢方式…
一一按課程性質(zhì)查找
2-—按學(xué)分查找
3--退出查找
Chioseyournunber<l—3>"121
輸入聚查找的課程的學(xué)分
課程褊號(hào)課程名稱課程性質(zhì)總學(xué)時(shí)授課學(xué)時(shí)實(shí)踐或上機(jī)學(xué)時(shí)學(xué)分開課學(xué)期
20200301
3生物卷鼎自矮
一健康教育人文302010301
請(qǐng)按%意讖覆251510301
圖5-6按課程性質(zhì)查詢運(yùn)行結(jié)果。
5.1.7管理員按4刪除模塊。
在管理員菜單欄中輸入4刪除課程,輸入要?jiǎng)h除的課程編號(hào)完成刪除課程,回車?yán)^續(xù)刪
除課程,按0完成刪除課程。
理員菜單
一-錄入課程
2-—瀏覽課程
3--查詢課程
4--刪除課程
5---返回主菜單
IChioseyournunber<l-5>:[4]
輸入想要?jiǎng)h除的課程編號(hào):15]
繼續(xù)刪除請(qǐng)按回車
結(jié)束刪除課程按0:[0]
圖5-7管理員刪除模塊運(yùn)行結(jié)果圖
5.1.8學(xué)生菜單
進(jìn)入學(xué)生菜單欄,選擇1瀏覽所有選修課,2查詢所有課程信息,3選擇你需要選修的課
程,4瀏覽你選修的課程,5刪除你選錯(cuò)的課程課程選擇,以及6返回主菜單。
一―瀏覽所有課程
2-—查詢課程信息
3—選擇選修課程
4--瀏覽我選修的課程
5--刪除錯(cuò)選課程
6--返回主菜單
Chioseyournumbei*<l-6>:C]
圖5-8學(xué)生菜單操作結(jié)果
5.1.91按學(xué)生瀏覽所有課程。
進(jìn)入學(xué)生菜單,選擇1進(jìn)入BrowseAllCourses界面,可以查看選中的課程信息。
1--瀏覽所有課程
2--查詢課程信息
3-—選擇選修課程
4--瀏覽我選修的課程
5-—?jiǎng)h除錯(cuò)選課程
6-—返回主菜單
11
be[1質(zhì)
性
和-6
課
):程
^總學(xué)時(shí)授課學(xué)時(shí)實(shí)踐或上機(jī)學(xué)時(shí)學(xué)分開課學(xué)期
1人
2罩20200301
人^25205251
生
3自
暨
缺302010301
自
4昔
文302010351
事
6人
患-30151525
圖5-9學(xué)生瀏覽所有課程的運(yùn)行結(jié)果。
5.1.10按學(xué)分查詢課程
進(jìn)入學(xué)生查詢界面,選擇2SearchbyCredit,開始搜索要學(xué)習(xí)的課程。
W請(qǐng)選擇查詢方式**
■一按課程性質(zhì)查找
2-—按學(xué)分查找
3--退出查找
Chioseyournunber<l—3>:[23
輸入要查找的課程的學(xué)分
課程編號(hào)課程芻稱課程性質(zhì)總學(xué)時(shí)授課學(xué)時(shí)實(shí)踐或上機(jī)學(xué)時(shí)學(xué)分開課學(xué)期
20200301
3生物郛"自然302010301
一3一一健康鬟育人文
251510301
.買
圖5T0按積分查詢運(yùn)行結(jié)果
5.1.11按3進(jìn)入選修課程模塊。
在學(xué)生菜單中選擇3進(jìn)入選修課界面,輸入要選修的課程數(shù)量,按0確認(rèn)選修課,選課成
功。將所選課程的信息保存在3.txt文檔中。按任意鍵繼續(xù)。
學(xué)生菜單?
i--瀏覽所有課程
2—-查詢課程信息
3--選擇選修課程
4--瀏覽我選修的課程
5-—?jiǎng)h除錯(cuò)選課程
6-----返回主菜單
Chioseyournunbei*<l-6>:[3]
輸入要選修的課程的編號(hào).編號(hào)之間以空格分開
1346
如果確認(rèn)輸入完要選修的課程的編號(hào).請(qǐng)輸入。:「。]
MMMMM選修成功??
您選修的課程總學(xué)分為12。,課程分別為:
質(zhì)
程性
牌程編號(hào)課程名稱課忌學(xué)時(shí)授課學(xué)時(shí)實(shí)踐或上機(jī)學(xué)時(shí)學(xué)分開課學(xué)期
人文
1德語20200301
自然
3生物材料302010301
自鐵
4302010351
人爻
6301515251
以上信息全都隹存在D.txt,中
卜青按屆意鍵昆弟?.■
圖5T1進(jìn)入選修課模塊操作結(jié)果圖
5.1.124按Enter瀏覽選修課程。
在學(xué)生菜單中選擇4,進(jìn)入瀏覽我的選修課界面,將顯示所有選修課信息。按任意鍵繼
續(xù)。
?―瀏覽所有課程
2—-查詢課程信息
3--選擇選修課程
4--瀏覽我選修的課程
5--刪除錯(cuò)選課程
6--返回主菜單
<f1
,m
質(zhì)
課
課[4
斐
>:程
nu程l
總學(xué)時(shí)授課學(xué)時(shí)實(shí)踐或上機(jī)學(xué)時(shí)學(xué)分開課學(xué)期
1%人
然20200301
物
生
自
3一
■302010301
自
4昔
筆302010351
醫(yī)
6人
翟J301515251
書
宴
:r
圖5-12;瀏覽選修課的運(yùn)行結(jié)果。
5.1.13按5進(jìn)入刪除錯(cuò)誤課程模塊。
在學(xué)生菜單中選擇5,進(jìn)入刪除錯(cuò)課界面,成功刪除錯(cuò)課號(hào)。如果繼續(xù)刪除錯(cuò)課,請(qǐng)回
車,按0結(jié)束刪除錯(cuò)課菜單,將刪除錯(cuò)課信息保存在3.txt文檔中。按任意鍵繼續(xù)。
一―瀏覽所有課程
2--查詢課程信息
3--選擇選修課程
4--瀏覽我選修的課程
5--刪除錯(cuò)選課程
6---返回主菜單
Chloseyournunber<l-6>:LbJ
輸入想要?jiǎng)h除的課程編號(hào):16]
繼續(xù)刪除請(qǐng)按回車
結(jié)束刪除課程按0:E0J
曙
爰
d般
>,續(xù)?
息
建
禹
已
創(chuàng)a
繼
按
意
續(xù)文件巾
請(qǐng)
圖5T2刪除錯(cuò)誤課程模塊運(yùn)行結(jié)果圖
5.2調(diào)試過程中的問題
5.2.1提出問題
程序?qū)懞煤?,需要進(jìn)行調(diào)試,看是否達(dá)到了規(guī)定的功能。但主要是糾正大大小小的問題。
這種設(shè)計(jì)存在的問題是:
1.調(diào)試時(shí)無法讀取txt文件。
2、密碼不能由用戶自定義。
3.這個(gè)變異環(huán)境一旦關(guān)閉,添加的課程信息和學(xué)生信息就無法長期保存。
5.2.2問題分析
l.txt無法讀取,輸入路徑后不顯示文件。解決辦法是請(qǐng)老師幫忙。最后,在老師的細(xì)
心指導(dǎo)下,我意識(shí)到這是我自己的電腦操作水平,對(duì)電腦路徑結(jié)構(gòu)沒有很好的理解。最
后,我做了一些修改來實(shí)現(xiàn)它。
2.
問題是在編寫程序時(shí)密碼是固定的。用戶無法通過系統(tǒng)平臺(tái)修改密碼值。因此,這樣的
密碼名存實(shí)亡,毫無用處。3.這個(gè)問題的原因是信息存儲(chǔ)設(shè)置不是很好。通過文件存
儲(chǔ)方便存儲(chǔ)信息,但調(diào)用信息不方便。
5.2.3問題解決建議
數(shù)據(jù)庫用來存儲(chǔ)密碼信息,然后用switch語句控制密碼輸入錯(cuò)誤的次數(shù)。當(dāng)密碼輸入錯(cuò)
誤次數(shù)達(dá)到3次時(shí),使用密碼重置應(yīng)用功能。然后將新密碼存入數(shù)據(jù)庫,并覆蓋之前
設(shè)置的密碼。建議使用數(shù)據(jù)庫存儲(chǔ)信息,比文件存儲(chǔ)更穩(wěn)定。
6總結(jié)
通過本課程的設(shè)計(jì),我們回顧了幾乎被遺忘的c語言知識(shí),也讓我們意識(shí)到總結(jié)之前所
學(xué)知識(shí)的重要性。這個(gè)看似簡(jiǎn)單的課程設(shè)計(jì),卻暴露了我們的諸多不足,也讓我們意識(shí)
到自己在哪些方面需要努力提高。
這個(gè)課程是我們團(tuán)隊(duì)開設(shè)的,每個(gè)人都有明確的分工。當(dāng)然,在這個(gè)過程中,我們遇到
了很多問題。我們沒有自己努力,而是請(qǐng)大家?guī)椭覀冋业浇鉀Q問題的方法。當(dāng)編程結(jié)
構(gòu)中有浮點(diǎn)數(shù)據(jù)時(shí),系統(tǒng)提示有錯(cuò)誤。可以通過將其替換為int或char然后定義它
來解決。調(diào)試未完成后自動(dòng)跳出主界面:可能會(huì)遇到系統(tǒng)錯(cuò)誤,主要是遇到浮動(dòng)數(shù)據(jù)時(shí)。
插入鏈表讀取和輸出文件不熟悉;我不熟悉如何使表單參與與論點(diǎn)的一一對(duì)應(yīng)。經(jīng)過查
詢資料和老師同學(xué)的幫助,基本解決了。通過這樣不斷的發(fā)現(xiàn)、修正、理解和習(xí)得,課
程設(shè)計(jì)最終圓滿完成。
通過本周的C語言編程實(shí)踐,我不僅鞏固了之前掌握的C程序設(shè)計(jì)基礎(chǔ),也彌補(bǔ)了課堂上
沒有學(xué)到的知識(shí);它也讓我們對(duì)抽象理論有了具體的理解。我意識(shí)到C語言應(yīng)用廣泛,
功能強(qiáng)大,是學(xué)習(xí)計(jì)算機(jī)不可缺少的語言。更重要的是,我學(xué)到了很多知識(shí),增強(qiáng)了動(dòng)
手能力,積累了經(jīng)驗(yàn)。同時(shí)我也發(fā)現(xiàn)了自己的很多不足,需要在以后的學(xué)習(xí)中進(jìn)一步完
善,以便掌握和應(yīng)用更多的知識(shí)。最重要的是,這次實(shí)戰(zhàn)訓(xùn)練讓我認(rèn)識(shí)到了團(tuán)隊(duì)合作的
強(qiáng)大力量和自己的嚴(yán)重不足,甚至激發(fā)了我對(duì)C語言編程的興趣。C語言蘊(yùn)含著強(qiáng)大的
秘密,等待我們?nèi)ヌ剿鳌?/p>
課程設(shè)計(jì)是在老師的指導(dǎo)下完成的,讓我對(duì)學(xué)生的選課體系有了更深入的了解和一些實(shí)
踐經(jīng)驗(yàn)。這門課程讓我意識(shí)到團(tuán)隊(duì)是不可替代的,知識(shí)很重要,讓我在遇到問題時(shí)能主
動(dòng)動(dòng)動(dòng)腦筋,對(duì)于自己不懂的問題愿意向別人請(qǐng)教。
7設(shè)計(jì)的優(yōu)缺點(diǎn)
7.1不足與改進(jìn)
經(jīng)測(cè)試,本系統(tǒng)已滿足本課題的所有要求。這個(gè)程序有很多優(yōu)點(diǎn)。一是界面簡(jiǎn)潔的
程序菜單。一是智能模塊設(shè)計(jì),減少了大量的人工操作。例如,操作一個(gè)功能模塊后,
會(huì)返回主菜單運(yùn)行下一個(gè)模板,并提示是否再次進(jìn)行類似操作,為用戶帶來方便,大大
提高了學(xué)生選課的效率。還有就是提示語言簡(jiǎn)潔、清晰、層次分明等。當(dāng)然也有不足之
處,比如程序中還有不合理的地方,比如程序某些部分的一些輸入錯(cuò)誤不能立即處理退
回更正;信息表達(dá)方式并不豐富,而是簡(jiǎn)單,缺乏圖片、音樂等元表達(dá)。
當(dāng)編程結(jié)構(gòu)中有浮點(diǎn)數(shù)據(jù)時(shí),系統(tǒng)提示有錯(cuò)誤??梢酝ㄟ^將其替換為int或char
然后定義它來解決。調(diào)試未完成后自動(dòng)跳出主界面:可能會(huì)遇到系統(tǒng)錯(cuò)誤,主要是遇到
浮動(dòng)數(shù)據(jù)時(shí)。有些字母輸入錯(cuò)誤可以通過仔細(xì)搜索來解決;插入鏈表讀取和輸出文件不
熟悉;我不熟悉如何使表單參與與論點(diǎn)的一一對(duì)應(yīng)。經(jīng)過查詢資料和老師同學(xué)的幫助,
基本解決了。
通過本周的C語言課程實(shí)踐,我不僅鞏固了之前掌握的C程序的設(shè)計(jì)基礎(chǔ),還學(xué)會(huì)了彌補(bǔ)
課堂上沒有學(xué)到的知識(shí)。通過這門課,我充分認(rèn)識(shí)到C語言用途廣泛,功能強(qiáng)大,是學(xué)
習(xí)計(jì)算機(jī)不可缺少的語言。更重要的是,在這次編程中,我熟悉了編寫復(fù)雜程序的過程,
具備了發(fā)現(xiàn)問題和解決問題的能力,為下一步的計(jì)算機(jī)語言學(xué)習(xí)做好了準(zhǔn)備。以前覺得
遙不可及的功能現(xiàn)在可以實(shí)現(xiàn)了,非常感謝老師和同學(xué)們的熱心幫助,是我及時(shí)完成這
個(gè)程序的重要因素。
7.2收獲與總結(jié)
總之,這個(gè)設(shè)計(jì)方案讓我受益匪淺,我會(huì)珍惜這樣難得的機(jī)會(huì)。這些天我感受到了老師
對(duì)我的教導(dǎo)。雖然在這次試訓(xùn)中遇到了很多困難,但在老師的幫助下,我克服了過去。
也讓我真正學(xué)到了一些平時(shí)在理論課上學(xué)不到的實(shí)用的東西。我會(huì)珍惜這次經(jīng)歷。
再一次,我感受到了你對(duì)我的教導(dǎo)!
7.3方案的優(yōu)缺點(diǎn)
功能優(yōu)勢(shì):
1.簡(jiǎn)潔明了的節(jié)目菜單。程序主要采用六組不同層次的菜單,相互獨(dú)立,巧妙地相互連
接,符合用戶的使用習(xí)慣和思維。
2.人性化的程序提示語言。程序提示語言更加人性化,不僅以祈使句和疑問句居多,而
且提示清晰,具有很強(qiáng)的明確引導(dǎo)功能。程序的提示不僅層次分明,提示方式多樣,而
且提示信息有序,更有利于用戶對(duì)程序的流暢、準(zhǔn)確操作。
3.智能模塊設(shè)計(jì)。程序的智能化主要體現(xiàn)在減少很多人工操作。功能模塊完成后
會(huì)返回主菜單運(yùn)行下一個(gè)模板,并提示是否再次進(jìn)行類似操作,給用戶帶來方便,大大
提高學(xué)生選課的效率。
該方案的缺點(diǎn):
1.流程雖然經(jīng)過多次精簡(jiǎn),但只是形式和范圍上的精簡(jiǎn),仍然
本質(zhì)上并沒有精簡(jiǎn),也就是沒有找到更簡(jiǎn)單、更高效、更合理、占用資源更少的
算法。
2、程序中還有一些不合理的地方。例如,程序的某些部分輸入錯(cuò)誤可能會(huì)導(dǎo)致程
序停止或轉(zhuǎn)向其他功能模塊,即程序建議用戶注意提示,進(jìn)行合理準(zhǔn)確的輸入,這樣更
有利于管理。
3.程序的功能還不完善。比如信息表達(dá)不豐富,比較單一,缺乏圖片、音樂等元
表達(dá)。
參考
1.王連祥。《C/C++編程》大學(xué).2013.7
2.譚浩強(qiáng)C語言程序設(shè)計(jì)學(xué)習(xí)指南(第2版)清華大學(xué)。2012年12月
3.李、龔以健《C語言編程實(shí)踐指導(dǎo)教程》華中科技大學(xué)2009年6月出版
4.曉東、洪振,《C語言編程與應(yīng)用》,人民郵電.2009.4
5.郭翠英《C語言課程設(shè)計(jì)案例匯編》中國水利水電2004.03.01
6.郭友強(qiáng),C語言程序設(shè)計(jì),清華大學(xué),2009年2月1日
7.程丹,穎,那軍,C語言程序設(shè)計(jì)案例實(shí)踐,清華大學(xué),2009年2月1日
8.《C語言程序設(shè)計(jì)教程》,麗娟,人民郵電,2013年1月1日
9.吳亞莉、王永玲、杰亞莉的C語言程序設(shè)計(jì),清華大學(xué),2009年2月1日
致
在課程實(shí)踐中,我得到了導(dǎo)師的指導(dǎo)和支持。特別感謝老師的大力幫助。導(dǎo)師在對(duì)
整體結(jié)構(gòu)和功能的把握上給了我們很大的幫助,同時(shí)也為我們提供了非常優(yōu)越的設(shè)計(jì)環(huán)
境,在編程和算法設(shè)計(jì)的細(xì)節(jié)上給了我耐心的指導(dǎo),這對(duì)我的成功起到了關(guān)鍵的作用。
完成本課程設(shè)計(jì)。
轉(zhuǎn)眼,一周的課程培訓(xùn)結(jié)束了,感覺老師給我們提供了每周幾次在教室里調(diào)試電腦
的機(jī)會(huì),老師為我們解決了各種問題,同學(xué)們可以也互相討論。這使今天的成就成為可
能,尤其是老師的寶貴意見,給了我很大的啟發(fā)。同時(shí),我也覺得那些給我?guī)椭耐瑢W(xué)。
同時(shí),我覺得學(xué)校給了我這樣一個(gè)獨(dú)立完成一門課程設(shè)計(jì)的機(jī)會(huì),并且在這個(gè)過程中,
也給了我們各種便利,所以在這個(gè)學(xué)期結(jié)束的時(shí)候,我們可以申請(qǐng)將所學(xué)知識(shí)付諸實(shí)踐,
增強(qiáng)了我們的實(shí)際操作和實(shí)際應(yīng)用能力,提高了我們的獨(dú)立思考能力。我覺得這兩年所
有的老師和同學(xué)都給了我指導(dǎo)和幫助。他們教會(huì)了我專業(yè)知識(shí)和學(xué)習(xí)方法。多虧了他們,
我才能在各方面都取得了長足的進(jìn)步,在此向他們表示衷心的祝愿。
附錄:
源代碼
ttinclude"stdio.h"
#include“字符串.h”
^include"stdlib.h"
^include"malloc.h"
無效prinl();
無效選擇();
typedef結(jié)構(gòu)主題
(
整數(shù);
字符名稱[20];
字符種類[10];〃課程編號(hào)〃課程名稱//課程性質(zhì)
時(shí)間;〃總課時(shí)
時(shí)間;〃教學(xué)時(shí)間
國際時(shí)間;〃在實(shí)驗(yàn)或電腦操作期間
積分;〃學(xué)分
國際術(shù)語;〃課程的期限。
結(jié)構(gòu)主題*下一個(gè);
}子;
SUB*頭=辿1±;
SUB*create_form()//創(chuàng)建一個(gè)鏈表
(
SUB*頭,*尾,*p;
整數(shù),時(shí)間,時(shí)間;
intetime,score,term;
字符名稱[20],種類[10];
intsize=sizeof(SUB);
頭=尾=刖1±;
printf(〃輸入選修課信息:\n〃);
scanf(,,%d%s%s%d%d%d%d%dz,,&num,name,kind,
&stime,&ttime,feetime,&score,&term);
而(數(shù)!=0)
(
p=(SUB*)malloc(大小);
p->數(shù)字=數(shù)字;
strcpy(p->名稱,名稱);
strcpy(p->種類,種類);
p->時(shí)間=時(shí)間;
p->ttime=ttime;
p->etime=etime;
p->分?jǐn)?shù)=分?jǐn)?shù);
P-〉術(shù)語=術(shù)語;
如果(頭==NULL)
頭=P;
別的
尾->下一個(gè)二p;
尾=P;
scanf(/z%d%s%s%d%d%d%d%d",&num,name,
種類,&stime,fettime,&etime,&score,&term);
)
尾->下一個(gè)=NULL;
返回頭;
)
voidsavefile()//保存文件
(
子*P;
文件*fp;
fp=fopen("2.txt","w");
如果(fp==NULL)退出(0);
printf("課程編號(hào)、課程名稱、課程性質(zhì)、總學(xué)時(shí)
教學(xué)小時(shí)實(shí)驗(yàn)或計(jì)算機(jī)小時(shí)學(xué)分開始學(xué)期\n");
for(p=head;p;p=p->next)
,,,,
fprintf(fp,%5d%12s%9s%9d%9d%lld%lld%7d\n,
p->num,p->name,p->kind,p->stime,p->ttime,p->etime,p->score,p->term);
fclose(fp);
printf("創(chuàng)建的信息已經(jīng)放入'2.txt)文件\n");
系統(tǒng)(“暫停”);
)
voidsavefilel()//保存文件
(
子*P;
文件*fp;
fp=fopen("3.txt","w");
如果(fp==NULL)退出(0);
for(p=head;p;p=p->next)
//,,
fprintf(fp,%5d%12s%9s%9d%9d%lld%lld%7d\n1
p->num,p->name,p->kind,p->stime,p->ttime,p->etime,p->score,p->term);
fclose(fp);
printf("創(chuàng)建的信息已經(jīng)放入'3.txt'文件\n");
系統(tǒng)(“暫?!?;
)
voidreadfile()//讀取文件
(
無效*myInsert(SUB*);
子*newSub;〃新課程
整數(shù),時(shí)間,時(shí)間,時(shí)間;
積分,期限;
字符[20],種類[10],fname[20];
文件*fp;
fp=fopen("2.txt","r");
而(!feof(fp))
(
newSub=(SUB*)malloc(sizeof(SUB));
fscanf(fp,,,%d%s%s%d%d%d%d%d\nz/,&newSub->num,newSub->name,newSub->kind,
&newSub->stime,&newSub->ttime,&newSub->etime,&newSub->score,&newSub->term);我的
插入(新子);
)
fclose(fp);
)
voidprinO//瀏覽所有課程
(
子*ptr;
頭=空;
讀取文件();
如果(頭==NULL)
(
printf("\n\n\t*********沒有記錄!************\n");
返回;
)
printf(〃課程號(hào)、課程名稱、課程性質(zhì)、總課時(shí)
或練習(xí)計(jì)算機(jī)時(shí)間和學(xué)分\n");
for(ptr=head;ptr;ptr=ptr->next)
(
printf("%5d%12s%9s%9d%9d%lld%lld%7d\n”,ptr->num,ptr->name,
ptr->kind,ptr->stime,ptr->ttime,ptr->etime,ptr->score,ptr->term);}
系統(tǒng)("暫停”);
voidprinl()//瀏覽所有選修課
子*ptr;
文件*fp;
if((fp=fopen("3.txt","r"))==NULL)
{
printf("無法打開文件。\n");
選擇();
)
printf(〃課程號(hào)、課程名稱、課程性質(zhì)、總課時(shí)
或練習(xí)計(jì)算機(jī)時(shí)間和學(xué)分\n");
而(!feof(fp))
(
ptr=(SUB*)malloc(sizeof(SUB));
fscanf(fp,//%d%s%s%d%d%d%d%d\n//,&ptr->num,ptr->name,ptr->種類,&ptr->stime,&ptr
&ptr->etime,&ptr->score,&ptr->term);printf(/,%5d%12s%9s%9d%9d%lld%lld%7d\
rT,ptr->num,ptr->name,
ptr->kind,ptr->stime,ptr->ttime,ptr->etime,ptr->score,ptr->term);}
fclose(fp);
系統(tǒng)(“暫?!?;
)
void*mylnsert(SUB*subj)//鏈表插入操作
(
SUB*ptr,*ptr2;
點(diǎn)=主題;
如果(頭==NULL)
(
頭=ptr;
頭->下一個(gè)=NULL;
別的
for(ptr2=head;ptr2;ptr2=ptr2->next)
如果(ptr2->下一個(gè)==NULL)
(
ptr2->下一個(gè)=主題;
主題->下一個(gè)=NULL;
休息;
返回頭;
}
void"insert()〃插入課程信息
子*ptr,*subj;
intsize=sizeof(SUB);
字符ch,chi;
而(ch!='O')
subj=(SUB*)malloc(大小);
點(diǎn)=主題;
printf(〃輸入要插入的課程信息:\n");
printf("\n\t\t請(qǐng)輸入課程號(hào):");scanf&subj->num);
printf("\n\t\t請(qǐ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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 系統(tǒng)架構(gòu)設(shè)計(jì)師行業(yè)標(biāo)準(zhǔn)考察試題及答案
- 二年級(jí)數(shù)學(xué)上冊(cè)第八單元探索樂園8.1找規(guī)律說課設(shè)計(jì)冀教版
- 學(xué)霸測(cè)試題及答案
- 2024-2025學(xué)年高中生物每日一題光合作用與細(xì)胞呼吸過程綜合含解析新人教版必修1
- 期望管理2024年系統(tǒng)規(guī)劃與管理師考試試題及答案
- 育嬰師工作效率考題及答案
- 系統(tǒng)架構(gòu)設(shè)計(jì)師考試的重要資料收集技巧試題及答案
- 大學(xué)傳熱學(xué)試題及答案
- 系統(tǒng)規(guī)劃與管理師考試內(nèi)容的結(jié)構(gòu)與復(fù)習(xí)要點(diǎn)分析試題及答案
- 藥物質(zhì)量標(biāo)準(zhǔn)的制定與實(shí)施試題及答案
- (完整版)鋼琴五線譜(A4打印)
- (新版)一級(jí)煙草專賣管理師理論考試題庫(含答案)
- (完整word)2019注冊(cè)消防工程師繼續(xù)教育三科試習(xí)題及答案
- 邁瑞公司中文簡(jiǎn)介
- 低血糖昏迷搶救預(yù)案及流程
- 從專業(yè)走向管理
- 2022年中國礦業(yè)權(quán)評(píng)估新準(zhǔn)則
- 抵押物清單(標(biāo)準(zhǔn)樣本)
- 《物聯(lián)網(wǎng)》課件第4章-物聯(lián)網(wǎng)通信技術(shù)
- 電動(dòng)叉車控制器電路圖大全
- 福建省水文地質(zhì)圖
評(píng)論
0/150
提交評(píng)論