c 實驗3控制結構

2021-08-13 19:31:51 字數 2539 閱讀 3825

南昌大學實驗報告

學生姓名學號專業班級

實驗型別:□ 驗證綜合 □ 設計 □ 創新實驗日期實驗成績

實驗3 控制語句

二.實驗目的

1.熟練掌握if 、if…else、if…elseif語句和switch語句格式及使用方法,掌握if語句中的巢狀關係和匹配原則,利用if語句和switch語句實現分支選擇結構。

2.熟練掌握while語句、do ...while語句和for語句格式及使用方法,掌握三種迴圈控制語句的迴圈過程以及迴圈結構的巢狀,利用迴圈語句實現迴圈結構。

3.掌握簡單、常用的演算法,並在程式設計過程中體驗各種演算法的程式設計技巧。進一步學習除錯程式,掌握語法錯誤和邏輯錯誤的檢查方法。

三.實驗內容

1. 選擇結構程式設計;

2. if語句的使用;

3. 使用switch語句實現多分支選擇結構;

4. 三種迴圈語句的應用;

5. 迴圈結構的巢狀;

6. break和continue語句的使用。

三.實驗環境

pc微機

dos作業系統或 windows 作業系統

visual c++程式整合環境

四.實驗內容和步驟

本實驗要求事先編好解決下面問題的程式,然後上機輸入程式並除錯執行程式。學會單步除錯和斷點除錯程式及變數跟蹤方法。

1.通過鍵盤輸入乙個字元,判斷該字元是數字字元、大寫字母、小寫字母、空格還是其他字元。

2.程式設計實現:輸入乙個整數,判斷該數的正負性和奇偶性之後,將其數值按照①小於10,②10~99,③100~999,④1000以上四個類別分類並顯示。

要求:(1)將變數定義為整型。

(2)輸入整數前,利用cout給出提示資訊。

(3)輸出結果時要有必要的說明,例如:輸入358時,顯示358 is 100 to 999。

(4)該程式利用if語句實現。

執行程式,分別輸入9,21,321,4321資料檢查輸出資訊的正確性。

3.從鍵盤輸入學生的考試成績,利用計算機將學生的成績劃分等級並輸出。學生的成績可分成5個等級,90-100分為a級,80-89分為b級,70-79分為c級,60-69分為d級,0-59分為e級。要求在輸入負數時,給出錯誤提示。

① 事先編好程式,要求分別用if語句和switch語句實現。執行程式,並檢查結果是否正確。

② 再執行一次程式,輸入分數為負值(如-70),這顯然是輸入時出錯,不應給出等級。修改程式,使之能正確處理任何資料。當輸入資料大於100或小於0時,通知使用者「輸入資料錯」,程式結束

4.某航空公司規定:在旅遊旺季7~9月份,如果訂票20張及其以上,優惠票價的10%,20張以下,優惠5%;在旅遊淡季1~6月份,10~12月份,訂票20張及其以上,優惠票價的20%,20張以下,優惠10%。編寫乙個c程式,根據月份和旅客訂票張數決定優惠率。

已知機票單價,請算出旅客的總付款。請使用不同的測試資料進行測試。

5.編寫程式:根據公式 ,輸出 π的值。

要求:(1)變數π為單精度型別,n為整型;

(2)計算當n的取值分別為20,50 ,100,200時的π值,說明什麼問題?

(3)修改程式,不給出n值,而改為求π值,直到最後一項的數值小於10-4 為止。

(4)對修改後的程式,輸出π值以及總的項數n。輸出格式為:π=值;n=值。

6.從鍵盤輸入乙個0~1000之間的任意整數,輸出該整數的所有因子(例如:輸入12,其因子為1,2,3,4,6,12)。

要求:(1)採用while迴圈語句實現。

(2)輸出格式為:input:12

output:1,2,3,4,6,12

7.計算並輸出n以內最大的10個素數以及它們的和,n為使用者任意輸入的正整數(如:1000)。

要求:(1)在程式內部加必要的注釋。

(2)由於偶數不是素數,可以不考慮對偶數的處理。

(3)需要考慮n以內的素數個數沒有超過10個的情況處理。

(4) 輸出形式為:素數1+素數2+素數+…+素數10=總和值。

五.實驗資料及處理結果

/*寫出實驗內容的演算法(用流程圖表示)、完整的程式、結果並能對結果的正確性及上機時產生的問題進行分析, */

/*每一道題目請按照以下格式完成*/

格式:[習題1] /*即:題目內容*/

[問題分析] /*用自然語言描述設計思路*/

[資料需求] /*寫出程式中需要使用的輸入資料和輸出資料及相關公式*/

[演算法設計] /*可以選用偽語言、傳統流程圖、n-s圖表示*/

[程式實現] /*此部分寫出源程式,應有適當的注釋*/

[程式測試] /*選取一些樣例資料驗證程式的正確性,給出結果並用截圖說明*/

[錯誤資訊解釋或原因分析] /*程式若始終得不到正確結果,請給出錯誤原因分析,否則此部略去*/ 紅色文字供提示用,閱讀完請在正式撰寫實驗報告時刪去!!!

/六.簡答題及挑戰題

1.對於多分支選擇結構何時使用if語句的巢狀,何時使用switch語句?

2.小結三種形式的迴圈使用的區別。

3.(選做)給定乙個整數,並由鍵盤輸入若干個數,找出與預先給定的數最近的數,並指出它是由鍵盤輸入的第幾個數。

七.實驗總結

實驗二控制結構

程式一 include void main else cout 不能構成三角形 程式二 include void main 程式三 include void main cout sum 程式五 include include void main 程式六 include include include...

C語言 資料結構 實驗

實驗四 佇列子系統 1 實驗目的 1 掌握佇列的特點及其描述方法。2 用鏈式結構實現乙個佇列。3 掌握佇列的各種基本操作。4 掌握佇列的簡單應用程式。2 實驗內容 1 設計乙個字元型的鏈佇列 2 編寫佇列的進隊 出隊 讀隊頭元素 顯示佇列中全部元素程式 3 設計乙個輸入限制性的雙佇列,要求 輸入只能...

實驗3迴圈結構程式設計

一 實驗目的 1 通過本實驗,加深對迴圈控制結構有關概念的理解。2 熟練掌握while do while和for三種迴圈控制語句的特點,掌握迴圈結構程式設計和除錯方法。3 掌握二重迴圈結構程式的設計方法。二 預習內容 1 if語句和goto語句組合實現迴圈的方法。理解迴圈的條件設定,迴圈的次數,迴圈...