版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第四章選擇結(jié)構(gòu)的語句及流程控制關(guān)系運算符和關(guān)系表達式邏輯運算符和邏輯表達式條件運算符
if~else語句及三種形式
switch多分支語句
關(guān)系運算符主要用于兩個量大小的比較。關(guān)系運算符列表如下:
運算符名稱關(guān)系表達式例關(guān)系
>大于
a>b
a大于b
<小于q<j
q小于j==等于m1==m2
m1等于m2>=大于等于sum>=m1sum大于等于m1<=小于等于m1<=qm1小于等于q!=不等于c1!=c2
c1不等于c2在關(guān)系表達式中,若關(guān)系成立,則表達式的值為1,否則為0。(例子c501.c)
關(guān)系運算符及關(guān)系表達式邏輯運算符列表如下:
運算符名稱邏輯表達式例說明
!邏輯非
!a單目運算:非a
&&邏輯與a&&b
a與b||邏輯或a||b
a或b邏輯表達式的結(jié)果為真(1)或假(0)值。若:a=b=6;c=8;則:
(a>b)&&(c>a)其值為假(0)(a>b)||(c>a)其值為真(1)!(a==b)&&(c>a)其值為假(0)!4||9其值為真(1)邏輯運算符及邏輯表達式
ab!a!ba&&ba||b
11
0
0
1
1
10
0
1
0
1
01
1
0
0
1
00
1
1
0
0注意:
從上表可以看出對:
A&&b
的計值,若a的值為假則該式的值為假,因此不需要再計b值.
a||b
的計值,若a的值為真則該式的值為真,因此不需要再計b值.(例子c502.c)
也稱這樣的表達式為短路表達式。邏輯運算的真值表:選擇結(jié)構(gòu)
if(條件分支)語句的三種格式:形式1:if(表達式)語句1else語句2
功能:根據(jù)表達式的計值,決定其后要執(zhí)行的操作。若表達式的值非0,則執(zhí)行語句1,否則執(zhí)行語句2。例:前邊計算三角形面積的程序,不是任意三條邊都可組成一個三角形。三角形邊的關(guān)系:兩邊之和大于第三邊;兩邊之差小于第三邊。完善程序
#include<math.h>main(){floata,b,c,s,area;
printf("inputa,b,c:");
scanf("%f,%f,%f",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a&&fabs(a-b)<c&&fabs(a-c)<b){s=(a+b+c)/2.;area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("\narea=%-f",area);}
else
printf("dataerror!!!");}程序c503:表達式語句1語句2選擇結(jié)構(gòu)形式2:if(表達式)語句功能:根據(jù)表達式的計值,決定其后要執(zhí)行的操作。若表達式的值非0,則執(zhí)行語句,否則執(zhí)行下一個語句。例:求三個數(shù)中最大者(c504,c505):main(){inta,b,c,max;
printf("inputa,b,c:");
scanf("%d,%d,%d",&a,&b,&c);
if(a<b)max=b;elsemax=a;if(c>max)max=c;
printf("\nmax=%-d",max);}main(){inta,b,c,max;
printf("inputa,b,c:");
scanf("%d,%d,%d",&a,&b,&c);max=a;if(a<b)max=b;
if(c>max)max=c;
printf("\nmax=%-d",max);}選擇結(jié)構(gòu)if(表達式1)語句1elseif(表達式2)語句2elseif(表達式3)語句3…。。。。
if(表達式n)語句nelse語句n+1形式3:這種格式也稱之為嵌套的if~else~語句,其執(zhí)行流程如下:完善一元二次方程的求根程序,考慮系數(shù)a=0;等根和復(fù)數(shù)根情況。先看一下流程圖:例:程序c506:#include<math.h>main(){floata,b,c,p,q,t,x1,x2;
printf("inputa,b,c:");scanf("%f,%f,%f",&a,&b,&c);if(a==0.)printf("a==0!!!return.");else{p=-b/(2.*a);t=b*b-4*a*c;q=sqrt(fabs(t))/(2.*a);if(t==0.)printf("\nx1=x2=%-f",p);
elseif(t>0.)printf("\nx1=%-f,x2=%-f",p+q,p-q);elseprintf("\nx1=%-f+%fi,x2=%-f-%fi",p,q,p,q);}}例計算運費問題:
路程(s)越遠(yuǎn),運費越低,標(biāo)準(zhǔn)如下:路程s(km)折扣(%)s<2500250<=s<5002500<=s<100051000<=s<200082000<=s<300010s>=300015
計算運費公式:總運費(f)=基本費(p)*貨物重量(w)*路程(s)*(1-折扣(d))流程圖程序如下:
(c507)main(){floatf,p,w,s,d;
printf("inputp,w,s:");scanf("%f,%f,%f",&p,&w,&s);if(s<250.)d=0.;elseif(s<500.)d=.02;elseif(s<1000.)d=.05; elseif(s<2000)d=.08; elseif(s<3000)d=.1; elsed=.15;f=p*w*s*(1-d);printf("\nw=%-fs=%-ff=%-f",w,s,f);}條件運算符及條件表達式條件運算符要求有三個運算量,這是一個三目運算符,其表達式的一般格式:表達式1
?表達式2
:表達式3
若表達式1計值非0,則取表達式2的值,否則取表達式3的值。例:求三個數(shù)a,b,c中的大者。(例子c508)
main(){inta=-21,b=32,c=122,max;max=a>b?a:b;max=max>c?max:c;/*max=a>b?(a>c?a:c):(b>c?b:c);*/
printf(“max=%d”,max);}開關(guān)分支(switch)語句功能:根據(jù)switch表達式的值,找出與之匹配的case常量表達式i的值,然后執(zhí)行語句組i,若沒有與之匹配的值,則執(zhí)行語句組n+1。switch(表達式){case常量表達式1:語句組1case常量表達式2:語句組2……case常量表達式n:語句組ndefault:語句組n+1}格式:
例:將上例以Switch語句實現(xiàn)main(){floatf,p,w,s,d;
intk;
printf("inputp,w,s:");
scanf("%f,%f,%f",&p,&w,&s);
k=s/250;switch(k){case0:d=0.;break;case1:d=.02;break;case2:case3:d=.05;break;case4:
case5:case6:case7:d=.08;break;case8:case9:case10:case11:d=.1;break;default:d=.15;}f=p*w*s*(1-d);
printf("\nw=%-fs=%-ff=%-f",w,s,f);}程序如下(c509):程序續(xù)注意:1)常量表達式的值必須各不相同;2)case出現(xiàn)的次序無關(guān);3)break語句的作用;4)多個case共用一組執(zhí)行語句;5)case語句的嵌套。
intx=1,y=0;switch(x){case1:switch(y){case0:printf(“**1**\n”);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)絡(luò)運營主管的職責(zé)與常見問題解答
- 物料管理員問題解決技巧含答案
- 玫瑰痤丘疹的激光治療個體化方案制定
- 測試工程師的日常工作流程
- 年產(chǎn)xxx墻壁開關(guān)電磁開關(guān)項目可行性分析報告
- 沈陽開放大學(xué)2025年秋學(xué)期《漢語基礎(chǔ)》期末大作業(yè)
- 深度解析(2026)《GBT 19074-2003工業(yè)通風(fēng)機 通風(fēng)機的機械安全裝置 護罩》(2026年)深度解析
- 光波浴房建設(shè)項目可行性分析報告(總投資14000萬元)
- 書寫橫畫課件
- 網(wǎng)絡(luò)直播平臺運營督導(dǎo)員面試題集
- 隔油池清洗合同范本
- 2025年河北承德市啟明學(xué)校公開招聘教師15名(公共基礎(chǔ)知識)測試題附答案解析
- 2025年福建省公安特警招聘52人備考?xì)v年題庫附答案解析(奪冠)
- 產(chǎn)后康復(fù)中心合作協(xié)議(醫(yī)療版)
- 頸內(nèi)動脈瘤臨床診治指南
- 基建工程索賠管理人員索賠證據(jù)收集與審核指南
- AI智能生產(chǎn)平臺-AI+質(zhì)量管理
- 農(nóng)村山塘維修合同
- 量子點材料的發(fā)光性能研究與應(yīng)用
- 2025廣東廣州市衛(wèi)生健康委員會直屬事業(yè)單位廣州市紅十字會醫(yī)院招聘47人(第一次)筆試考試參考題庫及答案解析
- 中國外運招聘筆試題庫2025
評論
0/150
提交評論