
實驗二選擇結構程序設計
一、實驗目的
1.掌握關系表達式和邏輯表達式的使用。
2.熟悉選擇結構程序設計。
3.熟練使用if語句進行程序設計。
4.使用switch語句實現多分支選擇結構。
二、實驗內容
(1計算a+|b|2判斷一個整數是否可以被3和5整除)
1.[目的]掌握判斷一個字符型數據是否數字字符的方法,以及數字字符轉換為
相應整數的方法。
[題目內容]從鍵盤輸入一個字符型數據,若輸入一個數字字符('0'-'9'),則將其
轉換成相應的整數顯示出來;若輸入其它字符,則顯示出錯信息。
[輸入]一個字符型數據
[輸出]整數或出錯信息
[提示]根據字符型數據的ASCII碼值是否在‘0’字符與‘9’字符之間進行判
斷。使用if…el…語句和復合語句。
2.[目的]掌握條件表達式的使用
[題目內容]編寫一個程序,其功能為:從鍵盤輸入三個數x、y、z,判斷x+y=z
是否成立,若成立輸出?x+y=z?的信息,否則輸出?x+y!=z?的信息。
[輸入]三個數x、y、z
[輸出]?x+y=z?或?x+y!=z?
[提示]條件判斷表達式x+y==z
3.[目的]掌握求最大值最小值的方法。
[題目內容]編寫一個程序,其功能為:輸入三個整數,輸出最大數和最小數。
[輸入]三個整數
[輸出]最大值和最小值
[提示]設置最大值變量max和最小值變量min;首先比較a,b的大小,并把大數
存入max,小數存入min;然后最大值變量max和最小值變量min再與c比較,
若c大于max,則max取值c,否則保持不變;如果c小于min,則min取值c,
否則保持不變。最后輸出max和min的值。使用if…el…語句、if語句以及
復合語句。
4.[目的]運用已學知識解決實際問題。
[題目內容]如下兩個線性方程組的兩個未知數為x1和x2:
ax
1
+bx
2
=m
cx
1
+dx
2
=n
該方程的唯一解為(ad-cb不等于零時):
cbad
bnmd
x
?
?
?
1bcad
mcna
x
?
?
?
2
請編寫一個程序,讀取a、b、c、d的值,計算x1和x2的值。如果ad-cd等于
零,應給出適當的提示信息。
[輸入]方程的系數a、b、c、d的值
[輸出]當ad-cb不等于零時,輸出方程的解x1、x2的值;當ad-cb等于零時,
輸出提示信息。
[提示]用if…el…語句和復合語句實現。
三、課后作業(寫在實驗報告中)
1.[目的]運用已學知識解決實際問題。
[題目內容]某產品生產成本c=c1+mc2,其中c1為固定成本,c2為單位產品可變
成本。當生產數量m<10000時,c1=20000元,c2=10元;當生產數量m≥10000
時,c1=40000元,c2=5元;編寫一個程序,其功能為:分別計算出生產數量為
6000以及25000時,總生產成本及單位生產成本。
[輸入]生產數量
[輸出]生產數量、總生產成本、單位可變成本
2.[目的]掌握分段函數的計算。
[題目內容]編寫一個程序,計算下列函數:
y=
xx<1
2x-11≤x<10
3x-11X≥10
[輸入]x值
[輸出]y值
[提示]根據輸入的x值的取值,計算y的值并輸出。使用if…elif語句以及復
合語句。
3.[目的]掌握字符型變量的定義與使用,掌握大小寫字母轉換的算法。
[題目內容]編寫一個程序,其功能為:從鍵盤輸入一個字符,判別該字符的類
別,并輸出向相應信息。
[輸入]一個字符
[輸出]顯示?控制字符?、?數字字符?、?大寫字母?、?小寫字母?、?其它字符?
信息。
[提示]根據輸入字符的ASCII碼來判別類型。由ASCII碼表可知ASCII值小于
32的為控制字符。在'0'和'9'之間的為數字,在'A'和'Z'之間為大寫字母,在'a'和
'z'之間為小寫字母,其余則為其它字符。使用if…elif…語句。
4.[目的]掌握標準數學函數使用。
[題目內容]編寫一個程序,其功能為:從鍵盤輸入一元二次方程ax2+bx+c=0的各
項系數a、b、c的值,判斷方程實數解的不同情況,分別求解方程,并輸出(結
果保留兩位小數,如無實根給出相應的信息)。
應用如下規則:
(1)若a、b的值為零,則沒有解;
(2)若a為零,只有一個實數解;
(3)若b2-4ac為負數,則沒有實數解;若b2-4ac為正數,有兩個實數解;若
b2-4ac為零,有兩個相等的實數解。
[輸入]一元二次方程ax2+bx+c=0的各項系數a、b、c
[輸出]方程的實數解情況
[提示]包含標準數學函數頭文件,使用標準數學函數sqrt(x)實現開平方計算,判
別式b2-4ac,如果小于0,則輸出?方程無實數根?,等于0,輸出一個實根,
結果使用雙精度浮點數表示,%lf格式,大于0,輸出兩個不同的實數根,結果
使用雙精度浮點數表示,%lf格式。
5.[目的]運用已學知識解決實際問題。
[題目內容]編寫程序,輸入三角形三邊a、b、c,判斷a、b、c能否構成三角形,
若不能則輸出相應的信息,若能則判斷組成的是等腰、等邊、直角還是一般三角
形。
[輸入]三角形三邊a、b、c
[輸出]不能構成三角形或能構成等腰、等邊、直角、一般三角形的信息。
[提示]利用三角形兩邊之和大于第三邊判斷是否能夠構成三角形,能夠成三角形
時再以等腰、等邊、直角三角形的條件進行判斷。
6.[目的]運用已學知識解決實際問題。
[題目內容]某個電力公司對其用戶的收費規定如下:
用電數量收費標準
0~200x*0.5元
201~400100+(x-200)*0.65元
401~600230+(x-400)*0.8元
601以上390+(x-600)*1.0元
編寫程序,對于一個輸入的用電數量,計算用戶的繳費額。
[輸入]用電數量
[輸出]繳費額
[提示]用if…elif語句實現。注意輸入負數時的處理。
7.[目的]運用已學知識解決實際問題。
[題目內容]某個服裝展示廳對所賣商品打折規定如下:
------------------------------------------------------------
購買總額折扣
-------------------------------------------
機加工產品手工產品
0~100-5%
101~2005%7.5%
201~3007.5%10.0%
大于30010.0%15.0%
--------------------------------------------------------------
編寫程序輸入購買總額,計算并輸顧客實際應付的貨款。
[輸入]顧客的購買總額
[輸出]顧客實際應付的貨款
[提示]機加工產品與手工產品可以使用類別變量表示,例如,設計類別變量為lb,
假設lb=0表示機加工產品,lb=1表示手工產品。
8.[目的]switch語句的練習
[題目內容]編程在屏幕上顯示一張如下所示的時間表:
*******Time*******
1morning
2afternoon
3night
Pleaenteryourchoice:
根據用戶輸入的時間序號顯示相應的問候信息,選擇1時顯示?Goodmorning?,
選擇2時顯示?Goodafternoon?,選擇3時顯示?Goodnight?,對于其他選
擇顯示?Selectionerror!?。
[輸入]序號
[輸出]問候語或其他信息
[提示]用switch語句實現
9.[目的]運用已學知識解決實際問題。
[題目內容]編程設計一個簡單的計算器程序,要求根據用戶從鍵盤輸入的表達
式:
操作數1運算符op操作數2
計算表達式的值,指定的運算符為加(+)、減(-)、乘(*)、除(/)
[輸入]
Pleaentertheexpression:22.12+12.10
[輸出]
22.12+12.10=34.22
[提示]分別用if或switch語句實現
10.輸入某學生的成績,經處理后給出學生的等級,等級分類如下:
90分以上(包括90):A
80至90分(包括80):B
70至80分(包括70):C
60至70分(包括60):D
60分以下:E
方法一:(用if語句的嵌套)
方法二:用switch語句
屏幕提示
鍵盤輸入
程序輸出
本文發布于:2023-03-07 07:25:51,感謝您對本站的認可!
本文鏈接:http://m.newhan.cn/zhishi/a/1678145152128687.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:編程設計.doc
本文 PDF 下載地址:編程設計.pdf
| 留言與評論(共有 0 條評論) |