欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      C++語言課程設(shè)計題目

      時間:2019-05-12 20:12:03下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《C++語言課程設(shè)計題目》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《C++語言課程設(shè)計題目》。

      第一篇:C++語言課程設(shè)計題目

      《C++語言課程設(shè)計》題目

      課程大綱:

      一、教學(xué)目標(biāo)和基本要求

      本課程全面系統(tǒng)的學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計的基本概念,基本語法和編程方法。正確理解掌握C++面向?qū)ο蟪绦蛟O(shè)計的基本特性:類,對象,繼承與派生,多態(tài),虛函數(shù),模板,流類庫等。遵循軟件過程的各個環(huán)節(jié)進(jìn)行系統(tǒng)分析、設(shè)計、實現(xiàn)、集成、測試,了解當(dāng)前常用的軟件開發(fā)工具(Visual C++),培養(yǎng)學(xué)生解決實際問題的能力。

      二、組織方式

      結(jié)合具體的實踐項目,以分組的形式(4-5人一組)開展程序設(shè)計的上機(jī)實踐。

      三、考核方式及辦法:

      完成包括從概要設(shè)計、詳細(xì)設(shè)計、代碼編寫、程序調(diào)試、運行在內(nèi)的一系列程序設(shè)計及文檔撰寫,要求系統(tǒng)調(diào)試成功、可正常運行,文檔規(guī)范完整。

      四、時間安排:

      期末考試前最后一次課學(xué)生PPT講解。

      五、實踐教學(xué)中應(yīng)注意的問題

      1.組織管理的要求:4-5人一組,要求發(fā)揮團(tuán)隊合作精神,分工協(xié)助。2.對學(xué)生的要求:與小組同學(xué)分工合作,認(rèn)真完成系統(tǒng)設(shè)計、編寫代碼、程序調(diào)試及文檔撰寫。3.學(xué)生采用PPT講解。

      C++語言課程設(shè)計任務(wù)書1 題目:學(xué)院教學(xué)信息管理系統(tǒng)

      功能:學(xué)院教學(xué)信息管理系統(tǒng),每一條記錄包括一位教師的職工號、姓名、職稱、性別、3門課程,教學(xué)效果綜合評分。系統(tǒng)要求實現(xiàn)以下功能:

      1、輸入:輸入每一位教師記錄,將其信息寫入文件中。

      2、顯示:顯示每位教師記錄。

      3、排序:按職工號或教學(xué)效果綜合評分進(jìn)行排序,并顯示。

      4、查找:完成按姓名或課程查找教師的相關(guān)記錄,并顯示。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位教師的相關(guān)(教學(xué))信息寫入文件中并能顯示于屏幕上。

      3、完成排序(按職工號、姓名、職稱等)、查找等功能。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)教師信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃

      第 1 頁

      《C++語言課程設(shè)計》題目

      分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書2 題目:酒店房間登記與計費管理系統(tǒng)

      功能:

      1、屏幕上出現(xiàn)一個界面,讓操作員能夠方便的選擇所需要進(jìn)行的操作,包括登記入住、查詢房間的入住情況、查詢當(dāng)前費用、結(jié)賬退房等操作。

      2、對不同標(biāo)準(zhǔn)的房間實施不同的收費標(biāo)準(zhǔn),也可以按天收費或按小時收費,可根據(jù)顧客需要在登記的入住的時候進(jìn)行選擇。

      3、在結(jié)賬退房時,根據(jù)入住的時間,計費方式和房間單價計算出總費用。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成最低要求:建立房間列表,完成登記入住、查詢房間入住情況功能。

      3、進(jìn)一步要求:完成計費和費用查詢功能。要求:

      1、用C++語言實現(xiàn)系統(tǒng);

      2、系統(tǒng)的各個功能模塊要求用函數(shù)實現(xiàn);

      3、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書3 題目:學(xué)生成績管理系統(tǒng)

      功能:學(xué)生成績管理系統(tǒng),每個學(xué)生是一個記錄,包括學(xué)號,姓名,性別,3門課程成績。系統(tǒng)

      要求實現(xiàn)以下功能:

      1、信息錄入:錄入學(xué)生成績信息(包括學(xué)生學(xué)號、姓名、各門課程的成績等);

      2、信息查詢:輸入學(xué)號,查詢學(xué)生各門課程的成績,并顯示。

      3、排序:按各門課程的成績平均分進(jìn)行排序,并顯示。

      4、信息刪除與修改——輸入學(xué)號,刪除該學(xué)生的成績信息。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位學(xué)生的信息寫入文件中并能顯示于屏幕上。

      3、完成上述信息查詢(學(xué)生學(xué)號、姓名等)、排序、信息刪除與修改功能。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)學(xué)生信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書4

      第 2 頁

      《C++語言課程設(shè)計》題目

      題目:職工檔案管理系統(tǒng)設(shè)計

      功能:職工檔案管理系統(tǒng)設(shè)計,每個職工是一條記錄,包括編號,姓名,性別,出生年月,所在

      部門,職稱,工資級別、電話等。系統(tǒng)可實現(xiàn)以下功能:

      1、輸入功能:輸入每一位職工記錄,將其信息存入文件中。

      2、顯示功能:完成全部職工記錄的顯示。

      3、查找功能:完成按編號或姓名查找職工的相關(guān)記錄,并顯示。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位職工的信息寫入文件中并能顯示于屏幕上。

      3、完成上述查找(編號,姓名,性別等)、修改等功能。

      4、進(jìn)一步要求,修改記錄設(shè)置密碼操作。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)職工信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書5 題目:學(xué)生管理系統(tǒng)設(shè)計

      功能:學(xué)生管理系統(tǒng)設(shè)計,每個學(xué)生是一條記錄,包括姓名、學(xué)號、性別、出生年月、專業(yè)、班級、家庭地址、宿舍號碼等。系統(tǒng)要求實現(xiàn)以下功能:

      1、輸入功能:錄入學(xué)生信息(包括學(xué)生學(xué)號、姓名、性別、出生年月、專業(yè)等);

      2、顯示功能:完成學(xué)生記錄的顯示。

      3、查找功能:完成按學(xué)號或姓名查找學(xué)生的相關(guān)記錄,并顯示。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位學(xué)生的信息寫入文件中(人數(shù)利用宏定義設(shè)定)并能顯示于屏幕上。

      3、完成上述顯示、查找(姓名,性別等)、修改等功能。

      4、進(jìn)一步要求,修改記錄設(shè)置密碼操作。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)學(xué)生信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書6

      題目:銀行存取款管理設(shè)計

      第 3 頁

      《C++語言課程設(shè)計》題目

      功能:能夠輸入和查詢客戶存款取款記錄。在客戶文件中,每個客戶是一條記錄,包括編號、客戶姓名、支取密碼、客戶地址、客戶電話、賬戶總金額;在存取款文件中,每次存取款是一條記錄,包括編號、日期、類別、存取數(shù)目、經(jīng)辦人。類別分為取款和存款兩種。本系統(tǒng)能夠輸入客戶存款或取款記錄;根據(jù)客戶姓名查詢存款和取款記錄。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話界面,確定函數(shù)個數(shù);

      2、建立一個文件,輸入客戶的必要信息,能對文件進(jìn)行顯示、輸入、修訂、刪除等。

      3、進(jìn)一步要求:完成客戶姓名查詢存款和取款記錄,并能得到每次帳戶總金額。要求:

      1、用C++語言實現(xiàn)系統(tǒng);

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書7 題目:院職工工資管理系統(tǒng)設(shè)計

      功能:院職工工資管理系統(tǒng)應(yīng)包含職工的全部信息。每個職工是一條記錄,包括姓名、性別、出生年月、年齡、婚姻狀況、家庭住址、職稱、工資級別情況等。本系統(tǒng)重點進(jìn)行工資管理,系統(tǒng)登陸后可計算職工工資總額和平均工資,可按工資進(jìn)行排序,并能夠找出工資級別相同的職工名單。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話界面,確定函數(shù)個數(shù);

      2、建立一個文件,將每位職工的信息寫入文件中并能顯示于屏幕上。

      3、計算職工工資總額和平均工資,可按工資進(jìn)行排序,并能夠找出工資級別相同的職工名單。

      要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)職工信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書8 題目:通訊錄管理系統(tǒng)

      功能:錄入聯(lián)系人信息(包括姓名、電話號碼、地址、備注等);通訊錄管理系統(tǒng)要求實現(xiàn)以下功能:

      1、輸入每一位聯(lián)系人記錄,將其信息存入文件中。

      2、查詢所有聯(lián)系人的信息,并按可選的自定義規(guī)則進(jìn)行排序;

      3、記錄修改,將修改的記錄信息保存于文件中。分步實施:

      第 4 頁

      《C++語言課程設(shè)計》題目

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每條記錄信息寫入文件中并能顯示于屏幕上。

      3、完成上述查詢(姓名、電話號碼等)、信息刪除與修改功能。

      4、進(jìn)一步要求,修改記錄設(shè)置密碼操作。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)聯(lián)系人信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書9

      題目:計算機(jī)輔助教學(xué)(CAI)軟件開發(fā):教小學(xué)生學(xué)算術(shù)。

      功能:可做個位數(shù),十位數(shù)的加,減,乘和除,減法不能得負(fù)數(shù),除法要除盡,屏幕上隨機(jī)出現(xiàn)兩個數(shù),提示小學(xué)生給出答案,答錯了要提示重新輸入,直到答對為止。要統(tǒng)計給分,且累計,夠一定分?jǐn)?shù)后可進(jìn)級,即從個位進(jìn)到十位。同樣,也可降級。

      (rand(),#include)分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成基本要求:能答對個位數(shù)的加法和減法,并有統(tǒng)計功能,即一次答對的成功率為

      90%上后可晉級,做十位數(shù)的加減;

      3、進(jìn)一步要求:完成乘法和除法的學(xué)習(xí),也有晉級功能。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      3、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書10

      題目:學(xué)生考勤系統(tǒng)設(shè)計

      功能:學(xué)生考勤系統(tǒng)應(yīng)包含各班學(xué)生的全部信息。每個學(xué)生是一條記錄,包括姓名、性別、學(xué)號、出勤情況等。本系統(tǒng)可模擬考勤過程,記錄考勤結(jié)果,并能夠在課程結(jié)束后按照設(shè)定的考勤評分標(biāo)準(zhǔn)自動給出每個學(xué)生的考勤分?jǐn)?shù)。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話界面,確定函數(shù)個數(shù);

      2、建立一個文件,將每條記錄信息寫入文件中并能顯示于屏幕上

      3、完成上述添加(出勤情況)、查找(學(xué)號,姓名,性別等)、修改等功能。

      4、進(jìn)一步要求:自動給出每個學(xué)生的考勤分?jǐn)?shù) 要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      第 5 頁

      《C++語言課程設(shè)計》題目

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書11 題目:學(xué)生選修課程系統(tǒng)設(shè)計

      功能:假定有n門課程,每門課程有課程編號,課程名稱,課程性質(zhì),總學(xué)時,授課學(xué)時,實驗或上機(jī)學(xué)時,學(xué)分,開課學(xué)期等信息。試設(shè)計一選修課程系統(tǒng)。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話界面,確定函數(shù)個數(shù);

      2、建立一個文件,將每條記錄信息寫入文件中并能顯示于屏幕上

      3、完成上述添加、查找(課程編號、課程名稱、課程性質(zhì)等)、修改等功能。

      4、進(jìn)一步要求:學(xué)生選修課程(可選項)要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書12

      題目:商品訂購系統(tǒng)設(shè)計。

      功能:屏幕上出現(xiàn)一個界面,讓顧客或輸入商品名稱,或商品型號,或選擇列表進(jìn)而輸入商品編號都可以,如查到所選商品,則列出商品編號、商品名稱、商品型號、商品價格、商品產(chǎn)地、庫存數(shù)量和已訂購數(shù)量;然后給出選購流程:所選商品編號—列出對應(yīng)商品的信息—要求顧客輸入郵寄地址信息—確認(rèn)訂購,是否繼續(xù)選購其它商品,列出所有選訂商品,再次確認(rèn)訂購。建立兩個文件,分別存放商品信息與訂購信息。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成最低要求:建立一個小系統(tǒng),包括10種產(chǎn)品能供顧客選擇。

      3、進(jìn)一步要求:完成全部功能的系統(tǒng)。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      第 6 頁

      《C++語言課程設(shè)計》題目

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書13 題目:設(shè)備管理系統(tǒng)設(shè)計

      功能:設(shè)備管理系統(tǒng)應(yīng)包含各種設(shè)備的全部信息,每臺設(shè)備為一條記錄(同一時間同一部門購買的若干臺相同設(shè)備可作為1條記錄),包括設(shè)備號、設(shè)備名稱、領(lǐng)用人、所屬部門、數(shù)量、購買時間、價格等。能夠顯示和統(tǒng)計各種設(shè)備的信息。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、建立一個文件,將每條記錄信息寫入文件中并能顯示于屏幕上

      3、能對文件進(jìn)行補充、修訂、刪除,能統(tǒng)計所有設(shè)備的總價值。

      4、進(jìn)一步要求:完成設(shè)備按種類、按所屬部門進(jìn)行統(tǒng)計。

      要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書14

      題目:學(xué)生計算機(jī)機(jī)房管理系統(tǒng)設(shè)計

      功能:該計算機(jī)房共有100臺計算機(jī),分為20排,每排50臺。管理系統(tǒng)應(yīng)包含每臺計算機(jī)一周內(nèi)的使用全部信息,包括計算機(jī)序號、配置、位置、狀態(tài)、使用情況的歷史記錄(包括使用者姓名、學(xué)號、使用時間段)等。本系統(tǒng)可以模擬學(xué)生上機(jī)和離開的登記過程,查詢機(jī)房計算機(jī)的使用情況。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、建立一個文件,將相關(guān)的信息寫入文件中并能顯示于屏幕上;

      3、能實現(xiàn)學(xué)生上機(jī)的登記過程模擬;

      4、進(jìn)一步要求:查詢機(jī)房計算機(jī)的使用情況。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      第 7 頁

      《C++語言課程設(shè)計》題目

      C++語言課程設(shè)計任務(wù)書15 題目:商店銷售管理系統(tǒng)。

      功能:屏幕上出現(xiàn)一個界面,讓售貨員輸入商品編號或者商品名稱,可以進(jìn)貨,進(jìn)貨后商品庫存同時增加。顧客買走商品后,售貨員輸入商品編號或者商品名稱,可以生成銷售清單,統(tǒng)計本次銷售總的價錢,同時庫存數(shù)量相應(yīng)減少。完成前面的基本功能后,還可以完成增加新的商品或刪除不需要的商品的功能,以及每天銷售統(tǒng)計功能等。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、建立一個文件,將相關(guān)的信息寫入文件中并能顯示于屏幕上;

      3、能按商品編號進(jìn)貨和銷售;

      4、進(jìn)一步要求:完成增加新的商品或刪除不需要的商品的功能,以及每天銷售統(tǒng)計

      功能等。

      要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書16

      題目:計算機(jī)輔助教學(xué)(CAI)軟件開發(fā):教小學(xué)生學(xué)英語。

      功能:屏幕上隨機(jī)出現(xiàn)一個漢語單詞,英語單詞,漢語詞組,英語詞組或一短句提示小學(xué)生給出相應(yīng)答案,答錯了要提示要求重新輸入,直到答對為止。要統(tǒng)計給分,且累計,夠一定分?jǐn)?shù)后可進(jìn)級,即從單詞到詞組,從詞組到短句。同樣,也可降級。起步階段可各選30個,軟件可擴(kuò)充,即擴(kuò)大詞庫的容量。

      (rand(),#include 結(jié)構(gòu)體、文件或數(shù)組)分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成最低要求:能教單詞,并有統(tǒng)計功能,即一次答對的成功率為90%以上后可晉級;

      3、進(jìn)一步要求:完成詞組和短語的問答,也有晉級功能。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書17

      第 8 頁

      《C++語言課程設(shè)計》題目

      題目:飛機(jī)訂票系統(tǒng)設(shè)計

      功能:本飛機(jī)共有80個坐位,分20排,每排4個位子。編號為A,B,C,D。如10D表示10排D座。A和D靠窗,19到20排為吸煙區(qū)。本系統(tǒng)可讓乘客自己選座號和區(qū)域,直到乘客滿意為止,無法滿足的話,只能改乘另一個航班。定上票的乘客需給出姓名和身份證號,最后要打印出乘客清單。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成最低要求:建立一個小系統(tǒng),包括5排座位,兩個區(qū)域,能供乘客選擇;

      3、進(jìn)一步要求:完成全部功能的系統(tǒng)。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書18

      題目:高速公路計費系統(tǒng)設(shè)計

      功能:在某高速公路出口收費處,對三種類型的車輛計費,大型車每公里0。5元,中型車每公里0.4元,小型車每公里0.3元,來車驗條,乘公里數(shù)即得該收的款項。在交班時要統(tǒng)計出總數(shù)。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成最低要求:建立一個只有三個入口的計費系統(tǒng),并能進(jìn)行統(tǒng)計計算,打印出報表;

      3、進(jìn)一步要求:完成任意多個入口的通用系統(tǒng)。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      第 9 頁

      第二篇:C++語言課程設(shè)計題目—2011年下半年

      《C++語言課程設(shè)計》題目

      課程大綱:

      一、教學(xué)目標(biāo)和基本要求

      本課程全面系統(tǒng)的學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計的基本概念,基本語法和編程方法。正確理解掌握C++面向?qū)ο蟪绦蛟O(shè)計的基本特性:類,對象,繼承與派生,多態(tài),虛函數(shù),模板,流類庫等。遵循軟件過程的各個環(huán)節(jié)進(jìn)行系統(tǒng)分析、設(shè)計、實現(xiàn)、集成、測試,并相應(yīng)給出軟件規(guī)格說明書等制品,了解當(dāng)前常用的軟件開發(fā)工具(Visual C++),培養(yǎng)解決實際問題的能力。

      二、組織方式

      結(jié)合具體的實踐項目,以分組的形式(4-5人一組)開展程序設(shè)計的上機(jī)實踐。

      三、考核方式及辦法:

      完成包括從概要設(shè)計、詳細(xì)設(shè)計、代碼編寫、程序調(diào)試、運行在內(nèi)的一系列程序設(shè)計及文檔撰寫,要求系統(tǒng)調(diào)試成功、可正常運行,文檔規(guī)范完整。

      四、時間安排:

      期末考試前最后一次課學(xué)生PPT講解。

      五、實踐教學(xué)中應(yīng)注意的問題

      1.組織管理的要求:4-5人一組,要求發(fā)揮團(tuán)隊合作精神,分工協(xié)助。2.對學(xué)生的要求:與小組同學(xué)分工合作,認(rèn)真完成系統(tǒng)設(shè)計、編寫代碼、程序調(diào)試及文檔撰寫。3.學(xué)生采用PPT講解。

      C++語言課程設(shè)計任務(wù)書1 題目:學(xué)院教學(xué)信息管理系統(tǒng)

      功能:學(xué)院教學(xué)信息管理系統(tǒng),每一條記錄包括一位教師的職工號、姓名、職稱、性別、3門課程,教學(xué)效果綜合評分。系統(tǒng)要求實現(xiàn)以下功能:

      1、輸入:輸入每一位教師記錄,將其信息寫入文件中。

      2、顯示:顯示每位教師記錄。

      3、排序:按職工號或教學(xué)效果綜合評分進(jìn)行排序,并顯示。

      4、查找:完成按姓名或課程查找教師的相關(guān)記錄,并顯示。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位教師的相關(guān)(教學(xué))信息寫入文件中并能顯示于屏幕上。

      3、完成排序(按職工號、姓名、職稱等)、查找等功能。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)教師信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃

      《C++語言課程設(shè)計》題目

      分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書2 題目:酒店房間登記與計費管理系統(tǒng)

      功能:

      1、屏幕上出現(xiàn)一個界面,讓操作員能夠方便的選擇所需要進(jìn)行的操作,包括登記入住、查詢房間的入住情況、查詢當(dāng)前費用、結(jié)賬退房等操作。

      2、對不同標(biāo)準(zhǔn)的房間實施不同的收費標(biāo)準(zhǔn),也可以按天收費或按小時收費,可根據(jù)顧客需要在登記的入住的時候進(jìn)行選擇。

      3、在結(jié)賬退房時,根據(jù)入住的時間,計費方式和房間單價計算出總費用。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成最低要求:建立房間列表,完成登記入住、查詢房間入住情況功能。

      3、進(jìn)一步要求:完成計費和費用查詢功能。要求:

      1、用C++語言實現(xiàn)系統(tǒng);

      2、系統(tǒng)的各個功能模塊要求用函數(shù)實現(xiàn);

      3、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書3 題目:學(xué)生成績管理系統(tǒng)

      功能:學(xué)生成績管理系統(tǒng),每個學(xué)生是一個記錄,包括學(xué)號,姓名,性別,3門課程成績。系統(tǒng)

      要求實現(xiàn)以下功能:

      1、信息錄入:錄入學(xué)生成績信息(包括學(xué)生學(xué)號、姓名、各門課程的成績等);

      2、信息查詢:輸入學(xué)號,查詢學(xué)生各門課程的成績,并顯示。

      3、排序:按各門課程的成績平均分進(jìn)行排序,并顯示。

      4、信息刪除與修改——輸入學(xué)號,刪除該學(xué)生的成績信息。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位學(xué)生的信息寫入文件中并能顯示于屏幕上。

      3、完成上述信息查詢(學(xué)生學(xué)號、姓名等)、排序、信息刪除與修改功能。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)學(xué)生信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書4

      《C++語言課程設(shè)計》題目

      題目:職工檔案管理系統(tǒng)設(shè)計

      功能:職工檔案管理系統(tǒng)設(shè)計,每個職工是一條記錄,包括編號,姓名,性別,出生年月,所在

      部門,職稱,工資級別、電話等。系統(tǒng)可實現(xiàn)以下功能:

      1、輸入功能:輸入每一位職工記錄,將其信息存入文件中。

      2、顯示功能:完成全部職工記錄的顯示。

      3、查找功能:完成按編號或姓名查找職工的相關(guān)記錄,并顯示。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位職工的信息寫入文件中并能顯示于屏幕上。

      3、完成上述查找(編號,姓名,性別等)、修改等功能。

      4、進(jìn)一步要求,修改記錄設(shè)置密碼操作。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)職工信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書5 題目:學(xué)生管理系統(tǒng)設(shè)計

      功能:學(xué)生管理系統(tǒng)設(shè)計,每個學(xué)生是一條記錄,包括姓名、學(xué)號、性別、出生年月、專業(yè)、班級、家庭地址、宿舍號碼等。系統(tǒng)要求實現(xiàn)以下功能:

      1、輸入功能:錄入學(xué)生信息(包括學(xué)生學(xué)號、姓名、性別、出生年月、專業(yè)等);

      2、顯示功能:完成學(xué)生記錄的顯示。

      3、查找功能:完成按學(xué)號或姓名查找學(xué)生的相關(guān)記錄,并顯示。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù)。

      2、建立一個文件,將每位學(xué)生的信息寫入文件中(人數(shù)利用宏定義設(shè)定)并能顯示于屏幕上。

      3、完成上述顯示、查找(姓名,性別等)、修改等功能。

      4、進(jìn)一步要求,修改記錄設(shè)置密碼操作。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)學(xué)生信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書6

      題目:銀行存取款管理設(shè)計

      《C++語言課程設(shè)計》題目

      功能:能夠輸入和查詢客戶存款取款記錄。在客戶文件中,每個客戶是一條記錄,包括編號、客戶姓名、支取密碼、客戶地址、客戶電話、賬戶總金額;在存取款文件中,每次存取款是一條記錄,包括編號、日期、類別、存取數(shù)目、經(jīng)辦人。類別分為取款和存款兩種。本系統(tǒng)能夠輸入客戶存款或取款記錄;根據(jù)客戶姓名查詢存款和取款記錄。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話界面,確定函數(shù)個數(shù);

      2、建立一個文件,輸入客戶的必要信息,能對文件進(jìn)行顯示、輸入、修訂、刪除等。

      3、進(jìn)一步要求:完成客戶姓名查詢存款和取款記錄,并能得到每次帳戶總金額。要求:

      1、用C++語言實現(xiàn)系統(tǒng);

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書7

      題目:學(xué)生考勤系統(tǒng)設(shè)計

      功能:學(xué)生考勤系統(tǒng)應(yīng)包含各班學(xué)生的全部信息。每個學(xué)生是一條記錄,包括姓名、性別、學(xué)號、出勤情況等。本系統(tǒng)可模擬考勤過程,記錄考勤結(jié)果,并能夠在課程結(jié)束后按照設(shè)定的考勤評分標(biāo)準(zhǔn)自動給出每個學(xué)生的考勤分?jǐn)?shù)。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話界面,確定函數(shù)個數(shù);

      2、建立一個文件,將每條記錄信息寫入文件中并能顯示于屏幕上

      3、完成上述添加(出勤情況)、查找(學(xué)號,姓名,性別等)、修改等功能。

      4、進(jìn)一步要求:自動給出每個學(xué)生的考勤分?jǐn)?shù) 要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書8 題目:學(xué)生選修課程系統(tǒng)設(shè)計

      功能:假定有n門課程,每門課程有課程編號,課程名稱,課程性質(zhì),總學(xué)時,授課學(xué)時,實驗或上機(jī)學(xué)時,學(xué)分,開課學(xué)期等信息。試設(shè)計一選修課程系統(tǒng)。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話界面,確定函數(shù)個數(shù);

      2、建立一個文件,將每條記錄信息寫入文件中并能顯示于屏幕上

      《C++語言課程設(shè)計》題目

      3、完成上述添加、查找(課程編號、課程名稱、課程性質(zhì)等)、修改等功能。

      4、進(jìn)一步要求:學(xué)生選修課程(可選項)要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書9

      題目:商品訂購系統(tǒng)設(shè)計。

      功能:屏幕上出現(xiàn)一個界面,讓顧客或輸入商品名稱,或商品型號,或選擇列表進(jìn)而輸入商品編號都可以,如查到所選商品,則列出商品編號、商品名稱、商品型號、商品價格、商品產(chǎn)地、庫存數(shù)量和已訂購數(shù)量;然后給出選購流程:所選商品編號—列出對應(yīng)商品的信息—要求顧客輸入郵寄地址信息—確認(rèn)訂購,是否繼續(xù)選購其它商品,列出所有選訂商品,再次確認(rèn)訂購。建立兩個文件,分別存放商品信息與訂購信息。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、完成最低要求:建立一個小系統(tǒng),包括10種產(chǎn)品能供顧客選擇。

      3、進(jìn)一步要求:完成全部功能的系統(tǒng)。要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      C++語言課程設(shè)計任務(wù)書10 題目:商店銷售管理系統(tǒng)。

      功能:屏幕上出現(xiàn)一個界面,讓售貨員輸入商品編號或者商品名稱,可以進(jìn)貨,進(jìn)貨后商品庫存同時增加。顧客買走商品后,售貨員輸入商品編號或者商品名稱,可以生成銷售清單,統(tǒng)計本次銷售總的價錢,同時庫存數(shù)量相應(yīng)減少。完成前面的基本功能后,還可以完成增加新的商品或刪除不需要的商品的功能,以及每天銷售統(tǒng)計功能等。分步實施:

      1、初步完成總體設(shè)計,搭好框架,確定人機(jī)對話的界面,確定函數(shù)個數(shù);

      2、建立一個文件,將相關(guān)的信息寫入文件中并能顯示于屏幕上;

      3、能按商品編號進(jìn)貨和銷售;

      4、進(jìn)一步要求:完成增加新的商品或刪除不需要的商品的功能,以及每天銷售統(tǒng)計

      功能等。

      要求:

      1、用C++語言實現(xiàn)程序設(shè)計;

      《C++語言課程設(shè)計》題目

      2、利用結(jié)構(gòu)體數(shù)組實現(xiàn)信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計;

      3、系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);

      4、界面友好(良好的人機(jī)交互),程序加必要的注釋。課程設(shè)計實驗報告要求:

      1、預(yù)習(xí)報告:題目、課程設(shè)計任務(wù)、數(shù)據(jù)結(jié)構(gòu)、程序的總體設(shè)計(算法)、模塊劃分。

      2、實驗總結(jié)報告:流程圖、主要源程序代碼、測試情況及調(diào)試中問題與解決方案、小結(jié)等。

      第三篇:《C++語言課程設(shè)計》任務(wù)書_2012

      《C++語言課程設(shè)計》任務(wù)書

      專業(yè) 班級 學(xué)號 姓名

      一、實踐目的

      通過本課程設(shè)計教學(xué),為學(xué)生提供一個綜合運用所學(xué)知識,解決實際問題的機(jī)會,增強其實踐動手能力和工程實踐能力,鍛煉和培養(yǎng)學(xué)生的自學(xué)能力,使學(xué)生能利用C++語言設(shè)計功能較全的一個應(yīng)用程序,得到程序設(shè)計方法、文獻(xiàn)資料查詢、設(shè)計報告寫作的綜合訓(xùn)練。同時加深對<>課程所學(xué)知識的理解,進(jìn)一步鞏固C++語言語法規(guī)則,學(xué)會編制結(jié)構(gòu)清晰、風(fēng)格良好、數(shù)據(jù)結(jié)構(gòu)適當(dāng)?shù)腃++語言程序。

      二、實踐任務(wù)與要求

      1、編寫一個簡單的基于MFC的應(yīng)用程序(5學(xué)時)

      《C++程序設(shè)計實踐教程》P218-P226綜合設(shè)計題中任選一題。

      2、參照《C++程序設(shè)計實踐教程》中P64-74的實例,從以下各題中任選一題,在vc++環(huán)境下編寫一個基于控制臺方式的應(yīng)用程序(Win32 Console Application,25學(xué)時)1).教學(xué)管理系統(tǒng)。學(xué)生信息包括學(xué)生的班級代號、學(xué)號和姓名,選課信息包括每個學(xué)生該學(xué)期所選課程,成績包括每個學(xué)生所選的課程的考核成績。系統(tǒng)功能要求如下:

      (1)能輸入學(xué)生信息、選課信息和成績。

      (2)能輸出各班的某門課程不及格的名單(含學(xué)號、姓名和成績)。(3)能輸出某門課程全年級前5名的學(xué)號、姓名和成績。(4)能輸出某門課程每個班的總平均分(從高到低排列)。(5)能輸出某門課程某班的成績單(按學(xué)號排列)。

      2).通訊錄管理程序。通訊錄要求存儲姓名、性別、工作單位、住宅電話、移動電話、辦公電話、E-mail地址等內(nèi)容。系統(tǒng)功能要求如下:

      (1)通訊錄記錄按姓名排序存放,顯示時每屏不超過20個記錄,超過時分屏顯示。(2)增加某人的通訊錄。(3)修改某人的通訊錄。(4)刪除某人的通訊錄。

      (5)按多種方式查詢符合條件的信息。(6)用文件存儲數(shù)據(jù)。

      3).圖書室管理系統(tǒng)。該系統(tǒng)存儲以下信息:

      (1)對于同一作者同一書名的書,存儲書名、書目編號、作者名、庫存冊數(shù)(不包括已借出的)、已借出冊數(shù)。

      (2)對于每一本書還要存儲一個登錄號(這是區(qū)別每一本書的唯一標(biāo)志)、當(dāng)前借閱該書的讀者姓名與借書證號、借閱日期。

      系統(tǒng)功能要求如下:(1)創(chuàng)建存儲系統(tǒng)。(2)增加新書。

      (3)刪去無使用價值的舊書。

      (4)處理借書。要求讀者提供書目號與登錄號,一位讀者限借2冊。檢查庫中有無讀者要求借閱的圖書,檢查該讀者已借閱圖書數(shù)量。

      (5)處理還書。

      (6)查詢某登錄號的書是誰借了。

      4).工資管理系統(tǒng)。該系統(tǒng)在磁盤上存儲了某單位上月全體職工的工資信息。對于每一位職工存儲以下信息:月份,職工編號,基本工資,津貼,崗貼,補貼,房貼,交通費,應(yīng)發(fā)數(shù),房租,儲蓄,會費,個人所得稅,應(yīng)扣數(shù),實發(fā)數(shù)。個人所得稅計算方法設(shè)為:工資少于800元的部分為0,800~2000元的部分為5%,2000~5000元的部分為10%,5000元以上的部分為20%。

      系統(tǒng)功能要求如下:

      (1)創(chuàng)建存儲職工工資信息的存儲系統(tǒng)。(2)添加某職工的工資信息。(3)刪除某職工的工資信息。

      (4)修改某職工的部分工資信息(當(dāng)月開始增加或減少某些項工資或扣款數(shù)變化)。(5)輸出指定編號職工的工資信息(借查詢用)。(6)輸出當(dāng)月全體職工的工資信息(發(fā)工資用)。

      5).車票管理系統(tǒng)。一車站每天有n個發(fā)車班次,每個班次都有一班次號(1,2,3,…,n),固定的發(fā)車時間固定的路線(起始站、終點站),大致的行車時間,固定的額定載客量。例如:

      班次

      發(fā)車時間

      起點站

      終點站

      行車時間

      額定載量

      已訂票人數(shù) 1

      8:30

      長沙

      廣州

      2

      9:30

      長沙

      南昌

      1.5

      3

      8:00

      長沙

      南寧

      4.5

      4

      10:00

      長沙

      武漢

      3.5

      ……(1)錄入班次信息(信息用文件保存),可不定時地增加班次數(shù)據(jù)。

      (2)瀏覽班次信息,可顯示出所有班次當(dāng)前狀況。如果當(dāng)前系統(tǒng)時間超過了某班次的發(fā)車時間,則顯示“此班已發(fā)出”的提示信息。

      (3)查詢路線:可按班次號查詢,也可按終點站查詢。

      (4)售票和退票功能。當(dāng)查詢出已定票人數(shù)小于額定載量且當(dāng)前系統(tǒng)時間小于發(fā)車時間時才能售票,自動更新已售票人數(shù)。退票時,輸入退票的班次,當(dāng)本班車未發(fā)出時才能退票,自動更新已售票人數(shù)。

      三、實習(xí)紀(jì)律

      1、獨立思考、完成程序設(shè)計的所有內(nèi)容,嚴(yán)禁抄襲。2、按時上、下機(jī),不得無故缺課

      四、設(shè)計報告要求

      設(shè)計報告要求簡潔、嚴(yán)謹(jǐn)(3000-4000字,4頁),應(yīng)包括以下幾方面的內(nèi)容: 1、系統(tǒng)功能概述

      2、主要的數(shù)據(jù)結(jié)構(gòu)概述 3、系統(tǒng)結(jié)構(gòu)框架

      4、各主要功能模塊的實現(xiàn)算法(畫出流程圖或自然語言描述)

      5、調(diào)試過程中遇到的主要問題及解決的方法;對設(shè)計和編碼的回顧討論和分析;改進(jìn)思想;收獲和體會等

      6、主要程序模塊的清單

      五、時間安排

      上機(jī)時間:18-19周

      最后一次實驗檢查程序運行情況并交設(shè)計報告。

      六、成績評定規(guī)則

      1、程序調(diào)試結(jié)果分優(yōu)、良、中、及格、不及格五等,占總課程成績的60%

      2、實驗過程評價:在上機(jī)操作過程中學(xué)生的上機(jī)能力按優(yōu)、良、中三檔評定,占課程總成績的20%

      3、實驗報告評價占課程總成績的20%

      指導(dǎo)教師 李利明

      中南大學(xué)

      計算機(jī)基礎(chǔ)教學(xué)實驗中心

      2012.6.1

      第四篇:C++語言課程設(shè)計一迷你高爾夫

      C++語言課程設(shè)計一迷你高爾夫

      一、實驗內(nèi)容

      玩家通過按下鍵盤上的上下左右方向鍵控制球的移動,使其最終到達(dá)出口則游戲通關(guān)。

      要求如下:

      1、游戲分成3關(guān),第一關(guān)、第二關(guān)、第三關(guān)界面圖如下:

      第一關(guān)

      第二關(guān)

      第三關(guān)

      2、啟動游戲進(jìn)入第一關(guān),勝利后進(jìn)入第二關(guān),如果第三關(guān)通關(guān),則游戲重新回到第一關(guān)。

      3、游戲玩法是通關(guān)控制鍵盤上的上下左右方向鍵控制球的運動,單擊方向鍵,則球獲得一個向該方向直線運動的速度。如果球遇到方塊,則球停止運動,如果遇到黑洞,則游戲結(jié)束,重新開始該游戲,遇到出口則通關(guān)。

      4、球靜止?fàn)顟B(tài)下會有箭頭指示球可以運動的方向,運動狀態(tài)下則箭頭消失。如果球運動出世界邊界,則游戲結(jié)束,重新回到該游戲。

      二、實驗指南

      實驗一

      開始實驗

      【實驗任務(wù)】

      步驟一、打開FunCode,創(chuàng)建一個的C++語言項目;

      步驟二、導(dǎo)入GolfGame場景。

      【實驗思路】

      按實驗指導(dǎo)完成。

      【實驗指導(dǎo)】

      1、打開FunCode,點擊“項目”菜單,選擇“創(chuàng)建C++工程”

      注意:工程名名稱要求字母開頭,只能包含字母和數(shù)字,且名字中間不能有空格。

      2、點擊菜單“項目”中的“導(dǎo)入地圖模塊”,如圖一。跳出一個對話框,選中“GolfGame”模板,點擊“導(dǎo)入到工程”按鈕,如圖二。

      3、導(dǎo)入成功后的,界面如下圖所示:

      地圖不僅包括界面設(shè)計,還包括該游戲可能要用到的其他精靈。添加到“場景”中的精靈,都已經(jīng)取好名稱,并根據(jù)程序要求設(shè)置好中心點、鏈接點等,學(xué)生只需要直接編程就可以。

      實驗二

      游戲關(guān)卡初始化

      【實驗內(nèi)容】

      步驟一、關(guān)卡地圖初始化

      步驟二、清除上一關(guān)卡數(shù)據(jù)

      步驟三、根據(jù)當(dāng)前關(guān)卡,選擇關(guān)卡數(shù)據(jù)

      【實驗思路】

      游戲開始的時候首先要清除上一關(guān)的游戲數(shù)據(jù),即將上一關(guān)創(chuàng)建的精靈從地圖中刪掉。

      將游戲地圖分成12*12的方格界面,游戲總共分成三關(guān),因此我們需要用三個二維數(shù)組m_iLevelData1[GRID_COUNT][GRID_COUNT]

      m_iLevelData2[GRID_COUNT][GRID_COUNT]

      m_iLevelData3[GRID_COUNT][GRID_COUNT]

      (其中GRID_COUNT的值為12)

      來存放這三關(guān)的數(shù)據(jù)即可。二維數(shù)組中0表示該位置不創(chuàng)建精靈,否則根據(jù)不同的值創(chuàng)建不同精靈,RIGID_BLOCK(值為1)表示創(chuàng)建一個方塊精靈,BLACK_HOLE(值為2)表示創(chuàng)建一個黑洞精靈,GOLF_EXIT(值為3)表示創(chuàng)建一個出口精靈。每次把代表該關(guān)卡的二維數(shù)組的數(shù)據(jù)拷貝到存儲當(dāng)前關(guān)卡m_iGridData的二維數(shù)組中。

      【實驗指導(dǎo)】

      1、進(jìn)入LessonX.h的CGameMain類中,添加以下成員變量的聲明:

      static

      const

      float

      m_fGridStartX

      ;

      //

      第一塊方塊的起始坐標(biāo)

      =

      -(GRID_COUNT

      *

      g_fGridSize

      *

      0.5

      g_fGridSize

      /

      2)

      static

      const

      float

      m_fGridStartY

      ;

      static

      const

      float

      m_fGridSize;

      //

      每塊的大小,包括球、出口等都是此大小

      int

      m_iRigidBlockCount;

      //

      本關(guān)卡創(chuàng)建的阻擋物方塊數(shù)量

      int

      m_iBlackHoleCount

      ;

      //

      本關(guān)卡創(chuàng)建的黑洞數(shù)量

      int

      m_iGolfExitCount;

      //

      本關(guān)卡創(chuàng)建的出口的數(shù)量

      int

      m_iCurLevel;

      //

      當(dāng)前關(guān)卡

      int

      m_iMoveState

      ;

      //

      控制球的移動狀態(tài):0當(dāng)前靜止,可以移動,1、2、3、4:代表上下左右4個方向移動中,按鍵無響應(yīng)

      int

      m_iGridData[GRID_COUNT][GRID_COUNT];

      //

      二維數(shù)組,存儲當(dāng)

      前關(guān)卡N*N的矩陣方塊信息

      static

      const

      int

      m_iLevelData1[GRID_COUNT][GRID_COUNT]

      ;

      static

      const

      int

      m_iLevelData2[GRID_COUNT][GRID_COUNT]

      ;

      static

      const

      int

      m_iLevelData3[GRID_COUNT][GRID_COUNT]

      ;

      vector

      m_vRigidBlock;

      //阻擋物精靈向量數(shù)組

      vector

      m_vBlackHole;

      //黑洞精靈向量數(shù)組

      vector

      m_vGolfExit;

      //出口精靈向量數(shù)組

      int

      m_iControlStartX;

      //控制球的初始X坐標(biāo),根據(jù)關(guān)卡數(shù)據(jù)自行指定

      int

      m_iControlStartY;

      //球的初始Y坐標(biāo)

      2、進(jìn)入LessonX.h中在頭文件聲明的后面添加下面的宏定義代碼:

      #define

      GRID_COUNT

      //

      N

      *

      N的矩陣方塊,一個N的大小

      #define

      MAX_LEVEL

      //

      最大關(guān)卡數(shù)量。如果要增加關(guān)卡,請先修改此值

      #define

      RIGID_BLOCK

      //

      以下3個分別為方塊阻擋物、黑洞、出口的值

      #define

      BLACK_HOLE

      #define

      GOLF_EXIT33、進(jìn)入LessonX.cpp中添加上面的成員變量的初始化:

      1)

      在構(gòu)造函數(shù)中把m_iGameState的值由0改為1:

      m_iGameState

      =

      1;

      2)

      在構(gòu)造函數(shù)中添加下面代碼:

      m_iRigidBlockCount

      =

      0;

      //

      本關(guān)卡創(chuàng)建的阻擋物方塊數(shù)量

      m_iBlackHoleCount

      =

      0;

      //

      本關(guān)卡創(chuàng)建的黑洞數(shù)量

      m_iGolfExitCount

      =

      0;

      m_iCurLevel

      =

      1;

      m_iControlStartX

      =

      0;

      //球的初始X坐標(biāo)

      m_iControlStartY

      =

      0;

      //球的初始Y坐標(biāo)

      3)

      對于const類型的成員變量,我們需要在函數(shù)外面單獨進(jìn)行初始化,在文件最后面添加如下代碼:

      const

      float

      CGameMain::m_fGridStartX

      =-27.5f;

      const

      float

      CGameMain::m_fGridStartY

      =-27.5f;

      const

      float

      CGameMain::m_fGridSize

      =5.f;

      const

      int

      CGameMain::m_iLevelData1[GRID_COUNT][GRID_COUNT]

      =

      {

      {0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,0,0},{0,0,0,RIGID_BLOCK,0,0,0,0,RIGID_BLOCK,0,0,0},{0,0,0,RIGID_BLOCK,0,0,0,0,RIGID_BLOCK,0,0,0},{0,0,0,RIGID_BLOCK,0,0,0,0,BLACK_HOLE,0,0,0},{0,0,0,0,0,0,0,GOLF_EXIT,RIGID_BLOCK,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0}

      };

      const

      int

      CGameMain::m_iLevelData2[GRID_COUNT][GRID_COUNT]={

      {0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,RIGID_BLOCK,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,GOLF_EXIT,RIGID_BLOCK,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,0,0},{0,RIGID_BLOCK,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,RIGID_BLOCK,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,RIGID_BLOCK,0}

      };

      const

      int

      CGameMain::m_iLevelData3[GRID_COUNT][GRID_COUNT]={

      {0,0,0,0,0,0,0,0,RIGID_BLOCK,RIGID_BLOCK,0,0},{0,0,RIGID_BLOCK,RIGID_BLOCK,RIGID_BLOCK,0,0,0,0,0,0,RIGID_BLOCK},{RIGID_BLOCK,0,0,0,0,0,0,0,0,0,0,RIGID_BLOCK},{0,0,0,0,0,0,0,0,0,0,0,RIGID_BLOCK},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,GOLF_EXIT,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,RIGID_BLOCK,RIGID_BLOCK,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,RIGID_BLOCK,0},{0,0,0,RIGID_BLOCK,0,0,0,0,0,0,RIGID_BLOCK,0},{0,0,0,0,BLACK_HOLE,RIGID_BLOCK,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0,0,0,0}

      };

      二維數(shù)組中0表示該位置不創(chuàng)建精靈,否則根據(jù)不同的值創(chuàng)建不同精靈,RIGID_BLOCK(值為1)表示創(chuàng)建一個方塊精靈,BLACK_HOLE(值為2)表示創(chuàng)建一個黑洞精靈,GOLF_EXIT(值為3)表示創(chuàng)建一個出口精靈。

      4)

      進(jìn)入GameInit函數(shù)里面,將球的運動狀態(tài)初始化為靜止,添加下面代碼:

      m_iMoveState=0;

      4、游戲初始化的時候,首先我們需要將前邊添加的精靈全部刪除掉,因此需要自定義的創(chuàng)建清除所有精靈函數(shù)ClearAllSprite()來實現(xiàn)這個功能。

      1)

      進(jìn)入LessonX.h文件的CGameMain類中添加該函數(shù)的聲明:

      void

      ClearAllSprite();

      2)

      在LessonX.cpp最后面添加該函數(shù)的定義:

      void

      CGameMain::

      ClearAllSprite()

      {

      }

      3)

      再使用3個循環(huán),分別將上一關(guān)卡創(chuàng)建的3種精靈刪除掉。在上邊定義的函數(shù)中添加如下代碼:

      int

      iLoop

      =

      0;

      for(iLoop

      =

      0;

      iLoop

      m_vRigidBlock.size();

      iLoop++)

      {

      m_vRigidBlock[iLoop]->DeleteSprite();

      }

      for(iLoop

      =

      0;

      iLoop

      m_vBlackHole.size();

      iLoop++)

      {

      m_vBlackHole[iLoop]->DeleteSprite();

      }

      for(iLoop

      =

      0;

      iLoop

      m_vGolfExit.size();

      iLoop++)

      {

      m_vGolfExit[iLoop]->DeleteSprite();

      }

      其中m_vRigidBlock、m_vBlackHole、m_vGolfExit是存儲三種精靈的向量數(shù)組,每一個循環(huán)都遍歷一遍向量數(shù)組并調(diào)用數(shù)組中每個精靈的DeleteSprite函數(shù)即可。

      m_vRigidBlock.size()、m_vBlackHole.size()、m_vGolfExit.size()表示每種精靈的總數(shù)。

      4)

      最后在GameInit()中添加調(diào)用此函數(shù)的代碼:

      ClearAllSprite();

      5、在GameInit()中,我們也需要對關(guān)卡進(jìn)行選擇初始化。因此我們需要自定義一個初始化關(guān)卡函數(shù)InitLevel

      ()來實現(xiàn)這個功能。

      1)

      進(jìn)入LessonX.h文件的CGameMain類中添加該函數(shù)的聲明:

      void

      InitLevel();

      2)

      在LessonX.cpp最后面添加該函數(shù)的定義:

      void

      CGameMain::

      InitLevel()

      {

      }

      3)

      初始化關(guān)卡,要根據(jù)當(dāng)前關(guān)卡,選擇關(guān)卡的數(shù)據(jù),即將代表關(guān)卡的二維數(shù)組中的數(shù)據(jù)拷貝到m_iGridData中,同時設(shè)置控制球在每個數(shù)組中的起始位置。首先把需要的數(shù)據(jù)初始化為0,代碼如下:

      //

      總數(shù)置0,重新創(chuàng)建

      m_iRigidBlockCount

      =

      0;

      m_iBlackHoleCount

      =

      0;

      m_iGolfExitCount

      =

      0;

      4)

      選擇關(guān)卡我們使用了switch-case結(jié)構(gòu),程序通過判斷switch中的參數(shù)進(jìn)入到不同的case中去,每個case就是一種情況的實現(xiàn)。代碼如下:

      //

      根據(jù)當(dāng)前關(guān)卡,選擇關(guān)卡數(shù)據(jù)

      switch(m_iCurLevel)

      {

      case

      2:

      {

      m_iControlStartX

      =

      5;

      m_iControlStartY

      =

      9;

      memcpy(m_iGridData,m_iLevelData2,sizeof(int)

      *

      GRID_COUNT

      *

      GRID_COUNT);

      }

      break;

      case

      3:

      {

      m_iControlStartX

      =

      3;

      m_iControlStartY

      =

      6;

      memcpy(m_iGridData,m_iLevelData3,sizeof(int)

      *

      GRID_COUNT

      *

      GRID_COUNT);

      }

      break;

      //

      Level1

      或者g_iCurLevel錯誤

      case

      1:

      default:

      {

      m_iControlStartX

      =

      5;

      m_iControlStartY

      =

      6;

      memcpy(m_iGridData,m_iLevelData1,sizeof(int)

      *

      GRID_COUNT

      *

      GRID_COUNT);

      }

      break;

      };

      memcpy函數(shù)作用是從源src所指的內(nèi)存地址的起始位置開始拷貝n個字節(jié)到目標(biāo)dest所指的內(nèi)存地址的起始位置中。因為二維數(shù)組在內(nèi)存中的存放方式是連續(xù)的,因此我們將源地址拷貝給m_iGridData的起始地址之后,系統(tǒng)后自動根據(jù)m_iGridData的下標(biāo)來找到正確的值。

      5)

      最后在GameInit()中添加調(diào)用此函數(shù)的代碼:

      InitLevel();

      至此,本實驗結(jié)束。

      實驗三

      初始化游戲精靈

      【實驗內(nèi)容】

      步驟一、創(chuàng)建精靈

      步驟二、初始化精靈位置

      【實驗思路】

      遍歷二維數(shù)組m_iGridData,根據(jù)數(shù)組值生成對應(yīng)的精靈實例:值為0的時候不用創(chuàng)建,需要創(chuàng)建的精靈名字前綴為(按照宏定義的1,2,3順序):RigidBlock,BlackHole,GolfExit。每創(chuàng)建一種精靈,將其總數(shù)加1

      :m_iRigidBlockCount,m_iBlackHoleCount,m_iGolfExitCount。

      【實驗指導(dǎo)】

      1、進(jìn)入LessonX.h,CGameMain類中添加下面成員變量的聲明:

      CSprite*

      m_pControlBall;

      //控制球精靈

      CSprite*

      m_pGolfArrow;

      //指示箭頭精靈

      在LessonX.cpp中CGameMain類在構(gòu)造函數(shù)里面添加上面成員變量的初始化:

      m_pControlBall

      =

      new

      CSprite(“ControlBall“);

      m_pGolfArrow

      =

      new

      CSprite(“GolfArrow“);

      2、創(chuàng)建精靈之后需要將精靈移到特定位置,因此我們需要定義一個自定義的函數(shù)MoveSpriteToBlock來實現(xiàn)這個功能。

      6)

      進(jìn)入LessonX.h中添加該函數(shù)的聲明:

      void

      MoveSpriteToBlock(CSprite*

      tmpSprite,const

      int

      iIndexX,const

      int

      iIndexY);

      7)

      在LessonX.cpp最后面添加該函數(shù)的定義:

      void

      CGameMain::MoveSpriteToBlock(CSprite*

      tmpSprite,const

      int

      iIndexX,const

      int

      iIndexY)

      {

      }

      8)

      傳入該函數(shù)的是精靈實體以及x,y坐標(biāo)參數(shù)。再通過SetSpritePosition函數(shù)設(shè)置精靈位置,在該函數(shù)里面添加如下代碼:

      float

      fPosX

      =

      m_fGridStartX

      +

      iIndexX

      *

      m_fGridSize;

      float

      fPosY

      =

      m_fGridStartY

      +

      iIndexY

      *

      m_fGridSize;

      tmpSprite->SetSpritePosition(fPosX,fPosY);

      3、這里定義一個函數(shù)CreateAllSprite()來創(chuàng)建控制球、方塊精靈、出口精靈和黑洞精靈。然后在函數(shù)內(nèi)部添加代碼創(chuàng)建精靈。

      原理是通過兩個for循環(huán)來,判斷m_iGridData的值,如果為0,則不創(chuàng)建,如果為RIGID_BLOCK則創(chuàng)建一個方塊精靈,為

      BLACK_HOLE則創(chuàng)建一個黑洞精靈,為GOLF_EXIT則創(chuàng)建一個出口精靈。由于我們預(yù)先在地圖中擺放了三個模板精靈,因此只需要使用CloneSprite函數(shù)即可創(chuàng)建新的精靈。然后再調(diào)用MoveSpriteToBlock函數(shù)將精靈移動到指定位置。最后每創(chuàng)建一個實現(xiàn)精靈,將它添加到相應(yīng)的精靈向量數(shù)組中。

      1)

      進(jìn)入LessonX.h文件的CGameMain類中添加該函數(shù)的聲明:

      void

      CreateAllSprite();

      2)

      在LessonX.cpp最后面添加該函數(shù)的定義:

      void

      CGameMain::

      CreateAllSprite()

      {

      }

      3)

      在定義汗的函數(shù)中添加變量聲明:

      int

      iLoopX

      =

      0,iLoopY

      =

      0;

      CSprite*

      tmpSprite;

      char

      *szName

      =

      NULL;

      4)

      實現(xiàn)兩個for循環(huán):

      for(iLoopY

      =

      0;

      iLoopY

      GRID_COUNT;

      iLoopY++)

      {

      for(int

      iLoopX

      =

      0;

      iLoopX

      GRID_COUNT;

      iLoopX++)

      {

      }

      }

      5)

      在里面的循環(huán)添加判斷代碼:

      如果是0,則不創(chuàng)建精靈,continue表示跳出本次循環(huán),繼續(xù)下一個循環(huán)。

      if(0

      ==

      m_iGridData[iLoopY][iLoopX])

      continue;

      如果是方塊,則創(chuàng)建方塊精靈:

      if(RIGID_BLOCK

      ==

      m_iGridData[iLoopY][iLoopX])

      {

      szName

      =

      CSystem::MakeSpriteName(“RigidBlock“,m_iRigidBlockCount);

      tmpSprite=new

      CSprite(szName);

      tmpSprite->CloneSprite(“RigidBlockTemplate“);

      MoveSpriteToBlock(tmpSprite,iLoopX,iLoopY);

      m_vRigidBlock.push_back(tmpSprite);

      m_iRigidBlockCount++;

      }

      如果是黑洞,則創(chuàng)建黑洞精靈:

      else

      if(BLACK_HOLE

      ==

      m_iGridData[iLoopY][iLoopX])

      {

      szName

      =

      CSystem::MakeSpriteName(“BlackHole“,m_iBlackHoleCount);

      tmpSprite=new

      CSprite(szName);

      tmpSprite->CloneSprite(“BlackHoleTemplate“);

      MoveSpriteToBlock(tmpSprite,iLoopX,iLoopY);

      m_vBlackHole.push_back(tmpSprite);

      m_iBlackHoleCount++;

      }

      如果是出口,則創(chuàng)建出口精靈:

      else

      if(GOLF_EXIT

      ==

      m_iGridData[iLoopY][iLoopX])

      {

      szName

      =

      CSystem::MakeSpriteName(“GolfExit“,m_iGolfExitCount);

      tmpSprite=new

      CSprite(szName);

      tmpSprite->CloneSprite(“GolfExitTemplate“);

      MoveSpriteToBlock(tmpSprite,iLoopX,iLoopY);

      m_vGolfExit.push_back(tmpSprite);

      m_iGolfExitCount++;

      }

      6)

      將控制球和指示箭頭擺放到初始位置,此時球靜止,因此指示箭頭可見。在上面的兩個循環(huán)后面添加下面的代碼:

      m_pControlBall->SetSpriteLinearVelocity(0.f,0.f);

      MoveSpriteToBlock(m_pControlBall,m_iControlStartX,m_iControlStartY);

      MoveSpriteToBlock(m_pGolfArrow,m_iControlStartX,m_iControlStartY);

      m_pGolfArrow->SetSpriteVisible(1);

      7)

      最后在GameInit()中調(diào)用此函數(shù):

      CreateAllSprite();

      至此,本實驗結(jié)束。

      實驗四

      移動球

      【實驗內(nèi)容】

      步驟一、響應(yīng)鍵盤按鍵按下消息

      步驟二、球精靈坐標(biāo)轉(zhuǎn)換為二維格子數(shù)組索引

      步驟三、判斷移動方向,使球獲取速度

      【實驗思路】

      首先響應(yīng)系統(tǒng)的按鍵消息函數(shù),然后獲取精靈坐標(biāo),并將其轉(zhuǎn)換為二維格子中的坐標(biāo),判斷其旁邊的格子是否是方塊,如果不是則給球一個移動的速度。

      【實驗指導(dǎo)】

      1、進(jìn)入LessonX.h中,添加我們自定義的鍵盤消息處理函數(shù)OnKeyDown的聲明:

      void

      OnKeyDown(const

      int

      iKey,const

      int

      iAltPress,const

      int

      iShiftPress,const

      int

      iCtrlPress);

      2、在LessonX.cpp中添加該函數(shù)的定義:

      void

      CGameMain::OnKeyDown(const

      int

      iKey,const

      int

      iAltPress,const

      int

      iShiftPress,const

      int

      iCtrlPress)

      {

      }

      3、首先判斷游戲狀態(tài),只有在游戲中已經(jīng)可以移動狀態(tài)才響應(yīng)按鍵,在上面函數(shù)中添加下面的代碼:

      if(2

      !=

      m_iGameState

      ||

      0

      !=

      m_iMoveState)

      return;

      4、獲取控制球精靈坐標(biāo)轉(zhuǎn)換到二維格子數(shù)組索引,這里我們需要定義兩個函數(shù)SpritePosXToIndexX和SpritePosXToIndexY分別處理精靈坐標(biāo)轉(zhuǎn)換為二維格子的X索引和Y索引:

      1)

      進(jìn)入LessonX.h中添加上面兩個函數(shù)的聲明:

      int

      SpritePosXToIndexX(const

      float

      fPosX);

      int

      SpritePosYToIndexY(const

      float

      fPosY);

      2)

      進(jìn)入LessonX.cpp中添加SpritePosXToIndexX的定義:

      int

      CGameMain::

      SpritePosXToIndexX

      (const

      float

      fPosX)

      {

      }

      3)

      首先得到左右邊界的坐標(biāo)值。m_fGridStartX是在方塊的中心,所以需要減去半個方塊的寬度才是左邊邊界。在SpritePosXToIndexX函數(shù)定義中添加下面的代碼:

      const

      float

      fLeftSide

      =

      m_fGridStartX

      m_fGridSize

      /

      2.f;

      const

      float

      fRightSide

      =

      fLeftSide

      +

      m_fGridSize

      *

      GRID_COUNT;

      4)

      最后需要判斷坐標(biāo)是否出了左右邊界,如果沒有則返回X索引值。在上面的函數(shù)里面添加下面的判斷代碼:

      if(fPosX

      fLeftSide

      ||

      fPosX

      fRightSide)

      return

      -1;

      int

      iIndexX

      =

      (int)((fPosX

      fLeftSide)

      /

      m_fGridSize);

      return

      iIndexX;

      5)

      在LessonX.cpp中添加SpritePosYToIndexY函數(shù)的定義:

      int

      CGameMain::SpritePosYToIndexY(const

      float

      fPosY)

      {

      }

      6)

      首先獲取上下邊界坐標(biāo)值。m_fGridStartY是在方塊的中心,所以需要減去半個方塊的寬度才是上邊邊界。在上面的函數(shù)定義中添加下面的代碼:

      const

      float

      fTopSide

      =

      m_fGridStartY

      m_fGridSize

      /

      2.f;

      const

      float

      fBottomSide

      =

      fTopSide

      +

      m_fGridSize

      *

      GRID_COUNT;

      7)

      最后判斷是否超過了上下邊界,沒有則返回Y索引值:

      if(fPosY

      fTopSide

      ||

      fPosY

      fBottomSide)

      return

      -1;

      int

      iIndexY

      =

      (int)((fPosY

      fTopSide)

      /

      m_fGridSize);

      return

      iIndexY;

      5、有了上面的兩個函數(shù),我們就可以將控制球精靈坐標(biāo)轉(zhuǎn)換到二維格子數(shù)組索引,并判斷坐標(biāo)是否超出邊界,在OnKeyDown函數(shù)中添加下面的代碼:

      float

      fPosX

      =

      m_pControlBall->GetSpritePositionX();

      float

      fPosY

      =

      m_pControlBall->GetSpritePositionY();

      int

      iIndexX

      =

      SpritePosXToIndexX(fPosX);

      int

      iIndexY

      =

      SpritePosYToIndexY(fPosY);

      if(iIndexX

      0

      ||

      iIndexX

      >=

      GRID_COUNT

      ||

      iIndexY

      0

      ||

      iIndexY

      >=

      GRID_COUNT)

      return;

      6、根據(jù)上下左右方向鍵,先判斷控制球旁邊是否是方塊,如果是方塊則不能移動。不是方塊,則給予控制球一個速度。使用iIndexX,iIndexY的時候,注意要判斷是否是邊緣的索引,如果不判斷就進(jìn)行加1減1,訪問數(shù)組會造成下標(biāo)溢出。即如果要判斷左邊是否是方塊阻擋,則索引值為

      IndexX

      。此時必須先判斷iIndexX大于0,才能減一。如果iIndexX為0,代表直接可以移動。

      1)

      如果是按下向上方向鍵:

      if(KEY_UP

      ==

      iKey)

      {

      if(iIndexY

      0

      &&

      RIGID_BLOCK

      ==

      m_iGridData[iIndexY

      1][iIndexX])

      return;

      //

      給予控制球一個方向速度,并設(shè)置移動狀態(tài)、隱藏指示箭頭

      m_iMoveState

      =

      1;

      m_pControlBall->SetSpriteLinearVelocityY(-30.f);

      m_pGolfArrow->SetSpriteVisible(0);

      }

      2)

      如果是按下向下方向鍵:

      else

      if(KEY_DOWN

      ==

      iKey)

      {

      if(iIndexY

      GRID_COUNT

      &&

      RIGID_BLOCK

      ==

      m_iGridData[iIndexY

      +

      1][iIndexX])

      return;

      //

      給予控制球一個方向速度,并設(shè)置移動狀態(tài)、隱藏指示箭頭

      m_iMoveState

      =

      2;

      m_pControlBall->SetSpriteLinearVelocityY(30.f);

      m_pGolfArrow->SetSpriteVisible(0);

      }

      3)

      如果是按下向左方向鍵:

      else

      if(KEY_LEFT

      ==

      iKey)

      {

      if(iIndexX

      0

      &&

      RIGID_BLOCK

      ==

      m_iGridData[iIndexY][iIndexX

      1])

      return;

      //

      給予控制球一個方向速度,并設(shè)置移動狀態(tài)、隱藏指示箭頭

      m_iMoveState

      =

      3;

      m_pControlBall->SetSpriteLinearVelocityX(-30.f);

      m_pGolfArrow->SetSpriteVisible(0);

      }

      4)

      如果是按下向右方向鍵:

      else

      if(KEY_RIGHT

      ==

      iKey)

      {

      if(iIndexX

      GRID_COUNT

      &&

      RIGID_BLOCK

      ==

      m_iGridData[iIndexY][iIndexX

      +

      1])

      return;

      //

      給予控制球一個方向速度,并設(shè)置移動狀態(tài)、隱藏指示箭頭

      m_iMoveState

      =

      4;

      m_pControlBall->SetSpriteLinearVelocityX(30.f);

      m_pGolfArrow->SetSpriteVisible(0);

      }

      7、最后在Main.cpp中的OnKeyDown函數(shù)里面添加我們的自定義函數(shù)的調(diào)用:

      g_GameMain.OnKeyDown(iKey,bAltPress,bShiftPress,bCtrlPress);

      至此,本實驗結(jié)束。

      實驗五球運動情況的處理

      【實驗內(nèi)容】

      步驟一、獲得球所在邊緣格子信息

      步驟二、不同格子分情況處理

      【實驗思路】

      獲取球精靈的當(dāng)前坐標(biāo)并將其轉(zhuǎn)換為二維格子的坐標(biāo),判斷在運動中球邊緣的情況,如果已經(jīng)出了邊界則不需要再判斷,否則如果是方塊則球??俊⑹呛诙磩t重新開始關(guān)卡、是出口則通關(guān)。

      【實驗指導(dǎo)】

      1、進(jìn)入LessonX.cpp中的GameRun函數(shù)中,移動狀態(tài)為移動中,時刻監(jiān)測控制球的移動情況,根據(jù)移動方向的下一個方塊,進(jìn)行對應(yīng)的處理。添加下面的if判斷:

      if(0

      !=

      m_iMoveState)

      {

      }

      2、先將控制球精靈坐標(biāo)轉(zhuǎn)換到二維格子數(shù)組索引,如果控制球已經(jīng)出了邊界,所以不需要再判斷。在上面的判斷里面添加下面的代碼:

      float

      fPosX

      =

      m_pControlBall->GetSpritePositionX();

      float

      fPosY

      =

      m_pControlBall->GetSpritePositionY();

      int

      iIndexX

      =

      SpritePosXToIndexX(fPosX);

      int

      iIndexY

      =

      SpritePosYToIndexY(fPosY);

      //

      控制球已經(jīng)出了邊界,所以不需要再判斷

      if(iIndexX

      0

      ||

      iIndexX

      >=

      GRID_COUNT

      ||

      iIndexY

      0

      ||

      iIndexY

      >=

      GRID_COUNT)

      return;

      3、根據(jù)當(dāng)前方向,獲得控制球邊緣所在的格子信息(球在坐標(biāo)是在中心點,所以加上球的大小的一半)??偣灿?中方向,即上下左右,分別用1、2、3、4來表示,添加下面的代碼:

      float

      fNextPosX

      =

      fPosX;

      float

      fNextPosY

      =

      fPosY;

      //

      if(1

      ==

      m_iMoveState)

      {

      fNextPosY

      -=

      m_fGridSize

      *

      0.5f;

      }

      else

      if(2

      ==

      m_iMoveState)

      {

      fNextPosY

      +=

      m_fGridSize

      *

      0.5f;

      }

      else

      if(3

      ==

      m_iMoveState)

      {

      fNextPosX

      -=

      m_fGridSize

      *

      0.5f;

      }

      else

      if(4

      ==

      m_iMoveState)

      {

      fNextPosX

      +=

      m_fGridSize

      *

      0.5f;

      }

      4、將上面得到的坐標(biāo)再轉(zhuǎn)換為二維格子的坐標(biāo),并判斷是否越出邊界,添加下面的代碼:

      int

      iNextIndexX

      =

      SpritePosXToIndexX(fNextPosX);

      int

      iNextIndexY

      =

      SpritePosYToIndexY(fNextPosY);

      //

      該邊緣已經(jīng)出了邊界,不需要往下判斷

      if(iNextIndexX

      0

      ||

      iNextIndexX

      >=

      GRID_COUNT

      ||

      iNextIndexY

      0

      ||

      iNextIndexY

      >=

      GRID_COUNT)

      return;

      5、根據(jù)球邊緣當(dāng)前所在的格子的信息,進(jìn)行不同的處理:是方塊則球??俊⑹呛诙磩t重新開始關(guān)卡、是出口則通關(guān):

      1)

      是方塊:

      if(RIGID_BLOCK

      ==

      m_iGridData[iNextIndexY][iNextIndexX])

      {

      //

      清零移動狀態(tài)

      m_iMoveState

      =

      0;

      //

      速度清零,顯示指示箭頭

      m_pControlBall->SetSpriteLinearVelocity(0.f,0.f);

      m_pGolfArrow->SetSpriteVisible(1);

      //

      把球和指示箭頭設(shè)置在本方塊的中心

      MoveSpriteToBlock(m_pControlBall,iIndexX,iIndexY);

      MoveSpriteToBlock(m_pGolfArrow,iIndexX,iIndexY);

      }

      2)

      是黑洞:

      else

      if(BLACK_HOLE

      ==

      m_iGridData[iNextIndexY][iNextIndexX])

      {

      //

      將游戲狀態(tài)設(shè)置為1,重新開始關(guān)卡

      m_iGameState

      =

      1;

      }

      3)

      是出口:

      else

      if(GOLF_EXIT

      ==

      m_iGridData[iNextIndexY][iNextIndexX])

      {

      //

      將游戲狀態(tài)設(shè)置為1,開始新關(guān)卡

      m_iGameState

      =

      1;

      //

      往下一關(guān)卡,如果已經(jīng)是最大值,則返回第一關(guān)

      m_iCurLevel++;

      if(m_iCurLevel

      MAX_LEVEL)

      m_iCurLevel

      =

      1;

      }

      至此,本實驗結(jié)束。

      實驗六球出邊界處理

      【實驗內(nèi)容】

      步驟、控制球出邊界,則游戲重新開始

      【實驗思路】

      此部分比較簡單,只要通過系統(tǒng)判斷球精靈是否越過世界邊界,得到數(shù)據(jù)之后在我們的自定義函數(shù)里面處理即可。

      【實驗指導(dǎo)】

      1、進(jìn)入LessonX.h中添加我們的自定義處理函數(shù)OnSpriteColWorldLimit的聲明:

      void

      OnSpriteColWorldLimit(const

      char

      *szName,const

      int

      iColSide);

      2、進(jìn)入LessonX.cpp中添加該函數(shù)的定義:

      void

      CGameMain::OnSpriteColWorldLimit(const

      char

      *szName,const

      int

      iColSide)

      {

      }

      3、在上面的函數(shù)定義中,我們只要知道系統(tǒng)的OnSpriteColWorldLimit函數(shù)中返回的szName是否是球精靈的名稱,如果是的話則本局游戲結(jié)束,重新開始游戲。在上面的定義里面添加下面的代碼:

      //

      只處理控制的球

      if(stricmp(szName,m_pControlBall->GetName())

      !=

      0)

      return;

      //

      將游戲狀態(tài)設(shè)置為1,重新開始關(guān)卡

      m_iGameState

      =

      1;

      4、進(jìn)入Main.cpp文件,在OnSpriteColWorldLimit函數(shù)里面添加我們自定義的函數(shù)的調(diào)用,填入下面一行代碼:

      g_GameMain.OnSpriteColWorldLimit(szName,iColSide);

      5、打開Funcode,點擊地圖中的球精靈,在右側(cè)的“編輯”->“世界邊界限制”中,選擇限制模式為NULL,這樣系統(tǒng)就會以我們自定義的函數(shù)處理球越過邊界的事件了。

      至此,本實驗結(jié)束。

      第五篇:C語言課程設(shè)計參考題目

      C語言課程設(shè)計參考題目

      一、矩陣運算

      矩陣的加法、減法、轉(zhuǎn)置、數(shù)乘矩陣、交換矩陣行或列、兩個矩陣作乘法、求矩陣的秩、求可逆矩陣的逆矩陣、特殊矩陣(如對稱矩陣、反對稱矩陣、三角形矩陣)的運算。

      二、級數(shù)和數(shù)列運算

      求無窮級數(shù)的和(①從第一項累加到給定的項數(shù)時為止,②當(dāng)一般項的值變化到滿足某一條件時為止,③當(dāng)累加的級數(shù)的和滿足某一條件時為止。對于正項級數(shù)和交錯級數(shù),都能計算。);求無窮級數(shù)的某一項的值(①按給定項數(shù)求值;②按給定滿足的條件求值)。

      求數(shù)列的前n項之和(①等差數(shù)列前n項之和;②等比數(shù)列前n項之和);計算并顯示數(shù)列各項的值(①截止到第n項為止;②截止到滿足給定的條件為止);求等差中項和等比中項。

      三、統(tǒng)計與計算

      求N個整數(shù)的和、平均值、最大公約數(shù)、最小公倍數(shù)、方差、標(biāo)準(zhǔn)差等。求N個數(shù)中的最大值、最小值、出現(xiàn)次數(shù)最多的值、出現(xiàn)次數(shù)最少的值。

      對一組整數(shù)進(jìn)行分類統(tǒng)計(自行設(shè)定分類統(tǒng)計標(biāo)準(zhǔn)。例如,對于一組在0到100之間的數(shù),可以這樣分類統(tǒng)計:小于或等于100且大于等于90的有多少,小于90且大于等于80的有多少,小于80且大于等于70的有多少,小于70且大于等于60的有多少,小于60的有多少)。給定N個數(shù),計算并顯示這N個數(shù)的各種排列和組合。

      判斷某整數(shù)是否是素數(shù),求某范圍內(nèi)的所有素數(shù)。將某整數(shù)分解成若干素數(shù)乘積的形式。

      四、排序和查找運算

      將給定的N個數(shù)排序(①升序;②降序,分別用選擇法和冒泡法)。

      將給定的N個單詞排序(①升序;②降序,分別用選擇法和冒泡法)。將給定的N個英文句子排序(①升序;②降序,分別用選擇法和冒泡法)。

      運用順序查找法,在一組數(shù)中查找給定的數(shù)。運用兩分查找法,在一組數(shù)中查找給定的數(shù)。在一組數(shù)中查找到給定的數(shù)之后,用另一個數(shù)將其替換或刪除。在一組有序數(shù)中,插入某個數(shù),使插入后仍是一組有序數(shù)。

      將一組數(shù)以中間對稱的形式交換位置,然后輸出。

      五、求方程近似根和積分運算

      求一元二次方程的根。用牛頓法求某個一元高次方程的近似根。用二分法求某個一元高次方程的近似根。用弦截法求某個一元高次方程的近似根。

      求線性方程組的解。

      用矩形法求某個函數(shù)定級分。用梯形法求某個函數(shù)定級分。

      六、對英文單詞和句子運算

      分別統(tǒng)計一個英文句子中大寫字母、小寫字母、數(shù)字、空格的個數(shù)。求某個字母在一個英文句子中出現(xiàn)的位置。統(tǒng)計一個英文句子中所包含單詞的個數(shù)。統(tǒng)計一個英文句子中最長的單詞所含字母個數(shù)。統(tǒng)計某個單詞在一個英文句子中出現(xiàn)的次數(shù)。將一個單詞從英文句子中刪除,顯示刪除單詞后的英文句子。將一個單詞插入到英文句子的指定位置,顯示插入單詞后的英文句子。用一個單詞替換英文句子中的另一個單詞。比較兩個英文句子的不同點,輸出不同點的位置。

      七、畫圖案

      畫各種三角形圖案。畫各種菱形圖案。畫各種平行四邊形圖案。畫各種梯形圖案。畫各種正多邊形圖案。(以上圖案包括空心的或?qū)嵭牡膬煞N。要采用兩種方法畫一種圖案:①用二維數(shù)組;②只用循環(huán)不用二維數(shù)組。不能全用二維數(shù)組畫?。?/p>

      用以上幾種基本圖案組合成一個新圖案。

      八、商品信息管理系統(tǒng)

      每件商品信息包括編號、商品名、類型、生產(chǎn)廠家、生產(chǎn)日期、單價、庫存量等項內(nèi)容,本系統(tǒng)可以實現(xiàn)如下功能:往系統(tǒng)里添加新商品的各項信息;修改現(xiàn)有商品的各項信息;查找并顯示滿足某條件的商品的信息;按某個給定的條件將商品排序并顯示排序結(jié)果;統(tǒng)計滿足某條件的商品的庫存量;計算某種商品的總價值(單價乘庫存量),以及某幾種商品的總價值。

      九、優(yōu)秀歌手比賽評分系統(tǒng)

      比賽共有M個歌手參賽,共有N個評委為歌手打分。每次評分,由N個評委每人給歌手一個分?jǐn)?shù),然后去掉一個最高分,去掉一個最低分,求出其余N-2個分?jǐn)?shù)的平均分,作為歌手的得分。本系統(tǒng)可以實現(xiàn)如下功能:按評委給分順序顯示某個參賽歌手的得分;顯示某個參賽歌手所得的最高分和最低分;求出每個參賽歌手的得分;按參賽歌手的得分從高到低排序并顯示排序結(jié)果;顯示某個評委打出的M個分?jǐn)?shù);計算某個評委打分的平均值;查找滿足給定得分范圍的歌手。

      十、工資管理系統(tǒng)

      某單位有N個,職工工資信息包括基本工資、崗位津貼、地方津貼、獎金、扣公積金、扣稅、實發(fā)工資等項內(nèi)容,將N個職工的這些內(nèi)容存入本系統(tǒng)??梢岳帽鞠到y(tǒng)實現(xiàn)如下功能:往系統(tǒng)里添加新的職工工資信息內(nèi)容;根據(jù)給定的條件修改現(xiàn)有的職工工資內(nèi)容;刪除某個職工工資內(nèi)容;根據(jù)給定的條件查找并顯示某個職工工資內(nèi)容;顯示符合某個條件的所有職工工資內(nèi)容;統(tǒng)計某項工資內(nèi)容的總和;計算某個職工的實發(fā)工資(基本工資+崗位津貼+地方津貼+獎金-扣公積金-扣稅);計算符合某個條件的所有職工的實發(fā)工資總和。

      十一、學(xué)生成績管理系統(tǒng)

      該班共有N個學(xué)生,共開M門課,將已經(jīng)結(jié)束的每門課的成績存入本系統(tǒng),將學(xué)生的學(xué)號和姓名存入本系統(tǒng)。可以利用本系統(tǒng)實現(xiàn)如下功能:往系統(tǒng)里添加新的課程成績;根據(jù)給定的條件修改現(xiàn)有的課程成績;刪除某個學(xué)生的學(xué)號、姓名和各門課的成績;根據(jù)給定的學(xué)生的學(xué)號和姓名,查找并顯示該學(xué)生各門課的成績;計算所有學(xué)生某門課的平均分;計算某個學(xué)生各門課的平均分;按每個學(xué)生得總分從高到低排序并顯示排序結(jié)果。

      十二、職工檔案管理系統(tǒng)

      某單位有N個職工,每個職工有編號、姓名、性別、出生日期、畢業(yè)學(xué)校、電話號碼、職務(wù)等項內(nèi)容,將N個職工的這些內(nèi)容存入本系統(tǒng)??梢岳帽鞠到y(tǒng)實現(xiàn)如下功能:往系統(tǒng)里添加新的職工檔案內(nèi)容;根據(jù)給定的條件修改現(xiàn)有的職工檔案內(nèi)容;刪除某個職工檔案內(nèi)容;根據(jù)給定的條件查找并顯示某個職工檔案內(nèi)容;顯示符合某個條件的所有職工檔案內(nèi)容;統(tǒng)計滿足某個條件的職工人數(shù);按某個給定的條件將職工排序并顯示排序結(jié)果。

      十三、圖書信息管理系統(tǒng)

      每本圖書信息包括編號、書名、作者、出版社、出版日期、單價、冊數(shù)等項內(nèi)容,本系統(tǒng)可以實現(xiàn)如下功能:往系統(tǒng)里添加新圖書的各項信息;修改現(xiàn)有圖書的各項信息;查找并顯示滿足某條件的圖書的信息;按某個給定的條件將圖書排序;統(tǒng)計滿足某條件的圖書的冊數(shù);計算某種圖書的總價值(單價乘冊數(shù)),以及某幾種圖書的總價值。

      十四、運動會分?jǐn)?shù)統(tǒng)計系統(tǒng)

      共有M個運動代表隊,每個代表隊參加N項比賽。每項比賽的第1名得10分、第2名得8分、第3名得5分,其它名次不得分。輸入每項比賽的代表隊排名。本系統(tǒng)可以實現(xiàn)如下功能:統(tǒng)計各代表隊所得的總分;將各代表隊按總分值從高到低排序,然后顯示輸出;查找某個代表隊參加某項比賽的成績并顯示;查找某個代表隊的總分和各項比賽的得分并顯示;查找某項比賽取得某個名次得代表隊名稱。

      下載C++語言課程設(shè)計題目word格式文檔
      下載C++語言課程設(shè)計題目.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        2018c語言課程設(shè)計題目

        C語言課程設(shè)計題目 一、實訓(xùn)要求 1)C語言課程設(shè)計要求 1. 可自己選定一題目,限1人選的題目只能由1人單獨完成,如限3人選的題目可由1-3人完成。 2. 模塊化程序設(shè)計 3. 鋸齒型書......

        c++課程設(shè)計總結(jié)

        課程設(shè)計總結(jié) 經(jīng)過一個學(xué)期對《C++程序設(shè)計》的學(xué)習(xí),我學(xué)習(xí)到了基本的理論知識,了解到了C++語言程序設(shè)計的思想,這些知識都為我的課程實踐和進(jìn)一步的學(xué)習(xí)打下了堅實的基礎(chǔ)。 在......

        C++課程設(shè)計實驗報告(范文)

        C++課程設(shè)計報告 設(shè)計題目:學(xué)院: 專業(yè)班級: 學(xué)生姓名: 學(xué)生學(xué)號: 指導(dǎo)教師: 計算機(jī)技術(shù)與科學(xué) 3班 樊冠男 40912140 馬軍亮 提交時間: 2011/1/12 成績: 目錄 C++課程設(shè)計報告 第一......

        c++課程設(shè)計心得體會

        課程設(shè)計心得體會 學(xué)生成績管理是高等學(xué)校教務(wù)管理的重要組成部分,其內(nèi)容較多,要完成能夠?qū)崿F(xiàn)人員的信息錄入、查詢、修改、刪除、統(tǒng)計、保存、顯示等操作。系統(tǒng)具體實現(xiàn)的功......

        C語言課程設(shè)計要求及參考題目

        《程序設(shè)計課程設(shè)計》要求及參考題目一、目的: 本次課程設(shè)計是《程序設(shè)計基礎(chǔ)》課程的綜合實驗,作為課堂教學(xué)和課內(nèi)正常上機(jī)實驗的補充。 通過對《程序設(shè)計基礎(chǔ)》課程的學(xué)習(xí),學(xué)......

        C語言課程設(shè)計題目及報告-2012

        《C程序設(shè)計》大作業(yè)及備選題目 1. 目的 本次大作業(yè)是《C程序設(shè)計》課程的綜合實驗,作為課堂教學(xué)和課內(nèi)正常上機(jī)實驗的補充。通過對《C程序設(shè)計》課程的學(xué)習(xí),學(xué)生已初步掌握C......

        Java語言課程設(shè)計題目(五篇模版)

        Java語言課程設(shè)計 設(shè)計目的: 1、復(fù)習(xí)、鞏固Java語言的基礎(chǔ)知識,進(jìn)一步加深對Java語言的理解和掌握; 2、課程設(shè)計為學(xué)生提供了一個既動手又動腦,獨立實踐的機(jī)會,將課本上的理論知......

        C++語言學(xué)習(xí)心得

        C++語言程序?qū)W習(xí)心得體會 通過一學(xué)期對C++語言的學(xué)習(xí),我感覺C++語言是有一定難度卻又是非常有趣的科目。也是很有幫助的,對我們未來工作學(xué)習(xí)而言。我們可以通過C++語言進(jìn)行更......