版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第三講C程序流程設(shè)計(jì)
3.'語(yǔ)句概述
3.2程序的二種基術(shù)結(jié)構(gòu)
3.3詵擇型程序設(shè)計(jì)
3.4循環(huán)型程序設(shè)計(jì)
3.5輔助棒制語(yǔ)句
1
3.1C語(yǔ)句概述
?C語(yǔ)句:以“;”作分隔符,編譯后產(chǎn)生機(jī)器指令.
?C語(yǔ)句分類(lèi)\\/
?表達(dá)式語(yǔ)句:表達(dá)式加分號(hào)構(gòu)成。
如total=total+limit;分支
a=3;
func();if()?else?
printf(uHello,world!\nv);switch
循環(huán)for()~
while(
ido~while()
continue
break
goto
輔助控制return
2
3.2程序的三種基本結(jié)構(gòu)
?結(jié)構(gòu)化程序設(shè)計(jì)
?基本思想:任何程序都可以用三種基本結(jié)構(gòu)表示,限制使用無(wú)條件轉(zhuǎn)移語(yǔ)
句(goto)
?結(jié)構(gòu)化程序:由三種基本結(jié)構(gòu)反復(fù)嵌套構(gòu)成的程序叫?
?優(yōu)點(diǎn):結(jié)構(gòu)清晰,易讀,提高程序設(shè)計(jì)質(zhì)量和效率
?卻基本結(jié)構(gòu)\/\/
?順序結(jié)構(gòu)
5
3.3選擇型程序設(shè)計(jì)
?if語(yǔ)句(條件選擇語(yǔ)句)
?if語(yǔ)句的三種形式expr
_:\
“非。
?格式:if(expression)
\sta
enstatement
執(zhí)行過(guò)程:
Jk例:if(x>y)
printf("%d”,x);=0
expr
statement1;?*
elsestatementlstatement2
statement2;
?執(zhí)行過(guò)程:
例:if(x>y)max=x;
elsemax=y;
7
選擇型程序設(shè)計(jì)形式?形式三:if(exprl)statement1;
elseif(expr2)statement2;
elseif(expr3)statements;
?執(zhí)行過(guò)程
statementn_
例:if(salary>1000)index二金領(lǐng);
elseif(salary>800)index二白領(lǐng);
elseif(salary>600)index二粉領(lǐng);
elseif(salary>400)index二灰領(lǐng);
elseindex二藍(lán)領(lǐng);
■
statemnt1statemnt2statemnt3statemntn
?
8
?語(yǔ)句可以是復(fù)合語(yǔ)句
乂□:if(a二二Lx3八二二v)printf("a二b,x=y");
if⑶printf("OK");
iff)nrintff'a');
例考慮下面程序的輸出結(jié)果:
^include<stdio.h>
voidmain()
{intx,y;
scanf(“%d,%d“,&x,&y);
if(x>y)
x=y;y=x;
else
x++;y++;
printf(“%d,%d}n”,x,y)
9
s
t
^
z-
^
-F
-1E①g①
2sQIU
u①U①
①①心
Q戶(hù)
UuIP
①i①。nQ
(S
zI4cQd戶(hù)
』I①PSP
d2-*Q
xSS
。BCqQ
)u-
-t-s>①
Js(
I①z(
(Qj
z)dda
戶(hù)x
ds①x
x)①。①
。S)S
①(』fjI
sz①i。
R1d??I-
I8x
。
)①
S
JI
I①
JJ
IJ
脛
脛
留K
-、<0
-U(
Q(寸
戶(hù)
一UzO
^B2u
UuS①
le①s
ses-Q
(o①
pI
Zq(q
aA
1J.mcAdp
sUq
dpB』Ss
xAsd
。SOx
?①Q(mào)o①
譚)
JS
冬jI
i(cdI。
E.q
一Ds
X一X
。。
))①
s
JJ
IIo
例輸入兩數(shù)并判斷其大小關(guān)系
#include<stdio.h>
voidmain()
{intx,y;
printf(''Enterintegerx,y:〃);
scanf(〃%d,%d",&x,&y);
if(x!=y)運(yùn)行:Enterintegerx,y:12,23^H
if(x>y)printf(,,X>Y\n,z);X<Y
elseprintf(,,X<Y\n,/);Enterintegerx,y:12,6|
elseX>Y
printf(〃X二二Y\n");Enterintegerx,y:12,12
X二二Y
11
ifelse配對(duì)原則:
①?gòu)淖顑?nèi)層開(kāi)始,else總是與它上面最接近的(未曾配對(duì)的)if配對(duì)。/
②避免if與else配對(duì)錯(cuò)位的最佳辦法是加大括號(hào),同時(shí),為了便于閱讀,使用適當(dāng)?shù)目s進(jìn)。
(只有大括號(hào)能保證if和else不錯(cuò)位配對(duì),縮進(jìn)僅便于閱讀)。
(if(……)
rif(……)
Cif(……)
“l(fā)se….
blse……
else***...
12
實(shí)現(xiàn)if~else正確配對(duì)方法:加]{}
switch語(yǔ)句(開(kāi)關(guān)分支語(yǔ)句)
?:?一般形式:
達(dá)式)
switcheEf:
語(yǔ)句組1;
break;
表達(dá)式IseE2:
2;
case語(yǔ)句組
1,break;
E1E2Endefault
iseEn:
語(yǔ)句組2n
語(yǔ)句組1語(yǔ)句組語(yǔ)句組語(yǔ)句組n;
break;
■■
lefault:
語(yǔ)句組;
break;]
?:?執(zhí)行過(guò)程:14
說(shuō)明:
?El,E2,…En是常量表達(dá)式,且值必須互不相同
?語(yǔ)句標(biāo)號(hào)作用,必須用break跳出
?case后可包含多個(gè)可執(zhí)行語(yǔ)句,且不必加{}
?switch可嵌套
?多個(gè)case可共用一組執(zhí)行語(yǔ)句
如:……
case'A':
case'B':
case'C':
printf(uscore>60\n,>);
break;
例子(1)
例#include<stdio.h>
voidmain()
{intscore=5;
switch(score)
{case5:printf("Verygood!”);
case4printf(“Good!");
case3printf(“Pass!”);
case2printf(“Fail!”);
defaultprintf("dataerror!”);
運(yùn)行結(jié)果:score為5時(shí),輸出:
Verygood!Good!Pass!Fail!dataerror!
16
例子(2)根據(jù)輸入字母輸出字符串
/*ch4_5.c*/
#include<stdio.h>
voidmain()
{intc;
printf(''Entermornorhorother:");
c=getchar();
switch(c)
{case'm':printf(〃\nGoodmorning!\n,");break;
case'n':printf(〃\nGoodnight!\n〃);break;
case'h':printf(〃\nHello!\n〃);break;
default:printf(,,\n????????\n,/);break;
}
3.4循環(huán)型程序設(shè)計(jì)
?概述
C語(yǔ)言可實(shí)現(xiàn)循環(huán)的語(yǔ)句:
①用goto和if構(gòu)成循環(huán)
②while語(yǔ)句
③dowhile語(yǔ)句
④for語(yǔ)句
?goto語(yǔ)句及用goto構(gòu)成循環(huán)
?goto語(yǔ)句一般格式:
goto語(yǔ)句標(biāo)號(hào);
??????
標(biāo)號(hào):語(yǔ)句;
18
循環(huán)型程序設(shè)計(jì)(1)
?:?功能:無(wú)條件轉(zhuǎn)移語(yǔ)句
?:?說(shuō)明:
,不能用整數(shù)作標(biāo)號(hào)
,只能出現(xiàn)在got。所在函數(shù)內(nèi),且唯
,只能加在可執(zhí)行語(yǔ)句前面
?限制使用goto語(yǔ)句
19
While語(yǔ)句特點(diǎn)和說(shuō)明
?:?特點(diǎn):先判斷表達(dá)式,后執(zhí)行循環(huán)體
?:?說(shuō)明:
?循環(huán)體有可能一次也不執(zhí)行
,循環(huán)體可為任意類(lèi)型語(yǔ)句
?下列情況,退出while循環(huán)
?羊件表達(dá)式不成立(為零)
循環(huán)體內(nèi)遇break,return,goto
?無(wú)限循環(huán):while(l)
循環(huán)體;
21
100
例子用while循環(huán)求yn
#include<stdio.h>
voidmain()循環(huán)條件
{inti,sum=0;
i=l;
while(i<=100)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年煙草行業(yè)質(zhì)量控制與管理手冊(cè)
- 第07講 促織(寒假預(yù)習(xí)講義)【含答案詳解】
- 2025年證券交易操作流程指南
- 2025年企業(yè)稅務(wù)審計(jì)與風(fēng)險(xiǎn)管理手冊(cè)
- 財(cái)務(wù)稅務(wù)籌劃與申報(bào)制度
- 辦公室員工培訓(xùn)效果反饋機(jī)制制度
- 辦公室環(huán)境與衛(wèi)生管理制度
- 2026年西安輕工業(yè)鐘表研究所有限公司招聘?jìng)淇碱}庫(kù)完整答案詳解
- 養(yǎng)老院緊急情況處理制度
- 2026年瀏陽(yáng)市金陽(yáng)醫(yī)院第三批公開(kāi)招聘編外合同制人員備考題庫(kù)及答案詳解一套
- 衛(wèi)生院孕優(yōu)知識(shí)培訓(xùn)課件
- 2025-2030工業(yè)窯爐煙氣多污染物協(xié)同控制技術(shù)
- 培訓(xùn)機(jī)構(gòu)臺(tái)賬
- 2025年重慶高考高職分類(lèi)考試中職語(yǔ)文試卷真題(含答案詳解)
- 電商預(yù)算表格財(cái)務(wù)模板全年計(jì)劃表格-做賬實(shí)操
- 委托付款管理辦法
- 泵車(chē)日常管理辦法
- 煤礦后勤管理辦法
- 骨科術(shù)后疼痛評(píng)估與護(hù)理查房
- 輸液泵的使用培訓(xùn)課件
- 中醫(yī)針灸治療婦科疾病
評(píng)論
0/150
提交評(píng)論