C語言-第3章分支結(jié)構(gòu)教學(xué)案_第1頁
C語言-第3章分支結(jié)構(gòu)教學(xué)案_第2頁
C語言-第3章分支結(jié)構(gòu)教學(xué)案_第3頁
C語言-第3章分支結(jié)構(gòu)教學(xué)案_第4頁
C語言-第3章分支結(jié)構(gòu)教學(xué)案_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第3章分支結(jié)構(gòu)程序設(shè)計(jì)(選擇結(jié)構(gòu))

本章要點(diǎn)

1、掌握if、if-else、if的嵌套語句的語法結(jié)構(gòu)及編程

2.SBswitch語句的語法結(jié)構(gòu)及編程

總課時(shí)

12

3.2.1單分支if語句的使用

學(xué)習(xí)目標(biāo):

1、理解選擇結(jié)構(gòu)的概念和特點(diǎn);

2、掌握單分支if語句的語法結(jié)構(gòu)、執(zhí)行過程和基本用法,學(xué)會正確書寫if語句;

4、能正確閱讀if語句程序,會使用if語句編寫、調(diào)試并運(yùn)行程序。

課前準(zhǔn)備:預(yù)習(xí)P30-32(預(yù)習(xí)后,將學(xué)案上知識點(diǎn)在課本上做記號,并完成相應(yīng)預(yù)習(xí)題)

課時(shí)分配:2課時(shí)

活動課堂

活動一、發(fā)現(xiàn)問題(目標(biāo)—了解分支結(jié)構(gòu)的意義)

實(shí)例:從鍵盤上輸入一個(gè)數(shù),求這個(gè)數(shù)的平方根。

算法:

發(fā)現(xiàn)問題:

活動二'解決問題(目標(biāo)—掌握分支結(jié)構(gòu))

思考:從鍵盤輸入一個(gè)數(shù),若為正數(shù)和。則

求其平方根,否則不予處理。小結(jié)知識點(diǎn):

算法:

1、在程序設(shè)計(jì)中,根據(jù)條件是否

滿足,從給定的兩組操作中選擇其

中之一進(jìn)行執(zhí)行,這種結(jié)構(gòu)稱

或結(jié)構(gòu)。

2、流程圖:

活動三、預(yù)習(xí)交流(目標(biāo)一一了解單分支選擇結(jié)構(gòu))

小結(jié)知識點(diǎn):

觀察左側(cè)流程圖,思考以下問題:

1、x>=0是;

2、左圖中,供有.種選擇(分

士、

N(假)

Y(真)

活動四:自主學(xué)習(xí)(目標(biāo)一掌握單分支if的簡單用法)知識點(diǎn):

1、觀察下列語句,思考:1.if語句的一般形式:

(1)if(a>b)printfa);?---

(2)if(a>b)c=a;c=a+b;2.書寫易錯點(diǎn):

(3)if(a>b){c=a;c=b;c=a+b;}?條件表達(dá)式需用括起來。

.語句⑴的含義:____________________________?分支中各語句應(yīng)以結(jié)尾。

語句⑵的含義:_____?_當(dāng)__分__支_中__有__若_干__條__語__句_,__則__需_用

?語句中a>b是,書寫時(shí)用括起來。括起來形成復(fù)合語句,且

?if語句可寫在—行,也可寫在一行,注意觀察其后(加/不加)分號。

每行的結(jié)尾,分支中各語句結(jié)尾均有(符號),但后沒有。

?在(2)(3)兩語句段中的不同處畫上橫線,語句(2)中的c=a+b;(屬于/不

屬于)if分支。

活動五:觀察思考(目標(biāo)—掌握if的執(zhí)行流程)

1、觀察下列程序的執(zhí)行,口述程序的執(zhí)行過程,畫出程序的流程圖:

例1:#include<math.h>

#include<stdio.h>小結(jié)知識點(diǎn):

main()1、if語句的執(zhí)行流程:

{floatx,yjclrscr();(1)_____________________________________

scanf&x):(2)_____________________________________

if(x>=0)(3)2、

