第一篇:高中數(shù)學(xué)《條件語句》文字素材4 新人教B版必修3
必修3“條件語句”的教學(xué)實踐與反思
一、教材分析
1、教學(xué)內(nèi)容的地位和作用
算法是設(shè)計高中數(shù)學(xué)課程的一條主線,程序是由若干算法語句組成的有序集合?!八惴ㄕZ句”是繼“程序框圖”之后學(xué)習(xí)的內(nèi)容,是解決某一個(或某一類)問題的算法的程序?qū)崿F(xiàn)。在此之前,學(xué)生已學(xué)習(xí)了算法的概念、程序框圖與算法的基本邏輯結(jié)構(gòu)、輸入語句、輸出語句和賦值語句,這為過渡到本節(jié)的學(xué)習(xí)起著鋪墊作用。對于順序結(jié)構(gòu)的算法或程序框圖,我們可以利用輸入語句、輸出語句和賦值語句,寫出其計算機(jī)程序,對于條件結(jié)構(gòu)的算法或程序框圖,要轉(zhuǎn)化為計算機(jī)能夠理解的算法語句,我們必須進(jìn)一步學(xué)習(xí)條件語句。條件語句與程序框圖中的條件結(jié)構(gòu)相對應(yīng),它是五種基本算法語句中的一種,通過本節(jié)課的學(xué)習(xí),學(xué)生將更加了解算法語句,并能用更全面的眼光看待前面學(xué)過的語句,并為以后的學(xué)習(xí)作好必要的準(zhǔn)備。本節(jié)課對學(xué)生算法語言能力、有條理的思考與清晰地表達(dá)的能力,邏輯思維能力的綜合提升具有重要作用。
學(xué)習(xí)算法的目的,不是學(xué)習(xí)程序設(shè)計語言,而是體會算法的基本思想以及算法的重要性和有效性,算法學(xué)習(xí)能夠幫助學(xué)生清晰思考問題,提高邏輯思維能力;有助于學(xué)生全面的理解運(yùn)算;有助于提高學(xué)生的信息素養(yǎng)?!缎抡n標(biāo)》要求學(xué)生“經(jīng)歷將具體問題的程序框圖轉(zhuǎn)化為程序語句的過程,理解幾種基本算法語句----輸入語句、輸出語句、賦值語句、條件語句、循環(huán)語句,進(jìn)一步體會算法的基本思想。
2、教學(xué)重點(diǎn)和難點(diǎn)
重點(diǎn):條件語句的基本格式、種類以及應(yīng)用,與條件結(jié)構(gòu)的關(guān)系 難點(diǎn):條件語句的應(yīng)用,會編寫程序中的條件語句.二、目標(biāo)分析
1、知識與技能
知識目標(biāo):理解基本算法語句---條件語句,以及與條件結(jié)構(gòu)的關(guān)系,初步體驗如何由程序框圖轉(zhuǎn)化為程序語句。
條件語句的兩種形式如下:
IF 條件
THEN
IF 條件
THEN
語句體1
ELSE
語句體
語句體2
END IF
END IF
能力目標(biāo):通過條件語句的學(xué)習(xí),了解條件語句在解決問題中的應(yīng)用,進(jìn)一步體會算法的基本思想。
2、過程與方法
采用“案例教學(xué)“,從具體的學(xué)生熟悉的實例出發(fā),在具體的情境中,教師啟發(fā)引導(dǎo)、講練結(jié)合,螺旋上升的方式,實現(xiàn)教學(xué)目標(biāo)。
3、情感、態(tài)度與價值觀
通過生活中的一些具體問題的解決,培養(yǎng)學(xué)生對設(shè)計算法的濃厚興趣,激發(fā)學(xué)生的求知欲,鍛煉學(xué)生解決問題的能力,進(jìn)而增強(qiáng)學(xué)生的成就感。
三、教學(xué)過程
1、創(chuàng)設(shè)情境,提出問題
問題1:黃巖火車站快要開始營業(yè)了
規(guī)定:火車托運(yùn)p(kg)行李時每千米的費(fèi)用(單位:元)標(biāo)準(zhǔn)為
用心
愛心
專心 0.3pp?30kg? y???0.3?30?0.5(p?30)p?30kg請設(shè)計算法,并畫出行李托運(yùn)費(fèi)的程序框圖
[設(shè)計意圖]問題是數(shù)學(xué)的心臟,數(shù)學(xué)教學(xué)應(yīng)當(dāng)從問題開始,以實際應(yīng)用問題作為情境,激發(fā)學(xué)生的學(xué)習(xí)熱情,引發(fā)學(xué)生的學(xué)習(xí)動機(jī),通過問題展開教學(xué)活動,引導(dǎo)學(xué)生主動進(jìn)入新知識。
2、解決問題
(1)探討條件結(jié)構(gòu)的特點(diǎn)
以學(xué)生所畫的程序框圖為例,概括條件結(jié)構(gòu)的特點(diǎn),并與順序結(jié)構(gòu)進(jìn)行比較,得出如下結(jié)論:條件結(jié)構(gòu)的特點(diǎn)是有一個判斷過程,如果滿足條件就執(zhí)行某種操作,否則執(zhí)行其他操作,執(zhí)行到哪一步,需要根據(jù)條件作出選擇。(2)引入新知識,學(xué)習(xí)條件語句
算法中的條件結(jié)構(gòu)可以用條件語句來實現(xiàn),其一般格式與對應(yīng)的程序框圖(書p10)如下: IF 條件
THEN
IF 條件
THEN
語句體1
ELSE
語句體
語句體2 END IF
END IF
[學(xué)生活動]:書翻到第10頁,把條件結(jié)構(gòu)對應(yīng)的兩種程序框圖寫出條件語句(運(yùn)用新知)(3)解決問題1 [學(xué)生活動]:根據(jù)問題1所畫的程序框圖以及原先學(xué)過的輸入、輸出、賦值語句,編寫程序,同時教師隨機(jī)讓兩名學(xué)生板演:
INPUT
p
IF p<=30 THEN
y=0.3p
ELSE
y=0.3?30?0.5?(p?30)
END IF
PRINT y
END [教師小結(jié)]在應(yīng)用條件語句編程時要注意以下幾點(diǎn):
① 條件的判斷與執(zhí)行語句的順序(首先對IF后的條件進(jìn)行判斷,如果(IF)條件符合,那么(IHEN)執(zhí)行語句體1,否則(ELSE)執(zhí)行語句體2。② IF與END IF要配對使用,不能只用其一。
③ 區(qū)分END IF與END的區(qū)別,前者是結(jié)束條件語句,后者是結(jié)束整個程序。
④ 編寫程序時注意不要漏掉一些條件的結(jié)束語句,特別是條件語句比較多的時候,因此書寫的時候可由里向外將每個條件結(jié)構(gòu)錯開位置。
3、簡單應(yīng)用(隨堂練習(xí))
練習(xí)1:將p11圖1.1?10中的程序框圖轉(zhuǎn)化為程序
問題2:閱讀下面的程序,你能得出什么結(jié)論?
① IF x>0 THEN ② TNPUT x
用心
愛心
專心 y=1 IF x<0 THEN ELSE x=-x y=0 END IF END IF PRINT x END [設(shè)計意圖]:使學(xué)生進(jìn)一步認(rèn)識條件語句,熟悉條件結(jié)構(gòu)與條件語句的互化,進(jìn)一步體會賦值語句、條件語句,而且還能鍛煉學(xué)生閱讀程序的能力。
問題3:編寫一個程序,求實數(shù)x的絕對值
[設(shè)計意圖]:不僅是為了應(yīng)用條件語句,而且再次提供了完整經(jīng)歷算法設(shè)計全過程的機(jī)會。
3、深入探究,條件語句的深層應(yīng)用
問題4:將p12圖1.1?11求解一元二次方程ax?bx?c?0的算法的程序框圖轉(zhuǎn)化為程序 算法分析:觀察程序框圖可以發(fā)現(xiàn),此題并不簡單,原因是框圖中包含了兩個條件結(jié)構(gòu),而且內(nèi)層的條件結(jié)構(gòu)是外層的條件結(jié)構(gòu)的一個分支,屬于多層結(jié)構(gòu)的嵌套問題。[設(shè)計意圖]:本例所設(shè)計的算法本質(zhì)是“公式法”。是給出框圖之后,進(jìn)而用條件語句來編寫程序。先給學(xué)生留有足夠的空間,放手讓他們?nèi)ヌ剿?,若有困難,老師加以分析、提醒,如算術(shù)平方根的符號為SQR等等,再補(bǔ)充幾個比較常見的函數(shù)及功能,如ABS是x的絕對值,LOG是x取自然對數(shù),它們都是QBASIC中的標(biāo)準(zhǔn)函數(shù),可以直接應(yīng)用,另外再補(bǔ)充QBASIC中常用的算術(shù)運(yùn)算符,如?,/,??,MOD,分別表示乘,除,不等,余數(shù),整除。[教師小結(jié)]:對于兩個條件結(jié)構(gòu)嵌套的一般格式如下: TF 條件1 THEN 語句體1 IF 條件2 THEN 語句體2 ELSE 語句體3 END IF ELSE 語句體4 END IF 問題5:編寫一個程序,輸入兩個實數(shù),并由大到小輸出這兩個數(shù)。
[設(shè)計意圖]:進(jìn)一步認(rèn)識算法的程序,并學(xué)習(xí)一些編程的小技巧,進(jìn)而完成三個數(shù)的問題。算法分析:這是一道典型的可用條件結(jié)構(gòu)的算法問題,設(shè)計的思路和問題3相似,完整地經(jīng)歷了先用自然語言寫出算法步驟,接著畫出程序框圖,最后把程序框圖轉(zhuǎn)化為程序的全過程。本例的程序中使用的“小技巧”是借助一個中間變量“t”來交換兩個變量的值
INPUT “a,b=”;a,b IF b>a THEN
t=a
a=b
b=t END IF
PRINT a,b END
用心
愛心
專心
2變式:編寫程序,使任意輸入的3個整數(shù)按從大到小的順序輸出。
[教師小結(jié)]:這個算法編程時主要是重復(fù)用到變量的交換,這是程序的關(guān)鍵之處?;舅枷胧窍葘與b比較,把小者賦給b,大者賦給a;再將a與c比較,把小者賦給c,大者賦給a,此時a已是三者中最大;最后將b與c比較,大者賦給b小者賦給c,a、b、c就按大到小的順序排列了。
推廣:編寫程序,使任意輸入的n(n是正整數(shù))個整數(shù)按從大到小的順序輸出。(生講思路)[設(shè)計意圖]:讓學(xué)生學(xué)會思考,理解知識間的聯(lián)系,學(xué)會舉一反三。練習(xí)2:
(1)讀程序,說明程序的運(yùn)行過程: INPUT “Please input an integer:”;x IF 9 (3)閏年是指能被4整除但不能被100整除,或者能被400整除的年份,編寫一個程序,判斷輸入的年份是否為閏年? [設(shè)計意圖]:體現(xiàn)學(xué)習(xí)是再創(chuàng)造。學(xué)習(xí)不再看成是一種被動地吸收知識,通過反復(fù)練習(xí)強(qiáng)化儲存知識的過程,而是用學(xué)生原有的知識處理新的任務(wù),并構(gòu)建他們自己的意義。 4、歸納小結(jié),啟發(fā)創(chuàng)新 問題6:通過本節(jié)課的學(xué)習(xí),你學(xué)到了什么知識? 課后作業(yè):設(shè)置一個含嵌套結(jié)構(gòu)的問題,畫出程序框圖,編制相應(yīng)的程序,準(zhǔn)備交流。[設(shè)計意圖]:讓學(xué)生進(jìn)一步體驗條件結(jié)構(gòu)及條件語句的特征。同時,引導(dǎo)學(xué)生把學(xué)習(xí)的知識與實際問題相結(jié)合,體現(xiàn)學(xué)以致用的道理。 四、幾點(diǎn)反思 1、本節(jié)課主要學(xué)習(xí)了條件語句的結(jié)構(gòu)、特點(diǎn)、作用以及用法,并能解決一些簡單的問題。條件語句一般用在對條件進(jìn)行判斷的算法設(shè)計中,如判斷一個數(shù)的正負(fù),確定兩個數(shù)的大小,解一元二次方程等問題,還有求分段函數(shù)的函數(shù)值等,往往要用條件語句,有時甚至要用到條件語句的嵌套。 2、本節(jié)課算法教學(xué)采用“問題教學(xué)”,從具體的學(xué)生熟悉的實例出發(fā)(問題1),創(chuàng)設(shè)情境,結(jié)合原有的知識,讓學(xué)生體會條件結(jié)構(gòu)的特征;緊接著通過練習(xí) 1、問題 2、問題3,環(huán)環(huán)相扣,激發(fā)學(xué)生的興趣,發(fā)揮學(xué)生學(xué)習(xí)的主動性,使學(xué)生進(jìn)一步認(rèn)識、理解條件語句,熟悉條件結(jié)構(gòu)與條件語句的互化,進(jìn)一步體會賦值語句、條件語句,而且還能鍛煉學(xué)生閱讀程序的能力;然后通過問題4引出多重結(jié)構(gòu)嵌套,深化對條件結(jié)構(gòu)的認(rèn)識;最后通過問題5以及變式與推廣,進(jìn)一步認(rèn)識算法的程序,并學(xué)習(xí)一些編程的小技巧,讓學(xué)生學(xué)會思考,理解知識間的聯(lián)系,學(xué)會舉一反三。 這樣的教學(xué)路線,使得學(xué)生在環(huán)環(huán)相扣的問題探究過程中,既有行動上的參與,更讓學(xué)生養(yǎng)成獨(dú)立思考,積極探索的好習(xí)慣。也正因為這樣,高中數(shù)學(xué)課程設(shè)立“數(shù)學(xué)探究”“數(shù) 用心 愛心 專心 學(xué)建?!钡葘W(xué)習(xí)活動,為學(xué)生形成積極主動的、多樣的學(xué)習(xí)方式進(jìn)一步創(chuàng)造有利條件,以激發(fā)學(xué)生的數(shù)學(xué)學(xué)習(xí)興趣。 3、條件語句是算法中的一個知識點(diǎn),而算法本來屬于信息技術(shù)的內(nèi)容,信息技術(shù)和數(shù)學(xué)課程內(nèi)容的整合成為課程標(biāo)準(zhǔn)制定的一個基本理念。高中數(shù)學(xué)課程應(yīng)提倡利用信息技術(shù)來呈現(xiàn)以往教學(xué)中難以呈現(xiàn)的課程內(nèi)容,在保證筆算訓(xùn)練的前提下,盡可能使用科學(xué)型計算器,各種數(shù)學(xué)教育技術(shù)平臺,加強(qiáng)數(shù)學(xué)教學(xué)與信息技術(shù)的結(jié)合,鼓勵學(xué)生運(yùn)用計算機(jī)、計算器等進(jìn)行探索和發(fā)現(xiàn)。而我們這邊的學(xué)生使用的都是一般的計算器,只有計算功能,沒有繪制功能,所有算法相應(yīng)的程序語句是否可行、可靠?根本無法驗證,仍然是“紙上談兵”。對程序框圖的可行性缺乏驗證,會缺乏真實感的信任,會在一定程度上降低學(xué)生的興趣、參與的激情,課堂上如有機(jī)會,我們老師盡量通過計算機(jī)來驗證,不過效果不是很好,這是教學(xué)中令人非常遺憾的地方,希望在不久的將來能夠得到改善。 用心 愛心 專心 5 §1.3進(jìn)位制 教學(xué)目標(biāo):1了解各種進(jìn)位制與十進(jìn)制之間轉(zhuǎn)換的規(guī)律,會利用各種進(jìn)位制與十進(jìn)制之間的聯(lián)系進(jìn)行各種進(jìn)位制之間的轉(zhuǎn)換。2學(xué)習(xí)各種進(jìn)位制轉(zhuǎn)換成十進(jìn)制的計算方法,研究十進(jìn)制轉(zhuǎn)換為各種進(jìn)位制的除k去余法,并理解其中的數(shù)學(xué)規(guī)律。 教學(xué)重點(diǎn):各進(jìn)位制表示數(shù)的方法及各進(jìn)位制之間的轉(zhuǎn)換 教學(xué)難點(diǎn):除k取余法的理解以及各進(jìn)位制之間轉(zhuǎn)換的程序框圖及其程序的設(shè)計 學(xué)法:學(xué)習(xí)各種進(jìn)位制特點(diǎn)的同時探討進(jìn)位制表示數(shù)與十進(jìn)制表示數(shù)的區(qū)別與聯(lián)系,熟悉各種進(jìn)位制表示數(shù)的方法,從而理解十進(jìn)制轉(zhuǎn)換為各種進(jìn)位制的除k取余法。 教學(xué)過程 引入:我們常見的數(shù)字都是十進(jìn)制的,比如一般的數(shù)值計算,但是并不是生活中的每一種數(shù)字都是十進(jìn)制的.比如時間和角度的單位用六十進(jìn)位制,電子計算機(jī)用的是二進(jìn)制,舊式的稱是十六進(jìn)制的,計算一打數(shù)值時是12進(jìn)制的......那么什么是進(jìn)位制?不同的進(jìn)位制之間又又什么聯(lián)系呢? 進(jìn)位制是一種記數(shù)方式,用有限的數(shù)字在不同的位置表示不同的數(shù)值??墒褂脭?shù)字符號的個數(shù)稱為基數(shù),基數(shù)為n,即可稱n進(jìn)位制,簡稱n進(jìn)制。現(xiàn)在最常用的是十進(jìn)制,通常使用10個阿拉伯?dāng)?shù)字0-9進(jìn)行記數(shù)。對于任何一個數(shù),我們可以用不同的進(jìn)位制來表示。比如:十進(jìn)數(shù)57,可以用二進(jìn)制表示為111001,也可以用八進(jìn)制表示為71、用十六進(jìn)制表示為39,它們所代表的數(shù)值都是一樣的。 一般地,若k是一個大于一的整數(shù),那么以k為基數(shù)的k進(jìn)制可以表示為: anan?1...a1a0(k)(0?an?k,0?an?1,...,a1,a0?k),而表示各種進(jìn)位制數(shù)一般在數(shù)字右下腳加注來表示,如111001(2)表示二進(jìn)制數(shù),34(5)表示5進(jìn)制數(shù) 543210如:把二進(jìn)制數(shù)110011(2)化為十進(jìn)制數(shù).110011=1*2+1*2+0*2+0*2+1*2+1*2=32+16+2+1=51 把八進(jìn)制數(shù)7348(8)化為十進(jìn)制數(shù).7348(8)?7*8?3*8?4*8?8*8?3816 例 4、把二進(jìn)制數(shù)110011(2)化為十進(jìn)制數(shù).543210解:110011=1*2+1*2+0*2+0*2+1*2+1*2=32+16+2+1=51 例5 把89化為二進(jìn)制數(shù).解:根據(jù)二進(jìn)制數(shù)滿二進(jìn)一的原則,可以用2連續(xù)去除89或所得商,然后去余數(shù).具體的計算方法如下: 89=2*44+144=2*22+022=2*11+0 11=2*5+15=2*2+1 所以:89=2*(2*(2*(2*(2*2+1)+1)+0)+0)+1=1*26+0*25+1*24+1*23+0*22+0*21+1*20=1011001(2)這種算法叫做除2取余法,還可以用下面的除法算式表示: 把上式中的各步所得的余數(shù)從下到上排列即可得到89=1011001(2) 上述方法也可以推廣為把十進(jìn)制化為k進(jìn)制數(shù)的算法,這種算法成為除k取余法.例6 利用除k取余法把89轉(zhuǎn)換為5進(jìn)制數(shù) 具體的計算方法如把十進(jìn)制數(shù)化為二進(jìn)制數(shù)。 把k進(jìn)制數(shù)a(共有n位)轉(zhuǎn)換為十進(jìn)制數(shù)b的過程可以利用計算機(jī)程序來實現(xiàn),語句為: INPUT a,k,ni=1b=0 WHILE i<=nt=GET a[i]b=b+t*k^(i-1)i=i+1 WENDPRINT bEND 小結(jié): (1)進(jìn)位制的概念及表示方法(2)十進(jìn)制與二進(jìn)制之間轉(zhuǎn)換的方法及程序 (3)圖形計算器進(jìn)一步激發(fā)學(xué)生在算法方面的潛能,更能體現(xiàn)他們的創(chuàng)造精神。3210 總第 課時《循環(huán)語句1》教案 姓名 2012年 月 日 星期 【教學(xué)目標(biāo)】 1、知識與技能: 正確理解循環(huán)語句的概念,并掌握其結(jié)構(gòu)的區(qū)別與聯(lián)系。2.過程與方法 經(jīng)歷對現(xiàn)實生活情境的探究,認(rèn)識到應(yīng)用計算機(jī)解決數(shù)學(xué)問題方便簡捷,促進(jìn)發(fā)展學(xué)生邏輯思維能力 3.情感態(tài)度與價值觀 了解條件語句在程序中起判斷轉(zhuǎn)折作用,在解決實際問題中起決定作用。深刻體會到循環(huán)語句在解決大量重復(fù)問題中起重要作用,減少大量繁瑣的計算?!局攸c(diǎn)與難點(diǎn)】 重點(diǎn):循環(huán)語句的步驟、結(jié)構(gòu)及功能。難點(diǎn):會編寫程序中的循環(huán)語句。【學(xué)法與教學(xué)用具】 計算機(jī)、圖形計算器 【課時】一課時 【教學(xué)過程】 1、導(dǎo)入 試求自然數(shù)1+2+3+?+99+100的和。 顯然大家都能準(zhǔn)確地口算出它的答案:5050。而能不能將這項計算工作交給計算機(jī)來完成呢?而要編程,還需要進(jìn)一步學(xué)習(xí)基本算法語句中的另外兩種:條件語句和循環(huán)語句(板出課題)2.探究新知 循環(huán)語句格式是算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語句來實現(xiàn)的。 (1)WHILE語句的一般: 其中循環(huán)體是由計算機(jī)反復(fù)執(zhí)行的一組語句構(gòu)成的。WHLIE后面的“條件”是用于控制計算機(jī)執(zhí)行循環(huán)體或跳出循環(huán)體的。 當(dāng)計算機(jī)遇到WHILE語句時,先判斷條件的真假,如果條件符合,就執(zhí) 專心 愛心 用心 行WHILE與WEND之間的循環(huán)體;然后再檢查上述條件,如果條件仍符合,再次執(zhí)行循環(huán)體,這個過程反復(fù)進(jìn)行,直到某一次條件不符合為止。這時,計算機(jī)將不執(zhí)行循環(huán)體,直接跳到WEND語句后,接著執(zhí)行WEND之后的語句。因此,當(dāng)型循環(huán)有時也稱為“前測試型”循環(huán)。其對應(yīng)的程序結(jié)構(gòu)框圖為:(如上右圖) (2)UNTIL語句的一般格式是: 其對應(yīng)的程序結(jié)構(gòu)框圖為:(如上右圖)〖思考〗:直到型循環(huán)又稱為“后測試型”循環(huán),參照其直到型循環(huán)結(jié)構(gòu)對應(yīng)的程序框圖,說說計算機(jī)是按怎樣的順序執(zhí)行UNTIL語句的? 從UNTIL型循環(huán)結(jié)構(gòu)分析,計算機(jī)執(zhí)行該語句時,先執(zhí)行一次循環(huán)體,然后進(jìn)行條件的判斷,如果條件不滿足,繼續(xù)返回執(zhí)行循環(huán)體,然后再進(jìn)行條件的判斷,這個過程反復(fù)進(jìn)行,直到某一次條件滿足時,不再執(zhí)行循環(huán)體,跳到LOOP UNTIL語句后執(zhí)行其他語句,是先執(zhí)行循環(huán)體后進(jìn)行條件判斷的循環(huán)語句?!继釂枴剑和ㄟ^對照,大家覺得WHILE型語句與UNTIL型語句之間有什么區(qū)別呢?(讓學(xué)生表達(dá)自己的感受) 區(qū)別:在WHILE語句中,是當(dāng)條件滿足時執(zhí)行循環(huán)體,而在UNTIL語句中,是當(dāng)條件不滿足時執(zhí)行循環(huán)體。 【布置作業(yè)】 P23習(xí)題1.2 A組 3 P24習(xí)題1.2 B組 2.【教學(xué)反思】 專心 愛心 用心 2 《循環(huán)語句》復(fù)習(xí)班測試題 一.選擇題(40分)1.下面程序段 int k=2;while(k=0){printf(“%d”,k);k--;} 則下面描述中正確的是 C。 A)while循環(huán)執(zhí)行10次 B)循環(huán)是無限循環(huán) C)循環(huán)題語句一次也不執(zhí)行 D)循環(huán)體語句執(zhí)行一次 2.下列表達(dá)式中,(B)不滿足“當(dāng)x的值為偶數(shù)時值為真,為奇數(shù)時值為假”的要求。 A)x%2==0 B)!x%2!=0 C)(x/2*2-x)==0 D)!(x%2) 3.以下程序段的循環(huán)次數(shù)是 B。 for(i=2;i==0;)printf(“%d” , i--); A)無限次 B)0次 C)1次 D)2次 4.下列關(guān)于break語句的敘述不正確的是(C) A break語句可用在循環(huán)體中,它將使執(zhí)行流程跳出本層循環(huán)體。 B break語句可用在switch語句中,它將使執(zhí)行流程跳出當(dāng)前switch語句。C break語句可用在if語句中,它將使執(zhí)行流程跳出當(dāng)前if語句。D break語句在一層循環(huán)體中可以多次出現(xiàn)。 5.下面程序的輸出結(jié)果是。 main(B) { int x=9; for(;x>0;x--){ if(x%3==0){ printf(“%d”,--x); continue;} } } A)741 B)852 C)963 D)875421 6.以下不是死循環(huán)的程序段是。D A)int i=100;B)for(;;); while(1){ i=i%100+1;if(i>100)break; } C)int k=0;D)int s=36;do { ++k;} while(k>=0);while(s);--s; 7.下述程序段的運(yùn)行結(jié)果是 C。 用心 愛心 專心 int a=1,b=2, c=3, t;while(a A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1 8.能正確表示“當(dāng)x的取值在[1,10]和[200,210]范圍內(nèi)為真,否則為假”的表達(dá)式是。C A)(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B)(x>=1)| |(x<=10)| |(x>=200)| |(x<=210) C)(x>=1)&&(x<=10)| |(x>=200)&&(x<=210) D)(x>=1)| |(x<=10)&&(x>=200)| |(x<=210) 9.下述語句執(zhí)行后,變量k的值是。B int k=1;while(k++<10); A)10 B)11 C)9 D)無限循環(huán),值不定 10.設(shè):int a=1,b=2,c=3,d=4,m=2,n=2;執(zhí)行(m=c>b)||(n=c>d)后n的值為。C A)1 B)3 C)2 D)4 11.下面for循環(huán)語句(B)。 int i,k; for(i=0, k=-1;k=1;i++, k++) printf(“***”); A)判斷循環(huán)結(jié)束的條件非法 B)是無限循環(huán) C)只循環(huán)一次 D)一次也不循環(huán) 12.語句while(!E);括號中的表達(dá)式!E等價于 C。 A)E==0 B)E!=1 C)E!=0 D)E==1 13.下面 B 是錯誤的if語句(設(shè)int x,a,b;) A)if(a=b)x++;B)if(a= C)if(a-b)x++;D)if(x)x++; 14.執(zhí)行語句for(i=1;i++<4;);后變量i的值是 C。 A)3 B)4 C)5 D)不定 15.以下程序段。C x=-1;do { x=x*x;} while(!x); A)是死循環(huán) B)循環(huán)執(zhí)行2次 C)循環(huán)執(zhí)行1次 D)有語法錯誤 16.下面程序的功能是在輸入的一批正數(shù)中求最大者,輸入0結(jié)束循環(huán),選擇 B 填 用心 愛心 專心 空。main(){ int a,max=0; scanf(“%d”,&a); while(【 】){ if(max scanf(“%d”,&a); } printf(“%d”,max);} A)a==0 B)a C)!a==1 D)!a 17.以下不是死循環(huán)的語句是。A A)for(y=9,x=1;x>++y;x=i++)i=x; B)for(;;x++=i); C)while(1){ x++;} D)for(i=10;;i--)sum+=i; 18.下面程序段的運(yùn)行結(jié)果是。D x=y=0;while(x<4)y++,x+=++y;printf(“%d,%d”,y,x); A)20,7 B)6,12 C)20,8 D)4,6 19.以下for循環(huán)的執(zhí)行次數(shù)是 C。for(x=0,y=0;(y=123)&&(x<4);x++); A)無限循環(huán) B)循環(huán)次數(shù)不定 C)4次 D)3次 20.以下程序輸出結(jié)果是 B。main(){ int x=1,y=0,a=0,b=0; switch(x){ case 1:switch(y){ case 0 : a++;break; case 1 : b++;break; } case 2:a++;b++;break; case 3:a++;b++;} printf(“a=%d,b=%d”,a,b);} A)a=1,b=0 B)a=2,b=1 C)a=1,b=1 D)a=2,b=2 用心 愛心 專心 二.填空題(10分) 1.C語言三個基本結(jié)構(gòu)語句分別是 順序 語句,選擇 語句和 循環(huán) 語句。 2.至少執(zhí)行一次循環(huán)體的循環(huán)語句是 do while ; 3.將條件“y能被4整除但不能被100整除,或y能被400整除”寫成邏輯表達(dá)式 ___ y%4==0&&y%100!=0||y%400==0 __________ 4.計算下列分段函數(shù)的 if 語句是_ __。y= 1 x>0 y= 0 x=0 y=-1 x<0 5.程序段 for(a=1,i=-1;-1 { a++;printf(“%2d”,a);}; printf(“%2d”,i); 的運(yùn)行結(jié)果是。 三.判斷題(10分)1.在while循環(huán)中允許使用嵌套循環(huán),但只能是嵌套while循環(huán)?!緓 】 2.在實際編程中,do-while循環(huán)完全可以用for循環(huán)替換?!?x】 3.continue語句只能用于三個循環(huán)語句中。【x】 4.在不得已的情況下(例如提高程序運(yùn)行效率),才使用goto語句。【 v】 5.語句標(biāo)號與C語言標(biāo)識符的語法規(guī)定是完全一樣的?!緑】 6.for循環(huán)的三個表達(dá)式可以任意省略,while,do-while也是如此。【 x】 7.多個case可以執(zhí)行相同的程序段?!?v】 8.while的循環(huán)控制條件比do-while的循環(huán)控制條件嚴(yán)格?!?v 】 9.if語句中的表達(dá)式不限于邏輯表達(dá)式,可以是任意的數(shù)值類型?!緓 】 10.do-while循環(huán)的while后的分號可以省略。【x 】 四.程序閱讀題 1.寫出下面程序運(yùn)行的結(jié)果。main(){ int x,i; for(i=1;i<=100;i++){ 用心 愛心 專心 x=i; if(++x%2==0) if(++x%3==0) if(++x%7==0) printf(“%d ”,x); } } 28 70 2.寫出下面程序運(yùn)行的結(jié)果。 下面程序?qū)⑤斎氲拇髮懽帜父膶懗尚懽帜篙敵?,其他字符不變;請判斷下面程序的正誤,如果錯誤請改正過來。main(){ char c; c = getchar();c =(c>=’A’ && c<=’Z’)? c+32 : c; printf(“%c”,c);} 3.寫出下面程序運(yùn)行的結(jié)果。main(){ int a,b; for(a=1,b=1;a<=100;a++){ if(b>=20)break; if(b%3==1){ b+=3;continue;} b-=5; } printf(“%dn”,a);} 8 4.寫出下面程序運(yùn)行的結(jié)果。main(){ int k=1,n=263; do { k*= n%10;n/=10;} while(n); printf(“%dn”,k);} 36 5.寫出下面程序運(yùn)行的結(jié)果。main(){ int i,k=0; for(i=1;;i++) 用心 愛心 專心 { k++; while(k k++; if(k%3==0)goto loop; } } loop: printf(“%d,%dn”,i,k);} 2,3 六.編程題 1.輸入兩個正整數(shù)m和n,求其最大公約數(shù)和最小公倍數(shù)。10 2.輸入一行字符,分別統(tǒng)計出其中英文字母,空格,數(shù)字和其他字符的個數(shù)。10 3.求(即求1!+2!+3!+?+19!+20!)。5 4.任意范圍內(nèi)既能被5整除,又能被7整除的數(shù)的和5 5.提高題:打印出所有的“水仙花數(shù)”,所謂“水仙花數(shù)”是指一個3位數(shù),其各位數(shù)字立方之和等于該數(shù)本身。5 用心 愛心 專心 6 海量考試資源下載:快樂閱讀網(wǎng) 004km.cn 普通高中課程標(biāo)準(zhǔn)實驗教科書—數(shù)學(xué)第三冊[人教版] 1.2.2條件語句 教學(xué)目標(biāo):了解條件語句,進(jìn)一步體會算法的條件分支結(jié)構(gòu) 教學(xué)重點(diǎn):了解條件語句,進(jìn)一步體會算法的條件分支結(jié)構(gòu) 教學(xué)過程: 條件語句: 其一般形式為: IF(邏輯表達(dá)式)語句1;ELSE 語句2;上述結(jié)構(gòu)表示: 如果邏輯表達(dá)式的值為非0(TURE)即真, 則執(zhí)行語句1, 執(zhí)行完語句1從語句2后開始繼續(xù)向下執(zhí)行;如果表達(dá)式的值為0(FALSE)即假, 則跳過語句1而執(zhí)行語句2。注意: 1.條件執(zhí)行語句中“ELSE 語句2;”部分是選擇項, 可以缺省, 此時條件語句變成: IF(邏輯表達(dá)式) 語句1; 表示若邏輯表達(dá)式的值為非0則執(zhí)行語句1 , 否則跳過語句1繼續(xù)執(zhí)行。 2.如果語句1或語句2有多于一條語句要執(zhí)行時, 必須使用“{”和“}” 把這些語句包括在其中,此時條件語句形式為: IF(邏輯表達(dá)式) { 語句體1;} ELSE { 語句體2;} 這里語句體指多個語句,每個語句都必須以“;”結(jié)尾。 3.條件語句可以嵌套, 這種情況經(jīng)常碰到, 但條件嵌套語句容易出錯, 其原因主要是不知道 哪個IF對應(yīng)哪個ELSE。 例如: IF(x>20 OR x<-10)IF(y<=100 AND y>x)A=“Good”; 海量考試資源下載:快樂閱讀網(wǎng) 004km.cn 海量考試資源下載:快樂閱讀網(wǎng) 004km.cn ELSE B=“Bad”; 對于上述情況, 規(guī)定: ELSE語句與最近的一個IF語句匹配, 上例 中的ELSE與IF(y<=100 AND y>x)相匹配。為了使ELSE與IF(x>20 OR x<-10)相匹配, 必須用花括號。如下所示: IF(x>20 OR x<-10){ IF(y<=100 AND y>x) A=“Good”;} ELSE B=“Bad”;4.可用階梯式IF-ELSE-IF結(jié)構(gòu)。 階梯式結(jié)構(gòu)的一般形式為: IF(邏輯表達(dá)式1)語句1; ELSE IF(邏輯表達(dá)式2)語句2; ELSE IF(邏輯表達(dá)式3)語句3; 課堂練習(xí):第27頁,練習(xí)A,練習(xí)B 小結(jié):本節(jié)介紹條件語句及其簡單應(yīng)用 課后作業(yè):第31頁,習(xí)題1-2A第4題(機(jī)上作業(yè)) 海量考試資源下載:快樂閱讀網(wǎng) 004km.cn第二篇:高中數(shù)學(xué) 1.3進(jìn)位制教案 新人教B版必修3
第三篇:高中數(shù)學(xué) 循環(huán)語句1精品教案 新人教A版必修3
第四篇:高中數(shù)學(xué)《循環(huán)語句》同步練習(xí)1 新人教B版必修3
第五篇:新課標(biāo)人教B高中數(shù)學(xué)必修3教案1.2.2條件語句