三級信息管理.
1、 運動會分數統計**
任務:參加運動會有n個學校,學校編號為1……n。比賽分成m個男子項目,和w個女子項目。項目編號為男子1……m,女子m+1……m+w。不同的項目取前五名或前三名積分;取前五名的積分分別為:7、5、3、2、1,前三名的積分分別為:5、3、2;哪些取前五名或前三名由學生自己設定。(m <=20,n <=20)
功能要求:
1).可以輸入各個項目的前三名或前五名的成績;
2).能統計各學校總分,
3).可以按學校編號、學校總分、男女團體總分排序輸出;
4).可以按學校編號查詢學校某個項目的情況;可以按項目編號查詢取得前三或前五名的學校。
規定:輸入數據形式和范圍:20以內的整數(如果做得更好可以輸入學校的名稱,運動項目的名稱)
輸出形式:有中文提示,各學校分數為整形
界面要求:有合理的提示,每個功能可以設立菜單,根據提示,可以完成相關的功能要求。
存儲結構:學生自己根據系統功能要求自己設計,但是要求運動會的相關數據要存儲在數據文件中。(數據文件的數據讀寫方法等相關內容在c語言程序設計的書上,請自學解決)請在最后的上交資料中指明你用到的存儲結構;
測試數據:要求使用1、全部合法數據;2、整體非法數據;3、局部非法數據。進行程序測試,以保證程序的穩定。測試數據及測試結果請在上交的資料中寫明;
2、 訂票系統
任務:通過此系統可以實現如下功能:
錄入:可以錄入航班情況(數據可以存儲在一個數據文件中,數據結構、具體數據自定)
查詢:可以查詢某個航線的情況(如,輸入航班號,查詢起降時間,起飛抵達城市,航班票價,票價折扣,確定航班是否滿倉);
可以輸入起飛抵達城市,查詢飛機航班情況;
訂票:(訂票情況可以存在一個數據文件中,結構自己設定)
可以訂票,如果該航班已經無票,可以提供相關可選擇航班;
退票: 可退票,退票后修改相關數據文件;
客戶資料有姓名,證件號,訂票數量及航班情況,訂單要有編號。
修改航班信息:當航班信息改變可以修改航班數據文件
要求:根據以上功能說明,設計航班信息,訂票信息的存儲結構,設計程序完成功能;
3、拓撲排序
任務:編寫函數實現圖的拓撲排序。
4、 迷宮求解
任務:可以輸入一個任意大小的迷宮數據,用非遞歸的方法求出一條走出迷宮的路徑,并將路徑輸出;
要求:在上交資料中請寫明:存儲結構、基本算法(可以使用程序流程圖)、源程序、測試數據和結果、算法的時間復雜度、另外可以提出算法的改進方法;
5、 文章編輯**
功能:輸入一頁文字,程序可以統計出文字、數字、空格的個數。
靜態存儲一頁文章,每行最多不超過80個字符,共N行;要求(1)分別統計出其中英文字母數和空格數及整篇文章總字數;(2)統計某一字符串在文章中出現的次數,并輸出該次數;(3)刪除某一子串,并將后面的字符前移。
存儲結構使用線性表,分別用幾個子函數實現相應的功能;
輸入數據的形式和范圍:可以輸入大寫、小寫的英文字母、任何數字及標點符號。
輸出形式:(1)分行輸出用戶輸入的各行字符;(2)分4行輸出"全部字母數"、"數字個數"、"空格個數"、"文章總字數"(3)輸出刪除某一字符串后的文章;
6、 joseph環
任務:編號是1,2,……,n的n個人按照順時針方向圍坐一圈,每個人只有一個密碼(正整數)。一開始任選一個正整數作為報數上限值m,從第一個仍開始順時針方向自1開始順序報數,報到m時停止報數。報m的人出列,將他的密碼作為新的m值,從他在順時針方向的下一個人開始重新從1報數,如此下去,直到所有人全部出列為止。設計一個程序來求出出列順序。
要求:利用單向循環鏈表存儲結構模擬此過程,按照出列的順序輸出各個人的編號。
測試數據:m的初值為20,n=7 ,7個人的密碼依次為3,1,7,2,4,7,4,首先m=6,則正確的輸出是什么?
要求:輸入數據:建立輸入處理輸入數據,輸入m的初值,n ,輸入每個人的密碼,建立單循環鏈表。
輸出形式:建立一個輸出函數,將正確的輸出序列
7、 猴子選大王**
任務:一堆猴子都有編號,編號是1,2,3 ...m ,這群猴子(m個)按照1-m的順序圍坐一圈,從第1開始數,每數到第N個,該猴子就要離開此圈,這樣依次下來,直到圈中只剩下最后一只猴子,則該猴子為大王。
要求:輸入數據:輸入m,n m,n 為整數,n <m
輸出形式:中文提示按照m個猴子,數n 個數的方法,輸出為大王的猴子是幾號,建立一個函數來實現此功能
8、 建立二叉樹,層序、先序遍歷( 用遞歸或非遞歸的方法都可以)**
任務:要求能夠輸入樹的各個結點,并能夠輸出用不同方法遍歷的遍歷序列;分別建立建立二叉樹存儲結構的的輸入函數、輸出層序遍歷序列的函數、輸出先序遍歷序列的函數;
9、 赫夫曼樹的建立
任務 :建立建立最優二叉樹函數
要求:可以建立函數輸入二叉樹,并輸出其赫夫曼樹
在上交資料中請寫明:存儲結構、 基本算法(可以使用程序流程圖) 、輸入輸出、源程序、測試數據和結果、算法的時間復雜度、另外可以提出算法的改進方法;
10、 紙牌游戲**
任務:編號為1-52張牌,正面向上,從第2張開始,以2為基數,是2的倍數的牌翻一次,直到最后一張牌;然后,從第3張開始,以3為基數,是3的倍數的牌翻一次,直到最后一張牌;然后…從第4張開始,以4為基數,是4的倍數的牌翻一次, 直到最后一張牌;...再依次5的倍數的牌翻一次,6的,7的直到 以52為基數的 翻過,輸出:這時正面向上的牌有哪些?
11、圖的建立及輸出
任務:建立圖的存儲結構(圖的類型可以是有向圖、無向圖、有向網、無向網,學生可以任選兩種類型),能夠輸入圖的頂點和邊的信息,并存儲到相應存儲結構中,而后輸出圖的鄰接矩陣。