《《C程序設(shè)計》實驗教學(xué)大綱》由會員分享,可在線閱讀,更多相關(guān)《《C程序設(shè)計》實驗教學(xué)大綱(5頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、計算機科學(xué)與技術(shù)專業(yè)實驗教學(xué)大綱
面向?qū)ο蟪绦蛟O(shè)計實驗教學(xué)大綱
課程名稱:C++程序設(shè)計
課程編號:09233043
適應(yīng)專業(yè):計算機科學(xué)與技術(shù)
開課學(xué)期:3
實驗成績評定:根據(jù)實驗的出勤、態(tài)度、實驗報告等評定實驗成績。
實驗課時安排:36
實驗類別:專業(yè)
實驗要求: 面向?qū)ο蟪绦蛟O(shè)計C++是一種實用性和實踐性要求很強的程序設(shè)計語言,要求學(xué)生在較好的掌握理論知識的基礎(chǔ)上,多動腦,多實踐,自己動手編寫、調(diào)試程序。在不斷調(diào)試程序的過程中鞏固理論課所學(xué)的知識點,除此之外,為了提高實驗課的效率,要求學(xué)生在課前事先編寫好程序,以確保
2、有足夠的時間來調(diào)試程序。
一. 實驗教學(xué)目的
C++面向?qū)ο蟪绦蛟O(shè)計實驗是驗證、鞏固和補充課堂講授的理論知識的必要環(huán)節(jié),通過C++面向?qū)ο蟪绦蛟O(shè)計實驗,培養(yǎng)學(xué)生初步的分析問題和程序設(shè)計能力,運用所學(xué)的理論知識解決實際問題的能力,分析和總結(jié)面向?qū)ο蟪绦蛟O(shè)計經(jīng)驗的能力。
二. 實驗內(nèi)容及要求(含學(xué)時分配)
實驗一
1.實驗名稱: 熟悉Visual C++6.0編程環(huán)境
2.實驗要求:使用Visual C++6.0對一個C++程序進行編輯、編譯、連接和運行;在鍵盤上分別按要求的格式輸入兩組數(shù)據(jù)。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)
3、容:
(1)編輯、編譯、連接和運行一個程序輸出“Hello,C++!”
(2)編寫程序完成變量x和變量y值的交換,調(diào)試程序并觀察運行結(jié)果。
5.實驗重點:學(xué)會在Visual C++環(huán)境下編寫、調(diào)試簡單的程序
6.實驗課時:2課時
7. 實驗類型:設(shè)計性
實驗二
1.實驗名稱:簡單數(shù)據(jù)類型及運算
2.實驗要求:熟悉和理解C++語言中的類型簡單數(shù)據(jù)(整型、實型、字符型)、運算、表達(dá)式; 了解基本數(shù)據(jù)類型的字節(jié)寬度和范圍表示;能利用學(xué)習(xí)的數(shù)據(jù)類型,編制簡單的C++程序; 初步學(xué)習(xí)調(diào)試方法。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:
4、(1)編寫一個程序,輸出基本數(shù)據(jù)類型char, short, int, long, float, double的數(shù)據(jù)類型的長度。
(2)編程驗證課后習(xí)題答案
5.實驗重點:初步培養(yǎng)學(xué)生的編程思想,利用學(xué)習(xí)的數(shù)據(jù)類型,編制簡單的C++程序。
6.實驗課時:2課時
7.實驗類型:驗證性
實驗三
1.實驗名稱:順序控制結(jié)構(gòu)
2.實驗要求:理解并掌握程序的順序控制結(jié)構(gòu),編制簡單的C++程序; 進一步學(xué)習(xí)調(diào)試程序的方法。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:
(1)求三角形的面積
(2)編寫一個將華氏溫度轉(zhuǎn)換為攝氏溫度的程序,轉(zhuǎn)換公式
5、為C=(5/9)/(F-32),要求輸出華氏溫度和攝氏溫度的對應(yīng)值。
5.實驗重點:進一步培養(yǎng)學(xué)生的編程思想,利用順序控制結(jié)構(gòu)編制簡單的C++程序。
6.實驗課時:2課時
7.實驗類型:設(shè)計性
實驗四
1.實驗名稱:選擇控制結(jié)構(gòu)
2.實驗要求:理解并掌握程序的分支結(jié)構(gòu)(if語句、switch語句)程序設(shè)計。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:
(1) 有一個函數(shù)如下:
x (x<5)
y= x+6 (5<=x<15)
x-6 (x>=15)
輸入
6、x的值,計算出相應(yīng)的y值。
(2) 編程按分段統(tǒng)計學(xué)生成績,輸入為負(fù)數(shù)時結(jié)束。要求按90-100、80-89、70-79、60-69、60以下五檔分別統(tǒng)計各分?jǐn)?shù)段人數(shù)(用if語句和switch語句編寫程序)
5.實驗重點:學(xué)習(xí)過程化程序設(shè)計方法;進一步學(xué)習(xí)掌握查找與修改編譯錯誤的方法。
6.實驗課時:2課時
7. 實驗類型:驗證性
實驗五
1. 實驗名稱:循環(huán)控制結(jié)構(gòu)
2. 實驗要求: 理解并掌握程序的循環(huán)結(jié)構(gòu)(for語句、while語句、do-while語句)程序設(shè)計。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:
(1)輸出如右圖
7、形 *
*****
*********
*************
(2)輸入一行字符,分別統(tǒng)計其中的英文大寫字母,小寫字母、數(shù)字字符和其他字符。
5.實驗重點:結(jié)合上課內(nèi)容,寫出程序,并調(diào)試程序,要給出測試數(shù)據(jù)和實驗結(jié)果。
6.實驗課時:2課時
7. 實驗類型:設(shè)計性
實驗六
1.實驗名稱:數(shù)組的定義和使用
2.實驗要求:掌握一維數(shù)組、二維數(shù)組定義的規(guī)則;掌握一維數(shù)組、二維數(shù)組的初始化方法及數(shù)組元素的引用。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:
(1)編寫一個程序,將20以內(nèi)的偶數(shù)賦給數(shù)組a,然后輸
8、出此數(shù)組各元素。
(2)定義一個二維數(shù)組存儲五位學(xué)生五科考試的成績,編寫程序分別取出二維數(shù)組里的元素值,經(jīng)過累加之后列出總成績,計算并輸出每個同學(xué)的平均成績。
5.實驗重點:熟練掌握一維數(shù)組和二維數(shù)組的使用
6.實驗課時:4課時
7. 實驗類型:設(shè)計性
實驗七
1. 實驗名稱:函數(shù)與編譯處理
2.實驗要求:掌握函數(shù)聲明、定義和使用的方法;掌握形式參數(shù)與實在參數(shù)之間的對應(yīng)關(guān)系。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:
(1) 編寫一個函數(shù),用來計算從鍵盤上輸入的整數(shù)的階乘。
(2) 編寫函數(shù)判斷一個數(shù)是否是素數(shù),在主程序中
9、實現(xiàn)輸入、輸出。
(3) 編寫一個程序,設(shè)計一個函數(shù)可以計算并返回輸入的4個數(shù)的平均值。
5.實驗重點:掌握函數(shù)的定義和調(diào)用方法
6.實驗課時:4課時
7. 實驗類型:設(shè)計性
實驗八
1.實驗名稱:指針的運用
2.實驗要求:熟練掌握指針、地址、指針類型、void指針、空指針等概念;熟練掌握指針變量的定義和初始化、指針的間接訪問、指針的加減運算和指針表達(dá)式。
3.實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:
(1)用指針交換兩個整數(shù)的值
(2)用使用指針輸出數(shù)組元素的值
5. 實驗重點:學(xué)會正確的使用指針,體會指針的靈活性
6. 實
10、驗課時:4課時
7. 實驗類型:設(shè)計性
實驗九
1. 實驗名稱:結(jié)構(gòu)體
2. 實驗要求:掌握結(jié)構(gòu)的概念和結(jié)構(gòu)類型的定義
3. 實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4. 實驗內(nèi)容:有5個學(xué)生,每個學(xué)生的數(shù)據(jù)包括學(xué)號、姓名、三門課成績,從鍵盤輸入5個學(xué)生數(shù)據(jù),要求打印出三門課總平均成績,以及最高分和學(xué)生的數(shù)據(jù)(包括學(xué)號、姓名、三門課成績、平均分)。
5. 實驗重點:掌握結(jié)構(gòu)變量的定義和初始化
6. 實驗課時:2課時
7. 實驗類型:設(shè)計性
實驗九
1. 實驗名稱:類和對象
2. 實驗要求:掌握類的概念、類的定義格式、類與結(jié)構(gòu)的關(guān)系、類的成員屬性
11、和類的封裝性;掌握類對象的定義;理解類的成員的訪問控制的含義,公有、私有和保護成員的區(qū)別;掌握構(gòu)造函數(shù)和析構(gòu)函數(shù)的含義與作用、定義方式和實現(xiàn),能夠根據(jù)要求正確定義和重載構(gòu)造函數(shù)。能夠根據(jù)給定的要求定義類并實現(xiàn)類的成員函數(shù);掌握友元函數(shù)的含義,友元函數(shù)和成員函數(shù)的區(qū)別。
3. 實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4. 實驗內(nèi)容:
(1) 定義一個圓類,計算圓的面積和周長。(要求:分別用成員函數(shù)和友元函數(shù)來求圓的面積和周長)
(2)定義一個學(xué)生類,其中有3個數(shù)據(jù)成員有學(xué)號、姓名、年齡,以及若干成員函數(shù)。同時編寫主函數(shù)使用這個類,實現(xiàn)對學(xué)生數(shù)據(jù)的賦值和輸出。
12、要求:
A:使用成員函數(shù)實現(xiàn)對數(shù)據(jù)的輸入、輸出。
B:使用構(gòu)造函數(shù)和析構(gòu)函數(shù)實現(xiàn)對數(shù)據(jù)的輸入、輸出。
5. 實驗重點:靈活使用類來解決問題,體會類的封裝性的特性
6. 實驗課時:4課時
7. 實驗類型:設(shè)計性
實驗十
1. 實驗名稱:繼承與派生類
2. 實驗要求:理解繼承的含義,掌握派生類的定義方法和實現(xiàn)
3. 實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4. 實驗內(nèi)容:編寫一個學(xué)生和教師數(shù)據(jù)輸入和顯示程序,學(xué)生數(shù)據(jù)有編號、姓名、班級和成績,教師數(shù)據(jù)有編號、姓名、職稱和部門。要求將編號、姓名輸入和顯示設(shè)計成一個類person,并作為學(xué)生數(shù)據(jù)操作類stu
13、dent和教師類數(shù)據(jù)操作類teacher的基類。
5. 實驗重點: 理解公有繼承下基類成員對派生類成員和派生類對象的可見性,能正確地訪問繼承層次中的各種類成員。
6. 實驗課時:4課時
7. 實驗類型:設(shè)計性
實驗十一
1.實驗名稱:多態(tài)性
2.實驗要求:掌握用成員函數(shù)重載運算符的方法;掌握用友元函數(shù)重載運算符的方法。
3. 實驗儀器:每人一臺安裝有Visual C++ 的普通學(xué)生電腦
4.實驗內(nèi)容:定義一個復(fù)數(shù)類,通過重載運算符: *,/,直接實現(xiàn)二個復(fù)數(shù)之間的乘除運算。編寫一個完整的程序,測試重載運算符的正確性。要求乘法“*”用友元函數(shù)實現(xiàn)重載,除法“/”用成員函數(shù)實
14、現(xiàn)重載。
5.實驗重點:熟練使用成員函數(shù)和友員函數(shù)
6.實驗課時:4課時
7. 實驗類型:設(shè)計性
實驗十二
實驗名稱: C++語言綜合性實驗
1.實驗?zāi)康?
掌握文件流的打開、關(guān)閉及使用的使用方法; 了解文本文件流與二進制文件流在操作上的區(qū)別,使得學(xué)生運用前面所學(xué)的知識解決實際問題。
2.實驗內(nèi)容
設(shè)計一個管理圖書目的簡單程序,提供的基本功能包括:可連續(xù)將新書存入文件“book.dat”中,新書信息加入到文件的尾部;也可以根據(jù)輸入的書名進行查找;把文件“book.dat”中同書名的所有書顯示出來。為簡單起見,描述一本書的信息包括:書號,書名,出版社和作者。
要求
15、
(1)修改程序增加按出版社、作者。從文件中查找書名,輸出同一出版社出版的所有書名,按列表的格式輸出文件中的所有書名等。
(2)寫出實驗報告
三. 教材及參考書
[1] 譚浩強.C++程序設(shè)計. 北京:清華大學(xué)出版社, 2000年.
[2] 譚浩強.C++程序設(shè)計題解與上機指導(dǎo).北京:清華大學(xué)出版社, 2000年.
四. 必要的說明
C++程序設(shè)計是一門實踐性非常強的學(xué)科,要求學(xué)生一定要動手編寫、調(diào)試程序。教師自身也要重視實驗課,培養(yǎng)學(xué)生動手能力和自學(xué)能力,引領(lǐng)學(xué)生上好每一堂實驗課。
制定人:馮雪華 2006年8月26日
審核人:乎西旦 2006 年 9月20日
209