{y=sqrt(x);(1)程序中有條分支,當(dāng)表達(dá)式

printf(*%.2f",y);}值為真(即滿足條件)執(zhí)行,否則

1

流程圖:(2)表達(dá)式可以為表達(dá)式,

一般為和表達(dá)式,表達(dá)

式要用括起來。

(3)“語句”:可以是條簡單語

句,也可以是多條語句,多條語句稱為

語句,要用括起來。

4、說明:

例:表達(dá)式-3+'d,為表達(dá)式,值為,作條件判斷結(jié)果為

表達(dá)式a=0為表達(dá)式,值為,作條件判斷結(jié)果為

表達(dá)式a=5為表達(dá)式,值為,作條件判斷結(jié)果為

表達(dá)式a>4為表達(dá)式,若a=5則結(jié)果為

表達(dá)式(a>0)&&(a%2==0)為表達(dá)式,若結(jié)果為5則結(jié)果為

活動六'嘗試學(xué)習(xí)(目標(biāo)一if語句的初步應(yīng)用)

編程:輸入一個(gè)學(xué)生成績score,如果成績大于60,則顯示pass,否則不顯示

程序:流程圖:

活動七、合作探究'拓展應(yīng)用(目標(biāo)一if語句的應(yīng)用)

1、閱讀下列程序,寫出運(yùn)行結(jié)果,畫出程序的流程圖:

main()

{inta,b;流程圖

scanf("%d%d”,&a,&b);

if(a<b)a=b;

printfa);}[

執(zhí)行:

?若輸入45,則輸出:

若輸入54,則輸出:

.程序的功能是:o

?:第三條語句是語句,當(dāng)輸入第一

組數(shù)據(jù),執(zhí)行完該語句時(shí),a=,b=

若將a,b兩變量的值交換可使用語句:

2、編程:從鍵盤輸入一個(gè)字符,判斷是否是字母,若是字母則輸出該字母為“char”,

若是數(shù)字字符則輸出該字符是“number”。(輸出格式要求:若輸入'A,,則輸出結(jié)果

n

為:"'A'isachar.o)畫框圖。

活動八:課堂檢測:

(1)輸入三個(gè)整數(shù)a,b,c,輸出其中最大數(shù)。

課堂小結(jié):if語句及其使用(學(xué)生小結(jié))

課后作業(yè):P41五(1)(2)和三角形的面積

3、輸入三個(gè)整數(shù)a,b,c,將這三個(gè)數(shù)由大到小的順序輸出。

3.2.2雙分支if語句的使用

學(xué)習(xí)目標(biāo):

1、掌握if-else語句的語法結(jié)構(gòu)、執(zhí)行過程和基本用法,正確書寫i『else語句;

2、能正確閱讀if-else語句程序,會使用if-else語句編寫、調(diào)試和運(yùn)行程序。

課前準(zhǔn)備:預(yù)習(xí)P32-33(預(yù)習(xí)后,將學(xué)案上知識點(diǎn)在課本上做記號,并完成相應(yīng)預(yù)習(xí)題)

課時(shí)分配:2課時(shí)

活動課堂

活動一'解決問題'發(fā)現(xiàn)問題(目標(biāo)——了解雙分支結(jié)構(gòu))

實(shí)例:從鍵盤輸入一個(gè)數(shù),若是正數(shù)或0求其平方根,否則求其平方值。

算法:流程圖:

發(fā)現(xiàn)問題:出現(xiàn)了個(gè)分支。

(1)x>=0是;

(2)上圖中,有個(gè)分支。

(3)若x>=0的值為真,則計(jì)算機(jī)會執(zhí)行分支,否則執(zhí)行分支。

活動三、自主學(xué)習(xí)(目標(biāo)——if雙分支結(jié)構(gòu))

觀察下列語句,說出下列語句段的含義并思考:知識點(diǎn):

(1)if(a>b)printfa);八1.if雙分支結(jié)構(gòu)語句:

(2)if(a>b)

printf("%d",a);

else2、條件表達(dá)式需用括起來;分支中各語

printf("%d”,b);句應(yīng)以結(jié)尾;當(dāng)分支中有若干條語句,則

(3)if(a>b)c=a;elsec=b;c=a+b;需用括起來形成復(fù)合語句,且大括號后

(4)if(a>b)c=a;else{c=b;c=a+b;}(加/不加)分號。

?單分支語句有,雙分支語句有;

?語句中a>b是,書寫時(shí)用括起來。

?if語句可寫在行,也可寫在行,注意觀察每行的結(jié)尾,分支

中各語句后均有,但后沒有。

?在各程序段中用橫線畫出分支語句段,語句段⑶中的c=a+b;(屬于/不屬于分f分支。

活動四'學(xué)習(xí)交流(目標(biāo)——if雙分支語句的執(zhí)行過程)

1、觀察下列程序的執(zhí)行,口述程序的執(zhí)行過程,畫出程序的流程圖:

例1:#include<math.h>---------------------------------------

#include<stdio.h>小結(jié)知識點(diǎn):

1、if語句的執(zhí)行流程:

(1)_______________

(2)_____________

I~~(3)

main()

{floatx,yjclrscr();

scanf&x);

if(x>=0)

y=sqrt(x);

else

y=x*x;

printf("%.2f”,y);

1

流程圖:

活動五'嘗試學(xué)習(xí)(目標(biāo)一汗雙分支結(jié)構(gòu)語句的初步應(yīng)用)

編程:輸入一個(gè)學(xué)生成績score,如果成績大于60,則顯示pass,否則顯示notpass。

程序:流程圖:

活動七、合作探究、拓展應(yīng)用(目標(biāo)一if語句的應(yīng)用)

1、閱讀程序,寫出運(yùn)行結(jié)果,并畫出流程圖

main()流程圖

{inta,b,c;

scanf("%d%d”,&a,&b);

if(a>b)c=a;elsec=b;

printfc);}

?若輸入45,則輸出:

若輸入54,則輸出:

,程序的功能是:_________________

2、編程:從鍵盤輸入一個(gè)字符,判斷是否是字母,若是字母則輸出該字母為“char”,

若不是字母,則輸出該字符不是“char”。(輸出格式要求:若輸入'A,,則輸出結(jié)果

為:“'A'isachar.",若輸入1或它非字母字符則輸出"'1'isnotachar")畫框

圖。

活動八、大顯身手,能力提升。編程并畫出N-S框圖。

2、從鍵盤輸入兩個(gè)數(shù)a,b,編程將其中較大的數(shù)存入max并輸出。

課堂小結(jié):if語句及其使用(學(xué)生小結(jié))

課后作業(yè):1、課本P41四(1)、五(3)

2、從鍵盤輸入一整數(shù),判斷該數(shù)是偶數(shù)則顯示“evennumber”,否則顯示“oddnumber"

3、從鍵盤輸入兩個(gè)數(shù)a,b,編程輸出較大值。

課堂檢測1(if語句)

組別:姓名:

1、改錯:下列程序有三處錯誤,請改正。

main()

{inta;改正:

scanf("%d",a):

ifa>=0a=aelsea=-a;

printfa);}

思考:上述程序完成什么功能?其中劃線處的語句能否簡化,如何簡化?

2、閱讀程序,寫出運(yùn)行結(jié)果

main()

{intx=6,y;

if(x<10){x++;y=4*x;}

elsex一;y=x/3;

printf(〃產(chǎn)%d〃,y);}

輸出結(jié)果:

y=2

3、完善程序:使該程序?qū)崿F(xiàn)下列函數(shù)的計(jì)算,要求從鍵盤輸入X,輸出y的值。

_2x-l(x<10)

3X2+5(X>=10)

main()

{floatx,y;

if__________________

y=2*x-l;

else_______________

printf(z,%.2f",y);}

4、編程:從鍵盤輸入三角形三條邊的長,驗(yàn)證邊長的合法性并求三角形的周長和面積。

三角形面積求法:s="十;十,面積area=—a)(s—b)(s—c)

3.2.3多分支if語句

學(xué)習(xí)目標(biāo):

1、掌握多分支if語句語法結(jié)構(gòu)、執(zhí)行過程和基本用法,正確書寫多分支if語句;

2、能正確閱讀多分支if語句程序,會使用多分支if語句編寫、調(diào)試和運(yùn)行程序。

課前準(zhǔn)備:預(yù)習(xí)P32-33(預(yù)習(xí)后,將學(xué)案上知識點(diǎn)在課本上做記號,并完成相應(yīng)預(yù)習(xí)題)

課時(shí)分配:2課時(shí)

活動課堂

活動一、預(yù)習(xí)交流,學(xué)習(xí)新知:多分支if語句

(課前預(yù)習(xí),自主完成。課上小組展示'評講,教師點(diǎn)評)

1、多分支if語句結(jié)構(gòu)

If(表達(dá)式1)語句組1

elseif(表達(dá)式2)語句組2

elseif(表達(dá)式3)語句組3

else語句組n

3、執(zhí)行過程:(口述)

4、說明:(1)每個(gè)條件都必須用括起來;

(2)語句組可以是一條語句,也可以是條語句,稱語句,

必須用括起來。

(3)在單分支if語句中,要求計(jì)算機(jī)根據(jù)條件是否成立執(zhí)行分支;

雙分支if-else語句中要求計(jì)算機(jī)根據(jù)條件是否成立選擇兩個(gè)分支中的

個(gè)分支執(zhí)行;而多分支結(jié)構(gòu),計(jì)算機(jī)仍根據(jù)條件是否成立選擇其中

個(gè)分支執(zhí)行。

(4)書寫時(shí)if與else要對齊并配對使用。

活動二'例題分析。課本P33頁例3-3(由學(xué)生分析該題算法,說出用什么結(jié)構(gòu)實(shí)現(xiàn)算

法并編程、畫框圖)

活動三、小試牛刀:多分支if語句的使用

【合作探究11判斷下列語句的正確性,并用紅筆改正。

(1)if(a>0)y=l;(2)if(a>0)y=l;(3)if(a>0)y=l;

else(a==0)y=0;elseifa==0y=0;elseif(a==0)y=0;x++;

elsey=-l;elsey=-l;elsey=-l;

【合作探究2】:分析下列程序的執(zhí)行過程,并據(jù)此推出多分支if語句的執(zhí)行流程

main()

流程圖和框圖:

{intx,y;

scanf("%d",&x);

if(x>0)y=l;

elseif(x==0>y=0;

elsey=-l;

printf("y=%d",y);}

執(zhí)行:若輸入8,則輸出

若輸入0,則輸出

若輸入-9,則輸出

?該程序的功能:_________________________________________________

【合作探究3】編程

1、移動公司制定話費(fèi)充值優(yōu)惠政策,若一次性充值超過(含)1000元,送200元;若一

次性充值超過(含)500元,送100元;若一次性充值超過(含)200元,送50元,請輸入

所充金額x,輸入用戶最終獲取的話費(fèi)。

?算法:?流程圖:

?程序:

活動四、大顯身手,能力提升。編程并畫出N-S框圖。

1、出租汽車收費(fèi)辦法是:行駛里程在3千米以內(nèi)(含3千米)按7元收費(fèi),超過3千米,

在5千米(含5千米)以內(nèi),每千米按1.8元加收,超過5千米,每千米按2.4元加收。

編寫出租汽車收費(fèi)程序。

編程:流程圖:

2、從鍵盤上輸入一個(gè)字符,判別其分類:控制字符、數(shù)字字符、大寫字母、小寫字母

或其它字符。(提示:控制字符ASCH碼值<32)

編程:流程圖:

課堂小結(jié):多分支if語句及其使用(學(xué)生小結(jié))

課后作業(yè):P41四(2)(做在書上)下面各題上作業(yè)本

1、閱讀程序:

main()

{intk=10,y;

if(k<5)

y=l;

elseif(x<10)

y=2;

elsey=3;

printf("y=%d",y);}

輸出結(jié)果:

0(xWT)

2、下列程序用來求丫=|r(-l<x<0)的值,請完善程序。

,2x+5(x20)

main()

scanf&x);

if____________

y=2*x+5;

elseif_____________

y=O;

else_____________

printf(*y=%f*,y);}

3、根據(jù)考試成績評定等級:90分以上(含90分)為優(yōu)秀,80分以上(含80分)為良好,

60分以上(含60分)為及格,低于60分為不及格。編程實(shí)現(xiàn)輸入成績,輸出等級。

3.2.3。)if語句的嵌套

學(xué)習(xí)目標(biāo):

1、掌握if嵌套語句語法結(jié)構(gòu)、執(zhí)行過程和基本用法,正確書寫if嵌套語句;

2、能正確閱讀if嵌套語句程序,會使用if嵌套語句編寫、調(diào)試和運(yùn)行程序。

課前準(zhǔn)備:預(yù)習(xí)P32-33(預(yù)習(xí)后,將學(xué)案上知識點(diǎn)在課本上做記號,并完成相應(yīng)預(yù)習(xí)題)

課時(shí)分配:2課時(shí)

活動課堂

活動一、預(yù)習(xí)交流,學(xué)習(xí)新知:if嵌套語句的一般形式

(課前預(yù)習(xí),自主完成。課上小組展示'評講,教師點(diǎn)評)

1、觀察下列流程圖:

(1)請嘗試用if語句程序段描述上述框圖:

(2)形如(1)中程序段1為結(jié)構(gòu);而形如(1)中程序段2中

if語句中又包含了if語句,稱為o

(3)注意:if嵌套語句中else與其上最近的相配對(除非有{}),最好采

用對齊(if-else)和縮進(jìn)(if-if)相結(jié)合的方法書寫,這樣程序比較直觀。

(4)典型if嵌套結(jié)構(gòu):(5)要使下列程序段中第一個(gè)else與第一個(gè)if配對

畫出下列內(nèi)嵌的if語句應(yīng)如何修正

if()if()

if()語句1if()語句1

else語句2else

elseif()語句3

if()語句3else語句4

else語句4

活動二:合作究疑(目標(biāo)一一掌握嵌套if語句的表示)

觀察下列if語句,思考問題:

(1)if(a>0)y=l;(2)if(a>0)y=l;

elseif(a=0)y=0;else

elsey=-l;if(a=0)y=0;elsey=-l;

(3)if(a>0)y=l;(4)if(a>0)(5)if(a>0)

if(a>5)y=2;if(a>5)y=2;{if(a>5)y=2;}

elsey=-l;elsey=-lelsey=-l;

⑴屬于多分支if語句的有

屬于嵌套if語句的有^___________________

⑵比較語句⑴與語句⑵,比較語句⑶與語句⑷,比較語句⑷與語句⑸,分析if-else

配對問題,彳得出其執(zhí)行流程,畫出流程圖:

小結(jié)知識點(diǎn):小結(jié)知識點(diǎn):

?嵌套汗語句的一般形式:?書寫注意點(diǎn):

?多分支if與嵌套if的關(guān)系:

(1)時(shí)兩者相同;

■酉己對原貝h_____________________⑵分支有一個(gè),但最多執(zhí)行一條;

若需強(qiáng)行改變配對規(guī)則,則可用_(3)當(dāng)分支超過__________條時(shí),

盡量用多分支if語句。

活動三:拓展應(yīng)用(目標(biāo)一一掌握嵌套if語句的實(shí)際運(yùn)用)

1、從鍵盤輸入三個(gè)整數(shù),求其最大值

算法:流程圖

程序:

2、編程求一元二次方程ax?+bx+c=O的根,要求對a及△的值進(jìn)行判斷。

?算法:?流程圖:

?程序:

2、將P33例3-3用if語句的嵌套語句實(shí)現(xiàn)編程

課后作業(yè):1、課本P40三(1)(做在書上)2、P41五(1)上本子

3、出租汽車收費(fèi)辦法是:行駛里程在3千米以內(nèi)(含3千米)按7元收費(fèi),超過3千米,

在5千米(含5千米)以內(nèi),每千米按1.8元加收,超過5千米,每千米按2.4元加收。

編寫出租汽車收費(fèi)程序。

main()

{floatx,y;

if____________

ify=7+l.8*(x-3);else

elsey=7;

printf("y=%f",y);}

課堂檢測2(if語句)

組別:姓名:

1、閱讀程序:

main()

{intk=5,y;

if(k<10)

if(x<5)y=2;elsey=l;

elsey=3;

printfCy=%d//,y);}

輸出結(jié)果:

0(xWT)

2、下列程序用來求y=『X(-l<x<0)的值,請完善程序。

.2x+5(x20)

main()

{floatx,y;

if_____________

ify=2*x+5;else

elsey=0;

printfy);}

72/—(2WxV5)

3、編程求下列分段函數(shù),y=<4(x+5)(5WxV8)絕對值函數(shù)為fabs()

15-3x1(8^x<ll)

第六節(jié)多分支switch-case語句

學(xué)習(xí)目標(biāo):

1、掌握swith-case語句語法結(jié)構(gòu)、執(zhí)行過程和基本用法,正確書寫switch語句;

2、能正確閱讀switch語句程序,會使用switch語句編寫、調(diào)試和運(yùn)行程序。

課前準(zhǔn)備:預(yù)習(xí)P36-38(預(yù)習(xí)后,將學(xué)案上知識點(diǎn)在課本上做記號,并完成相應(yīng)預(yù)習(xí)題)

課時(shí)分配:2課時(shí)

活動課堂

活動一、預(yù)習(xí)交流,學(xué)習(xí)新知:多分支swith-case語句的一般形式

(課前預(yù)習(xí),自主完成。課上小組展示'評講,教師點(diǎn)評)

1、多分支switch語句的一般形式2、流程圖

3、執(zhí)行過程(口述)

4、說明:

(1)switch后面的表達(dá)式一般是和o

(2)case后面為表達(dá)式,不允許出現(xiàn)。其后語句組可不用心。

(3)[break]為可選項(xiàng),若選擇則程序執(zhí)行完該分支后將會跳出switch語句,執(zhí)行

語句的后繼語句,否則將執(zhí)行下一個(gè),直到出現(xiàn)

和為止。

活動二、例題分析。課本P37頁例3-6、3-7(由學(xué)生分析該題算法,說出用什么結(jié)構(gòu)實(shí)

現(xiàn)算法并編程、畫框圖)

活動三、合作究疑(目標(biāo)一一掌握swith-case語句的執(zhí)行過程)

1、main()若輸入A,則輸出:

{chargrade;85-100

scanf("%c”,&grade);70-84

switch(grade)60-69

{case,A':printf(“85T00\n”);<60

case'B':printf(“70-84\n”);error

case<C,:printf(rt60-69\nw);若輸入D,則輸出:

case'D':printf(

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論