C語言程序設(shè)計(jì)大綱_第1頁
C語言程序設(shè)計(jì)大綱_第2頁
C語言程序設(shè)計(jì)大綱_第3頁
C語言程序設(shè)計(jì)大綱_第4頁
C語言程序設(shè)計(jì)大綱_第5頁
已閱讀5頁,還剩76頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《C語言程序設(shè)計(jì)》教學(xué)大綱課時(shí):84課時(shí)課程簡(jiǎn)介課程簡(jiǎn)介:學(xué)習(xí)C語言的意義和價(jià)值C語言是專業(yè)基礎(chǔ)的最后一門課,是各個(gè)專業(yè)學(xué)院學(xué)習(xí)語言前的第一門基礎(chǔ)課。C語言曾開發(fā)出UNIX操作系統(tǒng)等經(jīng)典復(fù)雜系統(tǒng)。隨著物聯(lián)網(wǎng)、智能終端等技術(shù)發(fā)展,也用于開發(fā)更多應(yīng)用程序,還具硬件底層執(zhí)行能力,且易于使用,因此能持久豐富和發(fā)展,成為學(xué)習(xí)掌握各種編程技術(shù)的重要基礎(chǔ)。C語言具有相通性與其他語言相比語法結(jié)構(gòu)簡(jiǎn)單,容易上手是學(xué)習(xí)掌握其他編程技術(shù)的重要基礎(chǔ)。在實(shí)際項(xiàng)目開發(fā)中往往需要多種語言的相互配合,當(dāng)需要提高執(zhí)行效率時(shí)或直接操控硬件時(shí),必須使用C語言開發(fā)。課程特色:C語言是現(xiàn)代編程的基礎(chǔ)。ANSI標(biāo)準(zhǔn)定義的命令關(guān)鍵字只有32個(gè),運(yùn)算符34個(gè),程序控制語句也只有9種,這些在學(xué)習(xí)中都不難理解,也比較易于掌握。但對(duì)初學(xué)者來說,每當(dāng)遇到編程分析以解決實(shí)際問題時(shí),就會(huì)給不少學(xué)生感覺總體上“難”掌握。學(xué)習(xí)C語言程序設(shè)計(jì),要越過心理“難點(diǎn)”這道坎兒,運(yùn)用計(jì)算思維方法養(yǎng)成習(xí)慣是關(guān)鍵:使學(xué)生有面向過程的編程思想、面向過程和面向?qū)ο蟮牟町?;解決初學(xué)語言時(shí)養(yǎng)成良好的編程習(xí)慣,如代碼規(guī)范、注釋規(guī)范、流程圖規(guī)范等;使學(xué)生具備良好的編程思路:實(shí)際問題—程序算法分析(借助工具)—轉(zhuǎn)換代碼通過案例分析和引導(dǎo),勤動(dòng)手多實(shí)踐,訓(xùn)練掌握如何自如地表達(dá)實(shí)際問題求解過程與程序算法,才能有效編寫組織程序,實(shí)現(xiàn)相關(guān)運(yùn)算邏輯的計(jì)算結(jié)果。計(jì)算機(jī)程序設(shè)計(jì)中,掌握知識(shí)要點(diǎn)的計(jì)算思維方法是核心,通過實(shí)驗(yàn)驗(yàn)證則是有效掌握程序算法實(shí)現(xiàn)的關(guān)鍵。知識(shí)目標(biāo)掌握C語言程序設(shè)計(jì)基本語法結(jié)構(gòu)和規(guī)范.掌握C語言程序設(shè)計(jì)各種數(shù)據(jù)存儲(chǔ)類型,變量的使用及相關(guān)運(yùn)算.掌握程序設(shè)計(jì)的三種基本結(jié)構(gòu):順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu).掌握計(jì)算機(jī)程序設(shè)計(jì)算法與實(shí)現(xiàn)算法實(shí)現(xiàn)工具VISO使用在VISO中實(shí)現(xiàn)用例圖、流程圖了解面向過程編程思想,面向過程與面向?qū)ο蟮木幊趟枷氲牟町愓莆諗?shù)組的定義與使用掌握函數(shù)定義與使用能力目標(biāo):速度目標(biāo):用120分鐘完成項(xiàng)目—學(xué)生成績管理輸入全部學(xué)生的成績輸出全部學(xué)生的成績求和求平均值最高分最低分計(jì)算成材率速度目標(biāo):用120分鐘完成項(xiàng)目—員工薪資管理輸入全部員工的薪資輸出全部員工的薪資求所有員工的總薪資求所有員工的平均薪資查找最高薪資查找最低薪資速度目標(biāo):用3小時(shí)完成項(xiàng)目—ATM查詢余額取款轉(zhuǎn)賬存款退出思路目標(biāo):使學(xué)生具備良好的編程思路:實(shí)際問題—程序算法分析(借助工具)—轉(zhuǎn)換代碼利用計(jì)算機(jī)思維去分析問題、解決問題,并利用工具輔助落地課程教學(xué)和學(xué)習(xí)設(shè)計(jì)教學(xué)特色:優(yōu)化提煉了所有內(nèi)容的知識(shí)點(diǎn),通過案例應(yīng)用來解析相關(guān)的知識(shí)要點(diǎn)和程序算法實(shí)現(xiàn)方法,以及相關(guān)的語義語法基本規(guī)范等。本課程學(xué)習(xí)規(guī)劃:預(yù)習(xí):每個(gè)單元均有各知識(shí)要點(diǎn)的授課微視頻,案例分析微視頻、編程實(shí)驗(yàn)微視頻、習(xí)題分析微視頻。以上資料均放在校園網(wǎng)上,學(xué)生在晚自習(xí)時(shí)以小組為單位,積極參加討論和預(yù)習(xí),讓學(xué)生學(xué)會(huì)線上線下等多種形式學(xué)習(xí)模式。學(xué)習(xí):每單元均有對(duì)問題的小節(jié)討論、知識(shí)要點(diǎn)綜述和核心知識(shí)原理講解、相關(guān)練習(xí)課堂先設(shè)置預(yù)習(xí)過程中問題討論各種主題討論,授課中以解決學(xué)生預(yù)習(xí)中實(shí)際遇到的問題為核心復(fù)習(xí):檢測(cè):每單元都有單元測(cè)試,或自測(cè)練習(xí)及習(xí)題分析解答,以強(qiáng)化知識(shí)要點(diǎn)基礎(chǔ)訓(xùn)練與計(jì)算思維技術(shù)參考資料《C語言從入門到精通》,王娣著,清華大學(xué)出版社;課程目錄第一單元C語言的概述 (計(jì)算機(jī)語言的作用) 5第二單元:基本數(shù)據(jù)類型、常量及變量 7第三單元:運(yùn)算符、表達(dá)式 9第四單元:算法和流程圖 13第五單元:順序結(jié)構(gòu)程序設(shè)計(jì) 15第六單元:選擇結(jié)構(gòu)程序設(shè)計(jì)(if結(jié)構(gòu)語句) 18第七單元:選擇結(jié)構(gòu)程序設(shè)計(jì)(switch開關(guān)語句) 27第八單元:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(while循環(huán)) 33第九單元:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(do…while循環(huán)) 37第十單元:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(for循環(huán)) 41第十一單元:跳轉(zhuǎn)語句與循環(huán)嵌套 43第十二單元:一維數(shù)組和一維數(shù)組的基本操作 49第十三單元:一維數(shù)組應(yīng)用 51第十四單元:字符數(shù)組 54第十五單元:變量的作用域與無參函數(shù) 59第十六單元:有參函數(shù) 60第十七單元:函數(shù)(有返回值) 62第十八單元技能綜合項(xiàng)目案例--學(xué)生成績單管理 64第十九單元技能綜合項(xiàng)目案例--工資管理系統(tǒng) 69第二十單元技能綜合項(xiàng)目案例—atm機(jī) 73課程具體單元第一單元C語言的概述 (計(jì)算機(jī)語言的作用)【單元知識(shí)點(diǎn)】掌握C程序設(shè)計(jì)編程基本結(jié)構(gòu)。案例:練習(xí)小案例C編程基本結(jié)構(gòu)計(jì)算機(jī)語言的發(fā)展過程 程序設(shè)計(jì)概述程序設(shè)計(jì)發(fā)展過程面向過程和面向?qū)ο髮?duì)比輸出helloworldC語言格式C語言規(guī)范注釋規(guī)范輸出界面(案例練習(xí))【考核要求】掌握C程序設(shè)計(jì)編程基本結(jié)構(gòu)動(dòng)手練一練小案例掌握C語言的基本構(gòu)成:函數(shù).(有且只有一個(gè)main函數(shù))函數(shù)的基本結(jié)構(gòu):函數(shù)名和函數(shù)體.例如:main就是函數(shù)名,又稱主函數(shù)或主調(diào)函數(shù)函數(shù)體{}括起來的部分。主要包括兩大部分:數(shù)據(jù)變量定義說明部分和程序算法運(yùn)算操作執(zhí)行部分.掌握計(jì)算機(jī)語言發(fā)展過程:程序設(shè)計(jì)概述:程序設(shè)計(jì)語言的發(fā)展過程面向過程(如:C語言)機(jī)器語言-匯編語言-高級(jí)語言面向?qū)ο螅ㄈ纾簀ava、php、C#,python)掌握面向過程概念:就是分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一步一步實(shí)現(xiàn),使用的時(shí)候一個(gè)一個(gè)依次調(diào)用就可以了。掌握面向?qū)ο蟾拍睿壕褪欠治龀鼋鉀Q問題所需要的角色(對(duì)象),以及角色(對(duì)象)所包含的職責(zé),它不在專注于實(shí)現(xiàn)的步驟和順序,而更加關(guān)注程序分工的合理性。掌握C語言:輸出HelloworldC語言的語法規(guī)范1:{和}自成一行縮進(jìn)原則(敲回車自動(dòng)縮進(jìn))注釋函數(shù)解決什么問題掌握C語言注釋:注釋原則1.1:注釋方便了代碼的閱讀和維護(hù)。1.2:邊寫代碼邊注釋,1.3:修改代碼時(shí)要相應(yīng)修改注釋,1.4:保證注釋和代碼的一致性。1.5:注釋要簡(jiǎn)潔明確,不要出現(xiàn)形容詞2)注釋形式2.1:?jiǎn)涡凶⑨專?/注釋內(nèi)容2.2:多行注釋:/*注釋內(nèi)容*/掌握輸出界面#include"stdio.h"voidmain()//主函數(shù)輸出程序界面{ printf("\n\n\n\t\t=====學(xué)生成績單管理=====\n"); printf("\t\t1:輸入全部員工的薪資\n"); printf("\t\t2:輸出全部員工的薪資\n"); printf("\t\t3:求和\n"); printf("\t\t4:求平均值\n"); printf("\t\t5:最高分\n"); printf("\t\t6:最低分\n"); printf("\t\t7:排序\n"); printf("\t\t8:計(jì)算成材率\n"); printf("\t\t0:退出\n");}第二單元:基本數(shù)據(jù)類型、常量及變量(4課時(shí))【單元知識(shí)點(diǎn)】基本數(shù)據(jù)類型基本數(shù)據(jù)類型的概念基本數(shù)據(jù)類型的分類常量與變量常量及其分類變量及其分類變量定義格式變量賦初值【考核要求】掌握數(shù)據(jù)類型的概念:數(shù)據(jù)類型就是數(shù)據(jù)的組織形式。掌握基本數(shù)據(jù)類型的分類:整型:即為整數(shù)例如100,-23浮點(diǎn)型(實(shí)型):即為小數(shù)例如3.14,98.67字符型:用單引號(hào)括起一個(gè)字符。例如‘a(chǎn)’掌握常量及其分類常量的概念:在程序執(zhí)行過程中,其值不可發(fā)生改變的量稱為常量。常量分類:整型常量:即整常數(shù)。例如:100浮點(diǎn)型常量:即小數(shù)。例如:2.34字符常量:用單引號(hào)括起來的一個(gè)字符,字符串常量:用雙引號(hào)引起一個(gè)或多個(gè)字符.例如:”中華”,”hello”,”a”注意:字符串不屬于基本數(shù)據(jù)類型說明:(字符常量中含有特殊形式的轉(zhuǎn)義字符如下)轉(zhuǎn)義字符:將”\”后面的字符轉(zhuǎn)換成另外的意義。轉(zhuǎn)義字符轉(zhuǎn)義字符的意義 \n回車換行 \t橫向跳到下一制表位置掌握變量及其分類變量的概念:程序運(yùn)行中,其值可以改變的量稱為變量變量的分類:整型變量:int(在內(nèi)存中占4個(gè)字節(jié))例如intnum;浮點(diǎn)型變量:float(在內(nèi)存中占用4個(gè)字節(jié))例如floatscore;字符變量:char(在內(nèi)存中占用1個(gè)字節(jié))例如charsex;掌握變量的定義格式類型說明符變量名,變量名…….;定義整型變量inti;inti,j;定義浮點(diǎn)型變量floats;floatscore1,score2;定義字符型變量charsex;掌握標(biāo)識(shí)符的概念:用來標(biāo)識(shí)變量名等的有效字符序列。掌握標(biāo)識(shí)符的命名規(guī)則:由字母、數(shù)字和下劃線組成第一個(gè)字符必須是字母或下劃線不能使用關(guān)鍵字區(qū)別大小寫見名識(shí)義了解c語言常用關(guān)鍵字(c語言關(guān)鍵字32個(gè)常用的如下圖)關(guān)鍵字(keyword):又稱保留字,是整個(gè)語言范圍內(nèi)預(yù)先保留的標(biāo)識(shí)符。do做double雙精度else否則break中斷case分支float浮點(diǎn)型for為char字符型if如果int整型continue繼續(xù)switch開關(guān)return返回default默認(rèn)void空while當(dāng)掌握變量賦初值(又稱為變量的初始化)類型說明符變量1=值1,變量2=值2,……;inti=100;//定義整型變量命名為i,并賦初值100inti=10,j=20;inti,j=20;inti,j; i=j=20;inti=j=20; (這種格式是錯(cuò)誤的)案例練習(xí)超市購物價(jià)格為19元購買商品17個(gè),請(qǐng)編程計(jì)算需支付多少元錢?解決思路:(1)分析問題:要用什么類型的變量表示現(xiàn)有的數(shù)據(jù)(2)如何設(shè)計(jì)計(jì)算過程.(3)編寫代碼(4)代碼規(guī)范:注釋的添加第三單元:運(yùn)算符、表達(dá)式(4課時(shí))【單元知識(shí)點(diǎn)】算術(shù)運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符包括+,-,*,/,%,++,--算術(shù)表達(dá)式賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符包括=,+=,-=,*=,/=,%=賦值表達(dá)式關(guān)系運(yùn)算符和關(guān)系表達(dá)式關(guān)系運(yùn)算符包括<,>,<=,>=,==,!=關(guān)系表達(dá)式邏輯運(yùn)算符與邏輯表達(dá)式邏輯運(yùn)算符包括&&,||,!邏輯表達(dá)式條件運(yùn)算符與條件表達(dá)式條件運(yùn)算符包括?:(課本pag119-120)條件表達(dá)式運(yùn)算符優(yōu)先級(jí)【考核要求】了解表達(dá)式概念:由常量、變量以及運(yùn)算符號(hào)組合起來的式子稱為表達(dá)式 例如1+2,3>4,1>3||4<5,a>b?a:b掌握算術(shù)運(yùn)算符包含的種類:+[加]-[減]*[乘]/[除]%[求余]++[自增]--[自減]共7種案例1:求兩個(gè)整數(shù)的和、差、積、商、余數(shù)案例解決的思路:分析使用的數(shù)據(jù)變量。求解過程輸出結(jié)果代碼規(guī)范:必須注釋該函數(shù)所完成的功能.函數(shù)體內(nèi)的代碼的注釋應(yīng)包含定義,計(jì)算,輸出三大部分#include"stdio.h"voidmain()//求兩個(gè)整數(shù)的和,差,積,商以及余數(shù)自增和自減{ //定義變量并賦值 intnum1=9,num2=4,result; //求和并輸出result=num1+num2; printf("和為:%d\n",result); //求差并輸出 result=num1-num2; printf("差為:%d\n",result); //求積并輸出 result=num1*num2; printf("積為:%d\n",result); //求商并輸出 result=num1/num2; printf("商為:%d\n",result); //求余數(shù)并輸出 result=num1%num2; printf("余數(shù)為:%d\n",result); //num1自增輸出,num2自減輸出 num1++; num2--; printf("num1=%d,num2=%d\n",num1,num2);}掌握關(guān)系運(yùn)算符包含的種類:>[大于]<[小于]>=[大于等于]<=[小于等于]==[等于]!=[不等于]共6種掌握關(guān)系表達(dá)式的一般形式為:表達(dá)式關(guān)系運(yùn)算符表達(dá)式例如:a+b>c-dx>3/2掌握關(guān)系表達(dá)式的值是真”和“假”,用“1”和“0”表示關(guān)系成立表達(dá)式的值為1,關(guān)系不成立表達(dá)式的值為0掌握邏輯運(yùn)算符包括的種類:&&[邏輯與],||[邏輯或]![邏輯非]三種掌握邏輯表達(dá)式的一般形式為:表達(dá)式邏輯運(yùn)算符表達(dá)式掌握邏輯運(yùn)算符的值規(guī)則如下:邏輯與&&:參與運(yùn)算的兩個(gè)量都為真時(shí),結(jié)果才為真,否則為假。 例如:5>0&&4>2 由于5>0為真,4>2也為真,相與的結(jié)果也為真。邏輯或||:參與運(yùn)算的兩個(gè)量只要有一個(gè)為真,結(jié)果就為真。兩個(gè)量都 為假時(shí),結(jié)果為假。 例如:5>0||5>8 由于5>0為真,相或的結(jié)果也就為真。邏輯非!:參與運(yùn)算量為真時(shí),結(jié)果為假;參與運(yùn)算量為假時(shí),結(jié)果為真。 例如:!(5>0)的結(jié)果為假。了解賦值運(yùn)算符包括的種類:分為賦值(=,+=,-=,*=,/=,%=)例如:了解條件運(yùn)算符包含的種類:?:共1種掌握條件運(yùn)算符組成條件表達(dá)式的一般形式為: 表達(dá)式1?表達(dá)式2:表達(dá)式3掌握使用條件表達(dá)式實(shí)現(xiàn)輸出兩個(gè)數(shù)中的大數(shù)案例2:求兩個(gè)數(shù)的最大值。案例解決的思路:分析使用的數(shù)據(jù)變量。求解過程輸出結(jié)果代碼規(guī)范:必須注釋該函數(shù)所完成的功能.函數(shù)體內(nèi)的代碼的注釋應(yīng)包含定義,計(jì)算,輸出三大部分以一個(gè)分號(hào)結(jié)束的語句,單獨(dú)占一行#include"stdio.h"voidmain()//求兩個(gè)數(shù)的最大值{//定義相關(guān)的變量并賦值intn1,n2,max;n1=45;n2=89;//求解最大值max=n1>n2?n1:n2;//輸出最大值printf("最大值為max=%d\n",max);}了解五大運(yùn)算符的優(yōu)先級(jí) “ ! ”優(yōu)先級(jí)最高第四單元:算法和流程圖(4課時(shí))【單元知識(shí)點(diǎn)】什么是UML?算法的概念算法的表示形式自然語言表示法流程圖表示法結(jié)構(gòu)化程序設(shè)計(jì)的基本結(jié)構(gòu);程序設(shè)計(jì)三大結(jié)構(gòu)順序結(jié)構(gòu)的執(zhí)行過程visio工具的使用用visio工具畫流程圖【考核要求】了解什么是UML?統(tǒng)一建模語言或標(biāo)準(zhǔn)建模語言。是一個(gè)支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言了解流程圖:算法的圖形表示形式.掌握算法的概念:解決問題的方法和步驟掌握常用流程圖符號(hào):掌握用visio繪制簡(jiǎn)單的流程圖(如右圖)5.1流程圖規(guī)范要求:各種框必須應(yīng)用正確箭頭方向正確文字表述正確解決問題步驟先后順序正確掌握順序結(jié)構(gòu)概念:按照書寫的順序依次執(zhí)行,不允許跨越任何一條語句掌握選擇結(jié)構(gòu)概念:根據(jù)條件判斷是否成立,執(zhí)行不同的語句段。掌握循環(huán)結(jié)構(gòu)概念:用來描述能夠重復(fù)執(zhí)行的程序掌握程序設(shè)計(jì)三大結(jié)構(gòu)分類:順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)使用visio繪制流程圖:案例一:輸入三科成績,求三門成績的平均值.案例解決的思路:分析使用的數(shù)據(jù)變量。求解過程輸出結(jié)果畫出規(guī)范流程圖寫出規(guī)范代碼案例二:輸入一個(gè)整數(shù),判斷它的奇偶性.案例解決的思路:分析使用的數(shù)據(jù)變量。求解過程輸出結(jié)果畫出規(guī)范流程圖寫出規(guī)范代碼第五單元:順序結(jié)構(gòu)程序設(shè)計(jì)(4課時(shí))【單元知識(shí)點(diǎn)】順序結(jié)構(gòu)的概念順序結(jié)構(gòu)流程圖的一般形式順序結(jié)構(gòu)的主要組成語句賦值語句輸出語句printf()函數(shù)的使用常用格式控制符的使用輸入語句scanf()函數(shù)的使用常用格式控制符的使用順序結(jié)構(gòu)的應(yīng)用【考核要求】掌握順序結(jié)構(gòu)概念:按照書寫的順序依次執(zhí)行,不允許跨越任何一條語句順序結(jié)構(gòu)的流程圖:掌握賦值語句:賦值表達(dá)式后加分號(hào)形成語句例如:a=2;掌握什么是printf():實(shí)現(xiàn)輸出功能的函數(shù)。掌握printf()函數(shù)的使用printf函數(shù)調(diào)用的一般形式為: printf(“格式控制字符串”,輸出表列);其中格式控制字符串用于指定輸出格式。%d:以十進(jìn)制整型形式輸出%f:以浮點(diǎn)型形式輸出%c:輸入輸出單個(gè)字符非格式字符串在輸出時(shí)原樣輸出,在顯示中起提示作用。掌握scanf():實(shí)現(xiàn)輸入功能的函數(shù)。掌握scanf()函數(shù)的使用scanf函數(shù)的一般形式為:scanf(“格式控制字符串”,地址表列)其中格式控制字符串用于指定輸入格式。%d:以十進(jìn)制整型形式輸入%f:以浮點(diǎn)型形式輸入%c:輸入單個(gè)字符地址表列中給出各變量的地址。地址是由地址運(yùn)算符“&”后跟變量名組成的。例如:&a,&b分別表示變量a和變量b的地址。實(shí)例:scanf("%d%d%d",&a,&b,&c);練習(xí)案例一:輸入一個(gè)整數(shù)并輸出案例解決的思路:分析使用的數(shù)據(jù)變量。求解過程輸出結(jié)果畫出規(guī)范流程圖寫出規(guī)范代碼#include"stdio.h"voidmain()//輸入一個(gè)整型數(shù)并輸出{ intn;//定義一個(gè)整型變量 //輸入 printf("請(qǐng)輸入一個(gè)數(shù)值"); scanf("%d",&n); //輸出printf("%d",n);}練習(xí)案例二:輸入一個(gè)浮點(diǎn)數(shù)并輸出案例解決的思路:分析使用的數(shù)據(jù)變量。求解過程輸出結(jié)果畫出規(guī)范流程圖寫出規(guī)范代碼#include"stdio.h"voidmain()//輸入一個(gè)浮點(diǎn)型數(shù)并輸出{ floatn;//定義一個(gè)浮點(diǎn)型變量 //輸入 printf("請(qǐng)輸入一個(gè)數(shù)值"); scanf("%f",&n); //輸出printf("%f",n);}練習(xí)案例三:輸入一個(gè)字符并輸出案例解決的思路:分析使用的數(shù)據(jù)變量。求解過程輸出結(jié)果畫出規(guī)范流程圖寫出規(guī)范代碼#include"stdio.h"voidmain()//輸入一個(gè)字符并輸出{ charch;//定義一個(gè)字符型變量 //輸入 printf("請(qǐng)輸入一個(gè)字符"); scanf("%c",&ch); //輸出printf("%c",ch);}掌握輸入一個(gè)三位數(shù),將個(gè),十,百位上的數(shù)字分別輸出自然語言描述:定義一個(gè)整型變量n用來存儲(chǔ)要輸入的數(shù)定義通過n值獲取到的個(gè)位g、十位s、以及百位b利用printf()函數(shù)提示用戶輸入一個(gè)數(shù)n利用scanf()函數(shù)為n賦值利用n的值,計(jì)算得到g,s,b的值 g=n%10;s=n/10%10;b=n/100;輸出g、s、b的值流程圖:(如右圖)代碼:#include"stdio.h"voidmain()//求任意三位數(shù)各位上的數(shù){//定義變量intn,g,s,b;//從鍵盤上接收輸入的值,存入n變量中。printf("請(qǐng)輸入一個(gè)三位數(shù)的整數(shù):\n");scanf("%d",&n);g=n%10;//計(jì)算n個(gè)位上的數(shù)字s=n/10%10;//計(jì)算n十位上的數(shù)字b=n/100;//計(jì)算n百位上的數(shù)字printf("g=%d,s=%d,b=%d\n",g,s,b);}掌握輸入長方形的長和寬,求周長和面積自然語言描述:定義2個(gè)整型變量a和b用來存儲(chǔ)長方形的長和寬定義2個(gè)整型變量l和s,用來存儲(chǔ)通過計(jì)算獲取到 的周長和面積利用printf()函數(shù)提示用戶輸入a和b的值利用scanf()函數(shù)為a和b賦值計(jì)算面積和周長的值 s=a*b; l=(a+b)*2;輸出s和l的值流程圖:代碼#include"stdio.h"voidmain()//求長方形周長與面積{//定義變量 inta,b,l,s;//輸入長與寬 printf("請(qǐng)輸入長與寬"); scanf("%d%d",&a,&b); l=(a+b)*2;//計(jì)算周長 s=a*b;//計(jì)算面積//輸出結(jié)果 printf("長方形的周長l=%d\n",l); printf("長方形的面積s=%d\n",s);}第六單元:選擇結(jié)構(gòu)程序設(shè)計(jì)(if結(jié)構(gòu)語句)(4課時(shí))【單元知識(shí)點(diǎn)】if語句if語句的一般格式語句的規(guī)范if語句的流程圖if語句的應(yīng)用if-else語句if..else語句的一般格式if..else語句的流程圖if…else語句的應(yīng)用if-else-if語句if-else-if語句的一般格式if-else-if語句的流程圖if-else-if語句的應(yīng)用【考核要求】if結(jié)構(gòu)靈活應(yīng)用if語句基本語法和規(guī)范:if(表達(dá)式){語句1;………語句n;}if的流程圖:掌握代碼規(guī)范化一個(gè)結(jié)構(gòu)語句一條注釋,在結(jié)構(gòu)的上方添加{和}自成一行自動(dòng)縮進(jìn)(tab鍵)掌握使用if語句比較兩個(gè)數(shù)的大小自然語言描述:定義兩個(gè)整型變量n1和n2,用來存儲(chǔ)輸入的兩個(gè)數(shù)定義一個(gè)整型變量max,用來存儲(chǔ)得到的最大值利用printf()函數(shù)提示用戶輸入2個(gè)數(shù)利用scanf()函數(shù)為n1和n2賦值假設(shè)n1是最大的,max=n1;利用if語句判斷:如果max<n2,就把max=n2根據(jù)判斷輸出max的值流程圖:代碼:#include"stdio.h"voidmain(){ //定義相關(guān)的變量intn1,n2,max;//輸入任意兩個(gè)整數(shù)printf("請(qǐng)輸入兩個(gè)整數(shù):\n");scanf("%d%d",&n1,&n2);//求解最大值max=n1;if(max<n2){max=n2; }//輸出最大值printf("最大值為max=%d\n",max);}ifelse結(jié)構(gòu)靈活應(yīng)用if-else語句基本語法和規(guī)范if(表達(dá)式){語句1;}else{語句2;}結(jié)構(gòu)規(guī)范:else單成一行if…else結(jié)構(gòu)的流程圖:掌握使用if-else語句判斷成績是否及格自然語言描述:定義1個(gè)整型變量score,用來存儲(chǔ)輸入的成績利用printf()函數(shù)提示用戶輸入1個(gè)成績利用scanf()函數(shù)為score賦值采用if….else…進(jìn)行判斷,如score>=60輸出”及格”,否則輸出”不及格”根據(jù)判斷結(jié)果輸出流程圖:代碼:#include"stdio.h"voidmain(){ //定義一個(gè)代表成績的變量intscore;//輸入成績單printf("輸入成績:\n");scanf("%d",&score);//判斷成績是否大于等于60,輸出對(duì)應(yīng)的結(jié)果if(score>=60){printf("及格\n"); }else{printf("不及格\n"); }}掌握使用if-else語句輸入一個(gè)數(shù),判斷是否是偶數(shù)自然語言描述:定義1個(gè)整型變量n,用來存儲(chǔ)輸入的數(shù)利用printf()函數(shù)提示用戶輸入1個(gè)數(shù)利用scanf()函數(shù)為n賦值采用if….else…進(jìn)行判斷,if(n%2==0)輸出”偶數(shù)”,否則輸出”不是偶數(shù)”根據(jù)判斷結(jié)果輸出流程圖:代碼:#include"stdio.h"voidmain(){ //定義相關(guān)的變量intn;//輸入任意一個(gè)整數(shù)printf("輸入一個(gè)整數(shù):\n");scanf("%d",&n);//判斷是否為偶數(shù)if(n%2==0){printf("是偶數(shù)\n"); }else{printf("不是偶數(shù)\n"); }}if-elseif結(jié)構(gòu)掌握if-else-if語句基本語法和規(guī)范if(表達(dá)式1){語句1;}elseif(表達(dá)式2){語句2;}elseif(表達(dá)式3){語句3;}…elseif(表達(dá)式m){語句m;}else{語句n;}語法規(guī)范:else和后面的緊跟的if在一行掌握if-else-if語句程序執(zhí)行if-else-if語句的執(zhí)行過程如圖所示(圖只是用于了解語句的執(zhí)行過程)流程圖:使用if-else-if語句實(shí)現(xiàn)輸入分?jǐn)?shù),判斷成績等級(jí)自然語言描述:定義一個(gè)浮點(diǎn)型變量score提示用戶輸入一個(gè)分?jǐn)?shù)輸入分?jǐn)?shù)的值使用變量進(jìn)行判斷,if(score>=90&&score<=100)則顯示'優(yōu)'.如果④中的條件不成立繼續(xù)判斷,if(score>='80&&score<90)則顯示'良'如果⑤中的條件不成立繼續(xù)判斷,if(score>='70'&&score<80)則顯示'中'如果⑥中的條件不成立繼續(xù)判斷,if(score>=60&&score<70)則顯示'合格'如果⑦中的條件不成立繼續(xù)判斷,if(score<60&&score>=0)則顯示’不合格’如果⑧中的條件不成立則說明輸入的數(shù)值有誤。流程圖:#include"stdio.h"voidmain(){ //定義成績變量intscore;//輸入成績的值scanf("%d",&score);//判斷成績的范圍,輸出對(duì)應(yīng)的等級(jí)if(score>=90&&score<=100){printf("優(yōu)\n"); }elseif(score>=80&&score<90) { printf("良\n"); } elseif(score>=70&&score<80) { printf("中\(zhòng)n"); } elseif(score>=60&&score<70) { printf("及格\n"); } elseif(score>=0&&score<60) { printf("不及格\n"); } else { printf("錯(cuò)誤\n"); }}代碼:第七單元:選擇結(jié)構(gòu)程序設(shè)計(jì)(switch開關(guān)語句)(4課時(shí))【單元知識(shí)點(diǎn)】switch語句的一般形式使用switch語句的注意事項(xiàng)break語句在switch中的使用switch語句的程序執(zhí)行switch語句使用舉例【考核要求】掌握switch語句的基本語法(規(guī)范)switch(表達(dá)式){case常量表達(dá)式1:語句1;case常量表達(dá)式2:語句2;…case常量表達(dá)式n:語句n;default:語句n+1;}掌握switch表達(dá)式的類型switch后面括號(hào)內(nèi)的表達(dá)式,其值可以是整型、字符型。掌握代碼規(guī)范化一個(gè)結(jié)構(gòu)語句一條注釋,在結(jié)構(gòu)的上方添加{和}自成一行case自動(dòng)縮進(jìn)(tab鍵)case后的語句緊隨冒號(hào)之后,統(tǒng)一對(duì)齊掌握使用switch語句的注意事項(xiàng). 在使用switch語句時(shí)還應(yīng)注意以下幾點(diǎn):在case后的各常量表達(dá)式的值不能相同,否則會(huì)出現(xiàn)錯(cuò)誤。在case后,允許有多個(gè)語句,可以不用{}括起來。各case和default的先后順序可以變動(dòng)default可以省略不用。多個(gè)case可以通用一組執(zhí)行語句掌握switch語句沒有break順序執(zhí)行的特點(diǎn)(代碼對(duì)比)沒有break語句情況(參考右圖)#include"stdio.h"http://點(diǎn)餐系統(tǒng)voidmain(){//定義整型變量表示菜單編號(hào) intnum; printf("1.鍋包肉30元\t2.魚香肉絲18元\t3.魚香茄餅24元\t4.宮保雞丁24元\n"); printf("請(qǐng)輸入你選擇的菜的編號(hào):"); //輸入變量的值 scanf("%d",&num); //根據(jù)條件進(jìn)行判斷并輸出相應(yīng)結(jié)果 switch(num) { case1:printf("鍋包肉一份30元\n"); case2:printf("魚香肉絲一份18元\n"); case3:printf("魚香茄餅一份24元\n");case4:printf("宮保雞丁一份22元\n"); }}(二)有break語句情況(參考下圖)#include"stdio.h"http://點(diǎn)餐系統(tǒng)voidmain(){//定義整型變量表示菜單編號(hào) intnum;//輸出界面printf(“\t菜單\n”); printf("\t1.鍋包肉30元\n”);printf(“\t2.魚香肉絲18元\n”);printf(“\t3.魚香茄餅24元\n”);printf(“\t4.宮保雞丁24元\n"); printf("請(qǐng)輸入你選擇的菜的編號(hào):"); //輸入變量的值 scanf("%d",&num); //根據(jù)條件進(jìn)行判斷并輸出相應(yīng)結(jié)果 switch(num) { case1:printf("鍋包肉一份30元\n");break; case2:printf("魚香肉絲一份18元\n");break; case3:printf("魚香茄餅一份24元\n");break;case4:printf("宮保雞丁一份22元\n");break; }}掌握使用switch語句判斷輸入的數(shù)字是星期幾(0-6分別對(duì)應(yīng)星期日-星期六)自然語言描述定義一個(gè)整型變量day提示用戶輸入變量的值輸入變量值使用變量的值與列出的case表達(dá)式的值進(jìn)行比較,當(dāng)表達(dá)式的值滿足其值是0則顯示'星期日',結(jié)束條件判斷其值是1則顯示'星期一',結(jié)束條件判斷其值是2則顯示'星期二',結(jié)束條件判斷其值是3則顯示'星期三',結(jié)束條件判斷其值是4則顯示'星期四',結(jié)束條件判斷其值是5則顯示'星期五',結(jié)束條件判斷其值是6則顯示'星期六',結(jié)束條件判斷如變量的值與所有case后的值均不相同時(shí),則執(zhí)行default后的語句,提示用戶輸入有誤流程圖:代碼:#include"stdio.h"http://判斷星期voidmain(){ //定義變量intday;//輸入星期printf("請(qǐng)輸入一個(gè)整型值:\n");scanf("%d",&day);//判斷輸出結(jié)果switch(day){case0:printf("星期日\n");break;case1:printf("星期一\n");break;case2:printf("星期二\n");break;case3:printf("星期三\n");break;case4:printf("星期四\n");break;case5:printf("星期五\n");break;case6:printf("星期六\n");break; default:printf("輸入有誤\n");break;}}掌握使用switch語句實(shí)現(xiàn)計(jì)算器程序。用戶輸入運(yùn)算數(shù)和四則運(yùn)算符,輸出計(jì)算結(jié)果自然語言描述:定義二個(gè)整型變量n1,n2存儲(chǔ)運(yùn)算數(shù)及一個(gè)字符型變量c存儲(chǔ)運(yùn)算符號(hào)提示用戶輸入數(shù)值及運(yùn)算符號(hào)輸入變量的值使用字符型變量的值與列出的case表達(dá)式的值進(jìn)行比較,當(dāng)表達(dá)式的值滿足 其值是'+'則進(jìn)行加法運(yùn)算',結(jié)束條件判斷。 其值是'-'則進(jìn)行減法運(yùn)算',結(jié)束條件判斷。 其值是'*'則進(jìn)行乘法運(yùn)算',結(jié)束條件判斷。其值是'/'首先判斷分母是否為零if(n%2==0)則提示信息'分母不能為零',否則進(jìn)行除法運(yùn)算,結(jié)束條件判斷。如變量的值與所有case后的值均不相同時(shí),則執(zhí)行default后的語句,提示用戶運(yùn)算符輸入有誤.流程圖:代碼:#include"stdio.h"http://設(shè)計(jì)運(yùn)算器voidmain(){ //定義變量intn1,n2;charc;//輸入數(shù)1符號(hào)及數(shù)號(hào)printf("請(qǐng)輸入一個(gè)表達(dá)式:\n");scanf("%d%c%d",&n1,&c,&n2);//根據(jù)符號(hào)進(jìn)行運(yùn)算switch(c){case'+':printf("%d+%d=%d\n",n1,n2,n1+n2);break;case'-':printf("%d-%d=%d\n",n1,n2,n1-n2);break;case'*':printf("%d*%d=%d\n",n1,n2,n1*n2);break;case'/':if(n2==0){printf(“除數(shù)不能為零\n”);}else{printf("%d/%d=%d\n",n1,n2,n1/n2);}break;default:printf("輸入有誤\n");break;}}第八單元:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(while循環(huán))(4課時(shí))【單元知識(shí)點(diǎn)】循環(huán)結(jié)構(gòu)的概述循環(huán)結(jié)構(gòu)的問題分析循環(huán)結(jié)構(gòu)while語句while語句的一般形式while語句的執(zhí)行過程循環(huán)結(jié)構(gòu)while語句的使用舉例子循環(huán)結(jié)構(gòu)while語句的應(yīng)用【考核要求】掌握循環(huán)結(jié)構(gòu)的概念:用來描述能夠重復(fù)執(zhí)行的程序循環(huán)結(jié)構(gòu)的問題分析:體驗(yàn)健康的樂趣:跑一百圈第一:從第幾圈開始數(shù)(是從1開始,考慮可不可以從50或者100或101開始數(shù))第二:在什么時(shí)候可以結(jié)束(滿足要求停止,不滿足要求繼續(xù))第三:跑一圈的執(zhí)行過程第四:跑一圈(數(shù)圈人,圈數(shù)變量的變化)靈活應(yīng)用while語句的基本語法while(表達(dá)式){語句1;……語句n;}其中表達(dá)式是循環(huán)條件,語句為循環(huán)體。while語句規(guī)范:1:{和}自成一行2:語句1語句n自動(dòng)縮進(jìn)while語句的執(zhí)行過程(如右圖所示):掌握使用while語句輸出1-100自然語言描述:定義整型循環(huán)變量i并初始化分析循環(huán)四要素初始值=1終值=100步長:+1循環(huán)體:輸出語句套用while循環(huán)格式輸出1-100流程圖規(guī)范:代碼規(guī)范#include"stdio.h"voidmain()//輸出1--100{ //定義循環(huán)變量并初始化① inti=1; //利用while語句實(shí)現(xiàn)輸出數(shù)值 while(i<=100) { printf("%d\t",i); i++; } }使用while語句實(shí)現(xiàn)輸出1-100之間所有奇數(shù)自然語言描述:定義整型循環(huán)變量i并初始化分析循環(huán)四要素初始值=1終值=100步長:+1循環(huán)體:判斷是否是奇數(shù),輸出語句套用while循環(huán)格式輸出1-100之所有奇數(shù)流程圖:代碼:#include"stdio.h"voidmain()//輸出1—100之間的奇數(shù){ //定義循環(huán)變量并初始化 inti=1; //利用while語句實(shí)現(xiàn)輸出數(shù)值 while(i<=100) {if(i%2==1){ printf("%d\t",i);} i=i+1; } }掌握使用while語句實(shí)現(xiàn)求1+2+3+···+100的和自然語言描述:定義循環(huán)變量i及累積求和變量sum,初始化變量的值分析循環(huán)四要素初始值=1終值=100步長:+1循環(huán)體:加法套用while循環(huán)結(jié)構(gòu)實(shí)現(xiàn)求1+2+3100的和.輸出1+2+...100的結(jié)果流程圖:代碼#include"stdio.h"voidmain()//1100求和{//定義循環(huán)變量并初始化intsum=0,i;i=1; //利用while語句實(shí)現(xiàn)輸出數(shù)值while(i<=100){sum=sum+i;i++; }printf("sum=%d\n",sum);//輸出結(jié)果}掌握使用while語句求5!(1*2*3*4*5)自然語言描述定義循環(huán)變量i及累積求積變量sum,初始化變量的值分析循環(huán)四要素 初始值=1終值=5步長+1循環(huán)體:乘法套用while語句格式實(shí)現(xiàn)1*2*3*4*5輸出1*2*3*4*5的結(jié)果流程圖規(guī)范代碼規(guī)范#include"stdio.h"voidmain()//求1*2*3*4*5{//定義變量賦初值intquarter=1,i;i=1;//利用循環(huán)求1*2*3*4*5while(i<=5){ quarter=quarter*i;i++; }//輸出結(jié)果printf("quarter=%d\n",quarter);}生活案例應(yīng)用題目描述:馬云利用休息時(shí)間,去超市購買生活用品,循環(huán)輸入10種商品的價(jià)格,輸出消費(fèi)總金額.案例完成要求:輸入10件商品的價(jià)格,計(jì)算總價(jià)格,并輸出分析問題,找到解決問題的思路,并繪制成流程圖。書寫代碼時(shí)要求遵循代碼規(guī)范,并邊注釋邊寫代碼.第九單元:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(do…while循環(huán))(4課時(shí))【單元知識(shí)點(diǎn)】循環(huán)結(jié)構(gòu)dowhile語句dowhile語句的一般形式dowhile語句的執(zhí)行過程循環(huán)結(jié)構(gòu)dowhile語句的使用舉例子循環(huán)結(jié)構(gòu)dowhile語句的應(yīng)用【考核要求】掌握do...while語句基本語法do{語句;}while(表達(dá)式);do--while語句規(guī)范:1:do自成一行2:{自成一行3:}與while在一行4:語句1語句n自動(dòng)縮進(jìn)掌握do-while語句的執(zhí)行過程(如右圖):掌握while與do···while的區(qū)別(列表形式) while語句是先計(jì)算表達(dá)式的值,再執(zhí)行循環(huán)體,do…while是執(zhí)行完一次循環(huán)體,再計(jì)算表達(dá)式的值當(dāng)表達(dá)式的值第一次為假時(shí),while的循環(huán)體一次都不執(zhí)行,do…while則執(zhí)行一次循環(huán)體;當(dāng)表達(dá)式的值為真時(shí),兩者無區(qū)別掌握do-while語句求1+2+3+···+100的和自然語言描述:定義循環(huán)變量i及求和變量sum并初始化變量的值分析循環(huán)四要素初始值=1終值=100步長+1循環(huán)體:加法套用do...while循環(huán)格式實(shí)現(xiàn)求1+2+3+...100和輸出1+2+3+...100的結(jié)果流程圖規(guī)范代碼規(guī)范:#include"stdio.h"voidmain()//求1100的和{//定義循環(huán)變量,累積求和變量inti=1,sum=0;//do...while實(shí)現(xiàn)累積求和do{ sum=sum+i; i++; }while(i<=100);printf("sum=%d",sum);//輸出結(jié)果}掌握do-while語句求求100以內(nèi)的偶數(shù)和自然語言描述:定義循環(huán)變量i及累積求和變量sum,初始化變量的值分析循環(huán)四要素初始值=2終值=100步長:+2循環(huán)體:加法套用do...while循環(huán)結(jié)構(gòu)實(shí)現(xiàn)求100以內(nèi)偶數(shù)和輸出1-100之間偶數(shù)和的結(jié)果流程圖規(guī)范(右圖)代碼:#include"stdio.h"voidmain()//求1—100偶數(shù)和{//定義循環(huán)變量,累積求和變量inti=1,sum=0;//do...while實(shí)現(xiàn)累積求和do{ sum=sum+i; i++; }while(i<=100);//輸出結(jié)果printf("sum=%d",sum);}生活案例應(yīng)用題目描述:淘寶網(wǎng)要開發(fā)新的網(wǎng)站,經(jīng)理要求你設(shè)置登陸模塊,登陸模塊中要求:用戶輸入密碼輸入不正確可以重新輸入,正確,則退出輸入密碼的模塊。案例完成要求:分析問題,找到解決問題的思路,并繪制成流程圖。書寫代碼時(shí)要求遵循代碼規(guī)范,并邊注釋邊寫代碼.第十單元:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(for循環(huán))(4課時(shí))【單元知識(shí)點(diǎn)】循環(huán)結(jié)構(gòu)for語句for語句的一般形式for語句的執(zhí)行過程循環(huán)結(jié)構(gòu)for語句的使用舉例子循環(huán)結(jié)構(gòu)for語句的應(yīng)用【考核要求】靈活應(yīng)用for語句的基本語法for(表達(dá)式1;表達(dá)式2;表達(dá)式3){語句1;……語句n;}for語句規(guī)范:1:for自成一行2:{和}自成一行3:語句1語句n自動(dòng)縮進(jìn)靈活應(yīng)用for語句的執(zhí)行過程如右圖:掌握用for語句輸出1-100(參考while結(jié)構(gòu)中的流程圖及代碼)自然語言描述:定義循環(huán)變量i分析循環(huán)四要素初始值=1終值=100步長:+1循環(huán)體:輸出語句套用for循環(huán)語句格式實(shí)現(xiàn)輸出1-100代碼:#include"stdio.h"voidmain()//輸出1100{//定義循環(huán)變量量inti;//利用for語句輸出1-100數(shù)值for(i=1;i<=100;i++){printf("%d\t",i); }}掌握用for語句輸出1-100之間所有奇數(shù)(參考while結(jié)構(gòu)中的流程圖及代碼)定義循環(huán)變量分析循環(huán)四要素初始值=1終值=100步長:+2循環(huán)體:輸出語句套用for語句格式輸出1-100之間的所有奇數(shù)值掌握用for語句求1+2+3+···+100的和(參考while結(jié)構(gòu)中的流程圖及代碼)定義循環(huán)變量及累積求和變量并初始化利用for語句輸出1+2+...100之和 初始值=1終值=100步長:+1循環(huán)體:加法輸出1-100和掌握用for語句求5!(1*2*3*4*5)(參考while結(jié)構(gòu)中的流程圖及代碼)定義循環(huán)變量i及累積求積的變量sum并初始化。分析循環(huán)四要素初始值=1終值=5步長:+1循環(huán)體:乘積套用for循環(huán)語句格式求5!輸出1*2*3*4*5結(jié)果生活案例應(yīng)用題目描述:八維高翻學(xué)院8名同學(xué)參加了4月份升班月考考試,成績>=90分算成才,現(xiàn)要求編寫一個(gè)小軟件,幫助高翻學(xué)院計(jì)算成才率。案例完成要求:輸入10學(xué)生的成績,統(tǒng)計(jì)10個(gè)學(xué)生的成才個(gè)數(shù),計(jì)算成才率.分析問題,找到解決問題的思路,并繪制成流程圖。書寫代碼時(shí)要求遵循代碼規(guī)范,并邊注釋邊寫代碼.第十一單元:跳轉(zhuǎn)語句與循環(huán)嵌套(4課時(shí))【單元知識(shí)點(diǎn)】break語句break語句break語句的一般形式循環(huán)中使用break語句的效果continue語句continue語句的一般形式continue語句的兩種用途循環(huán)中使用continue語句的效果循環(huán)嵌套循環(huán)嵌套的一般形式循環(huán)嵌套實(shí)現(xiàn)打印九九乘法表循環(huán)嵌套實(shí)現(xiàn)打印長方形循環(huán)嵌套實(shí)現(xiàn)打印三角形【考核要求】掌握break語句的一般形式do{break;}while(條件);while(條件){break; }for(初值;條件;增量){break;}掌握break語句的兩種用途 用于switch語句中與case搭檔,跳出switch語句 用于單層循環(huán)中,終止本層循環(huán)掌握循環(huán)中使用break語句的舉例for(i=0;i<5;i++){printf(“%d”,i);break;}掌握continue語句的一般形式do{continue;}while(條件)while(條件){continue; }for(初值;條件;增量){continue;}掌握continue語句的用途 只能用于循環(huán)結(jié)構(gòu) 用于循環(huán)中,結(jié)束本次循環(huán),進(jìn)行下一次循環(huán)。循環(huán)中使用continue語句的舉例:分析以下代碼寫出結(jié)果#include"stdio.h"voidmain(){ inti,sum=0; for(i=0;i<5;i++){ if(i%2==0){ continue; } sum=sum+i; } printf("%d",sum);}利用循環(huán)結(jié)構(gòu)輸出下圖結(jié)果自然語言描述定義循環(huán)變量i循環(huán)控制行數(shù):for(i=1;i<=9;i++)判斷如果i的值是4跳過循環(huán)體輸出代碼:#include<stdio.h>voidmain()//利用continue,過濾數(shù)據(jù){ inti;//定義變量 for(i=1;i<=9;i++)//利用循環(huán)結(jié)構(gòu)取1—9之間的所有整數(shù) { if(i==4)//判定本次循環(huán)題執(zhí)行時(shí)i值是否滿足條件{continue;//跳轉(zhuǎn)} printf("%d\t",i); }}掌握循環(huán)嵌套的一般形式 三種循環(huán)語句while()dowhile()以及for語句之間都可以互相嵌套使用, 常用的有以下幾種:for(;;){for(;;){}}for(;;){while(){}}while(){for(;;){}}掌握循環(huán)嵌套實(shí)現(xiàn)打印九九乘法表自然語言描述:定義循環(huán)變量i和j,i控制外循環(huán)j控制內(nèi)循環(huán)外循環(huán)控制行數(shù):for(i=1;i<=9;i++)內(nèi)循環(huán)控制乘法表達(dá)式的個(gè)數(shù):for(j=1;j<=i;j++)循環(huán)體輸出乘法表的表達(dá)式在內(nèi)循環(huán)外,輸出換行符流程圖規(guī)范代碼規(guī)范:#include<stdio.h>voidmain()//打印九九乘法表{ inti,j;//定義變量 for(i=1;i<=9;i++)//控制行數(shù) { for(j=1;j<=i;j++) //控制每行表達(dá)式的個(gè)數(shù) { printf("%d*%d=%d",j,i,i*j);//輸出表達(dá)式 } printf("\n"); }}掌握循環(huán)嵌套實(shí)現(xiàn)打印長方形(以三行四列為例)自然語言描述定義循環(huán)變量i和j,i控制外循環(huán)j控制內(nèi)循環(huán)外循環(huán)控制行數(shù):for(i=1;i<=3;i++)內(nèi)循環(huán)控制每行打印星號(hào)的個(gè)數(shù):for(j=1;j<=4;j++)循環(huán)體輸出單個(gè)星號(hào)內(nèi)循環(huán)外,輸出換行符流程圖規(guī)范參考右圖:代碼:#include<stdio.h>voidmain()//打印3行4列的矩形{ inti,j;//定義變量 for(i=1;i<=3;i++)//控制行數(shù) { for(j=1;j<=4;j++)//控制列數(shù) { printf("*");//輸出星號(hào) } printf("\n");//換行 }}掌握循環(huán)嵌套實(shí)現(xiàn)打印三角形自然語言描述定義循環(huán)變量i和j,i控制外循環(huán)j控制內(nèi)循環(huán)外循環(huán)控制行數(shù):for(i=1;i<=4;i++)內(nèi)循環(huán)控制每行打印星號(hào)的個(gè)數(shù):for(j=1;j<=i;j++)循環(huán)體輸出單個(gè)星號(hào)在內(nèi)循環(huán)外,輸出換行符流程圖規(guī)范:代碼規(guī)范:#include<stdio.h>voidmain()//打印直角三角形{ inti,j;//定義變量 for(i=1;i<=4;i++)//控制行數(shù) { for(j=1;j<=i;j++)//控制每行星號(hào)的個(gè)數(shù) { printf("*"); } printf("\n");//換行 }}生活案例應(yīng)用題目描述:民生銀行開發(fā)新的ATM機(jī)存取款系統(tǒng),要求設(shè)置登陸模塊,登陸設(shè)置的要求如下:用戶輸入密碼,密碼輸入不正確,重新輸入,但是最多有3次輸入機(jī)會(huì)。三次都不正確,登陸失敗用戶在三次以內(nèi)輸入密碼正確,不再重新輸入,登陸賬戶成功案例完成要求:分析問題,找到解決問題的思路,并繪制成流程圖。書寫代碼時(shí)要求遵循各結(jié)構(gòu)代碼規(guī)范,并邊注釋邊寫代碼.第十二單元:一維數(shù)組和一維數(shù)組的基本操作(4課時(shí))【單元知識(shí)點(diǎn)】一維數(shù)組的定義一維數(shù)組的定義方式一維數(shù)組的下標(biāo)一維數(shù)組的引用格式一維數(shù)組的初始化全部賦初值部分賦初值特殊賦初值循環(huán)賦初值一維數(shù)組輸入輸出輸入并輸出數(shù)組的內(nèi)容倒序輸出數(shù)組的內(nèi)容【考核要求】了解數(shù)組定義:具有相同數(shù)據(jù)類型的有序集合。了解一維數(shù)組:可以用一個(gè)下標(biāo)定位的數(shù)組。靈活應(yīng)用一維數(shù)組的定義格式類型說明符數(shù)組名[常量表達(dá)式];掌握一維數(shù)組下標(biāo)是從0開始 數(shù)組下標(biāo):高級(jí)語言中用于定位數(shù)組元素的整數(shù)。了解一維數(shù)組的引用格式數(shù)組名[下標(biāo)]掌握一維數(shù)組的全部賦初值方式 inta[5]={1,2,3,4,5};掌握一維數(shù)組的部分賦初值方式 inta[5]={1,2};掌握一維數(shù)組的特殊賦初值方式 inta[]={1,2,3,4,5};掌握一維數(shù)組的循環(huán)賦初值方式for(i=0;i<5;i++){ scanf(“%d”,&a[i]);}定一個(gè)包含五個(gè)元素的整型一維數(shù)組輸入所有的元素自然語言描述:定義一維數(shù)組arr[5]設(shè)循環(huán)變量i=0;判斷條件i<5,如果為真輸入每一個(gè)元素退出循環(huán),程序結(jié)束流程圖(如右圖:)代碼:#include“stdio.h”voidmain()//數(shù)組的輸入{inti,array[5];//定義變量for(i=0;i<5;i++)//利用循環(huán)對(duì)所有元素輸入{scanf(“%d”,&array[i]);}}定一個(gè)包含五個(gè)元素的整型一維數(shù)組輸出所有的元素自然語言描述:定義一維數(shù)組arr[5]={1,2,3,4,5}設(shè)循環(huán)變量i=0;判斷條件i<5,如果為真,轉(zhuǎn)到4;如果為假,轉(zhuǎn)到5輸出一維數(shù)組arr[i],i加1,轉(zhuǎn)到3退出循環(huán),程序結(jié)束流程圖代碼:#include"stdio.h"voidmain()//數(shù)組的輸出{intarr[5]={1,2,3,4,5},i;//定義數(shù)組和變量printf("輸出一維數(shù)組:\n");for(i=0;i<5;i++)//數(shù)組所有元素的輸出{ printf("%d\n",arr[i]);}}生活案例應(yīng)用題目描述:物美超市統(tǒng)計(jì)2014年的一年12月的銷售情況,要求編程實(shí)現(xiàn)輸入12個(gè)月的銷售記錄,并輸出銷售高峰期11月的銷售情況。案例完成要求:分析問題,找到解決問題的思路,并繪制成流程圖。書寫代碼時(shí)要求遵循各結(jié)構(gòu)代碼規(guī)范,并邊注釋邊寫代碼.第十三單元:一維數(shù)組應(yīng)用(4課時(shí))(課本pag162)【單元知識(shí)點(diǎn)】一維數(shù)組求和以及平均值計(jì)算一維數(shù)組的和計(jì)算一維數(shù)組的平均值一維數(shù)組的最大值一維數(shù)組的最小值【考核要求】定義包含五個(gè)元素的整型一維數(shù)組求和自然語描述定義一個(gè)包含5個(gè)元素的整型數(shù)組arr用來存儲(chǔ)要輸入的5個(gè)數(shù)定義循環(huán)變量i以及保存數(shù)組元素之和的變量sum,并賦初值為0用循環(huán)的方式,輸入5個(gè)數(shù),存放到數(shù)組arr中用循環(huán)的方式將所有元素逐一累加到sum上輸出sum的值。流程圖(右圖):代碼:#include"stdio.h"voidmain()//一維數(shù)組所有元素求和{intarr[5],i,sum=0;//定義數(shù)組變量和for(i=0;i<5;i++)//輸入一維數(shù)組中的五個(gè)元素{ scanf("%d",&arr[i]); }for(i=0;i<5;i++)//求和{ sum=sum+arr[i];}//輸出結(jié)果printf("sum=%d",sum);}計(jì)算長度為5的數(shù)組的元素的平均值自然語言描述:定義數(shù)組a[5]存儲(chǔ)5個(gè)整數(shù)。定義一個(gè)變量sum存儲(chǔ)5個(gè)數(shù)的和,avg存儲(chǔ)平均值定義一個(gè)整型變量i表示數(shù)組下標(biāo)i賦初值0,sum賦初值為0判斷i的值是否小于5,成立執(zhí)行(5),不成立執(zhí)行(6)執(zhí)行sum=sum+a[i];i++;回到(4)執(zhí)行avg=sum/5.0;輸出avg,結(jié)束程序流程圖:代碼:#include"stdio.h"voidmain()//一維數(shù)組所有元素求平均值{ inta[5]={23,45,78,9,12};//定義數(shù)組并賦值//定義變量 inti,sum=0; floatavg; for(i=0;i<5;i++)//所有元素求和 { sum=sum+a[i] ; } avg=sum/5.0;//計(jì)算平均值 printf("5個(gè)數(shù)的平均值是%f",avg);//輸出平均值}一維數(shù)組求所有元素最大值自然語言描述:定義一個(gè)包含5個(gè)元素的整型數(shù)組array用來存儲(chǔ)要輸入的5個(gè)數(shù)定義循環(huán)變量i以及存放最大值的變量max用循環(huán)的方式,輸入5個(gè)數(shù),存放到數(shù)組array中假設(shè)第一個(gè)數(shù)組元素作為最大值max=a[0]循環(huán)遍歷數(shù)組array中的所有元素,與假設(shè)的最大值max比較,如果數(shù)組元素大于max,則將該數(shù)組元素賦值給max循環(huán)結(jié)束后,max中則為最大值,將其輸出。流程圖:代碼:#include"stdio.h"voidmain()//數(shù)組所有元素輸入并求最大值{ inti,max,array[5];//定義變量和數(shù)組 for(i=0;i<5;i++)//輸入所有的元素 { scanf("%d",&array[i]); } max=array[0];//最大值變量賦初值 for(i=0;i<5;i++)//最大值變量與所有元素逐一比較,求最大值 { if(max<array[i]){ max=array[i]; } } printf("max=%d\n",max);//輸出最大值}一維數(shù)組求所有元素最小值自然語言描述:定義一維數(shù)組arr并賦初值;定義循環(huán)變量i及最小值min的變量將數(shù)組中的第一個(gè)元素放到min變量中:min=arr[0];初始化循環(huán)變量i=0;判斷條件i<數(shù)組的長度,如果為真則轉(zhuǎn)到5;如果為假則轉(zhuǎn)到8。判斷條件arr[i]<min,如果為真則轉(zhuǎn)到6;如果為假則轉(zhuǎn)到7。將arr[i]賦給min:min=arr[i]。循環(huán)變量遞增i++:然后轉(zhuǎn)到4。輸出min。流程圖(如右圖):代碼:#include"stdio.h"voidmain()//求數(shù)組最小值{ inti,min,arr[5]={12,3,45,7,89};//定義數(shù)組并初始化以及其他變量 min=arr[0];//最小值變量賦初值//利用循環(huán)控制最小值變量與數(shù)組所有元素逐一比較,求最小值 for(i=0;i<5;i++) { if(min>arr[i]){ min=arr[i]; } } printf("min=%d\n",min);//輸出最小值}生活案例:快男是大家喜歡的娛樂節(jié)目,歌手參加比賽,7個(gè)評(píng)委打分。觀看平均分,進(jìn)行淘汰,現(xiàn)編程實(shí)現(xiàn)對(duì)一個(gè)歌手的平均分的計(jì)算,要求10分制,去掉一個(gè)最高分,去掉一個(gè)最低分,計(jì)算平均分。案例完成要求:分析問題,找到解決問題的思路,并繪制成流程圖。書寫代碼時(shí)要求遵循各結(jié)構(gòu)代碼規(guī)范,并邊注釋邊寫代碼.第十四單元:字符數(shù)組(4課時(shí))【單元知識(shí)點(diǎn)】字符數(shù)組字符數(shù)組的概念字符數(shù)組的定義字符數(shù)組的初始化字符數(shù)組的引用字符數(shù)組的初始化字符數(shù)組的輸入輸出字符串相關(guān)函數(shù)字符串輸入輸出函數(shù)字符串求長度函數(shù)字符串復(fù)制函數(shù)字符串連接函數(shù)字符串比較函數(shù)【考核要求】掌握字符數(shù)組的概念:用來存放字符數(shù)據(jù)的數(shù)組掌握字符數(shù)組的定義:如:charch[5];掌握字符數(shù)組的初始化字符數(shù)組也允許在定義時(shí)作初始化賦值。例如:charc[10]={‘c’,‘’,‘p’,‘r’,‘o’,‘g’,‘r’,‘a(chǎn)’,’m’};charname[20]=“zhangsan”;掌握字符數(shù)組的引用:數(shù)組名[下標(biāo)]其中下標(biāo)應(yīng)為整型常量或整型表達(dá)式掌握字符串和字符串結(jié)束標(biāo)志charc[]="cprogram";用字符串方式賦值比用字符逐個(gè)賦值要多占一個(gè)字節(jié),用于存放字符串結(jié)束標(biāo)志'\0'。掌握用字符串輸入輸出函數(shù)charc[100];字符串輸出printf(“%s”,c);字符串輸入:scanf(“%s”,c);掌握字符串求長度函數(shù)測(cè)字符串長度函數(shù)strlen格式:strlen(字符數(shù)組名)功能:測(cè)字符串的實(shí)際長度(不含字符串結(jié)束標(biāo)志‘\0’)并作為函數(shù)返回值。掌握字符串復(fù)制函數(shù)字符串拷貝函數(shù)strcpy格式:strcpy(字符數(shù)組名1,字符數(shù)組名2)功能:把字符數(shù)組2中的字符串拷貝到字符數(shù)組1中。串結(jié)束標(biāo)志“\0”也一同拷貝。字符數(shù)名2,也可以是一個(gè)字符串常量。這時(shí)相當(dāng)于把一個(gè)字符串賦予一個(gè)字符數(shù)組掌握字符串連接函數(shù)字符串連接函數(shù)strcat格式:strcat(字符數(shù)組名1,字符數(shù)組名2)功能:把字符數(shù)組2中的字符串連接到字符數(shù)組1中字符串的后面,并刪去字符串1后的串標(biāo)志“\0”。掌握字符串比較函數(shù)字符串比較函數(shù)strcmp格式:strcmp(字符數(shù)組名1,字符數(shù)組名2)功能:按照ascii碼順序比較兩個(gè)數(shù)組中的字符串,并由函數(shù)返回值返回比較結(jié)果。字符串1=字符串2,返回值0;字符串2〉字符串2,返回值1;字符串1〈字符串2,返回值-1;scanf實(shí)現(xiàn)字符串的輸入自然語言描述定義一個(gè)字符數(shù)組str輸入一個(gè)字符串。流程圖:代碼:#include"stdio.h"#include"string.h"voidmain()//輸入輸出字符串{charstr[100];//定義字符數(shù)組scanf("%s",str);//輸入字符串,存入str數(shù)組中printf("%s",str);//輸出str數(shù)組中存儲(chǔ)的字符串}字符串求長度函數(shù)自然語言描述:定義一個(gè)字符數(shù)組str,用于存儲(chǔ)輸入的一個(gè)字符串。用scanf輸入一個(gè)字符串,存放到數(shù)組str中使用strlen()函數(shù)測(cè)試字符串的長度輸出字符串的長度流程圖:代碼:#include"stdio.h"#include"string.h"voidmain()//求字符串長度{//定義字符數(shù)組 charstr[100]; //輸入字符串輸出長 scanf(“%s”,str); printf("%d",strlen(str));}字符串的復(fù)制函數(shù)(strcpy)自然語言描述:定義兩個(gè)字符數(shù)組str1,str2;輸入兩個(gè)字符串分別存放到str1,str2中。將str2中的字符串復(fù)制到str1中。輸出字符串str1,str2;流程圖(如右圖):代碼:#include"stdio.h"#include"string.h"voidmain()//字符串復(fù)制{//定義字符數(shù)組charstr1[100],str2[100];//輸入字符串scanf(“%s”,str1);scanf(“%s”,str2);strcpy(str1,str2);//將str2中的字符串復(fù)制到str1中printf(“%s”,str1);//輸出字符串printf(“%s”,str2);//輸出字符串}字符串連接函數(shù)strcat()自然語言描述:定義字符數(shù)組str[50]="mynameis",ch[10];輸入一個(gè)字符串:自己的名字。將自己的名字連接到str的后面。輸出str.流程圖:代碼#include"stdio.h"voidmain()//字符串連接{//定義字符數(shù)組charstr[50]={"mynameis"},ch[10];//輸入名字printf("請(qǐng)輸入自己的名字:\n");scanf(“%s”,ch)//字符串連接輸出strcat(str,ch);printf(“%s”,str);}字符串的比較函數(shù)strcmp()自然語言描述:定義二個(gè)字符數(shù)組輸入其值判斷s1與s2的大小并輸出相應(yīng)提示信息結(jié)束流程圖:代碼:#include"stdio.h"voidmain()//字符串比較{//定義字符數(shù)組chars1[100],s2[100];//輸入字符串scanf(“%s”,s1);scanf(“%s”,s2);//比較輸出if(strcmp(s1,s2)==1){printf("第一串>第二串");}elseif(strcmp(s1,s2)==0){printf("第一串==第二串");}elseif(strcmp(s1,s2)==-1){printf("第一串<第二串");}}建立網(wǎng)站時(shí),會(huì)有用戶名的輸入后驗(yàn)證是否正確,現(xiàn)在編程完成用戶名的輸入和驗(yàn)證過程,要求用戶名輸入不正確時(shí),重新輸入,直到輸入正確時(shí)停止輸入.案例完成要求:分析問題,找到解決問題的思路,并繪制成流程圖。書寫代碼時(shí)要求遵

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論