![C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)教案_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/e59b4f59-5132-4e3d-b218-71a2f9e96e25/e59b4f59-5132-4e3d-b218-71a2f9e96e251.gif)
![C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)教案_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/e59b4f59-5132-4e3d-b218-71a2f9e96e25/e59b4f59-5132-4e3d-b218-71a2f9e96e252.gif)
![C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)教案_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/e59b4f59-5132-4e3d-b218-71a2f9e96e25/e59b4f59-5132-4e3d-b218-71a2f9e96e253.gif)
![C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)教案_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/e59b4f59-5132-4e3d-b218-71a2f9e96e25/e59b4f59-5132-4e3d-b218-71a2f9e96e254.gif)
![C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)教案_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/e59b4f59-5132-4e3d-b218-71a2f9e96e25/e59b4f59-5132-4e3d-b218-71a2f9e96e255.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、說(shuō) 明教案是除課件之外,重要的教學(xué)資料,甚至比課件更為重要。在教學(xué)管理中,每個(gè)學(xué)校對(duì)教案的要求是相當(dāng)嚴(yán)格的,我院也是一樣,每學(xué)期結(jié)束后,都要求教師必須打印教案并上交。而備課要占用大量的時(shí)間和精力,為了讓廣大使用該教材的教師從繁重的書(shū)寫(xiě)教案中解脫出來(lái),現(xiàn)將本人幾年前的教案資料貢獻(xiàn)出來(lái),希望大家從中受益。需要指出的是,該教案是按我院3年前教學(xué)要求書(shū)寫(xiě)的,可能與各個(gè)學(xué)校的格式不盡相同,但大體差別應(yīng)該不大,希望對(duì)大家有所幫助。 武春嶺程序設(shè)計(jì)基礎(chǔ)教案計(jì)應(yīng)51、52、計(jì)控51、信管51、52、網(wǎng)絡(luò)55授課班級(jí): 周 學(xué) 時(shí): 4節(jié) 開(kāi)課時(shí)間: 2005-9-19 授課教師: 武春嶺 部 門(mén):計(jì)算機(jī)系信息
2、安全教研室重慶電子工程職業(yè)學(xué)院課 題:第一章 C語(yǔ)言概述教學(xué)目標(biāo):通過(guò)本次講授,使學(xué)生了解C語(yǔ)言產(chǎn)生的背景及歷程,掌握C語(yǔ)言的基本特點(diǎn)。教學(xué)重點(diǎn):C語(yǔ)言及C程序的特點(diǎn)。教 法:講授法所用課時(shí):2節(jié)授課班級(jí):計(jì)應(yīng)51、52、計(jì)控51、 網(wǎng)絡(luò)55 信管51、52授課時(shí)間:9.19(5-6節(jié)) 9.19(7-8節(jié)) 9.20(1-2節(jié)) 9.20(7-8節(jié)) 教學(xué)過(guò)程: 活動(dòng):1 上互聯(lián)網(wǎng),在統(tǒng)一資源定位器URL(網(wǎng)址欄)里輸入 ,進(jìn)入該搜索網(wǎng)站,然后在google搜索中輸入:C語(yǔ)言程序開(kāi)發(fā)招聘,然后點(diǎn)擊“google搜索”按鈕,通過(guò)搜索信息看一下C語(yǔ)言目前是否還有實(shí)用價(jià)值,其招聘的“C開(kāi)發(fā)”主要從
3、事何種類(lèi)型的開(kāi)發(fā)?通過(guò)這個(gè)活動(dòng),你覺(jué)得C語(yǔ)言程序設(shè)計(jì)還有用嗎?還值得學(xué)嗎?2 本書(shū)229頁(yè)是國(guó)內(nèi)一流的信息安全產(chǎn)品集成生產(chǎn)廠(chǎng)商衛(wèi)士通公司2004年的招聘啟事(下載于2004年7月26日),仔細(xì)閱讀該招聘啟事,想一想“學(xué)C的感覺(jué)”,你覺(jué)得計(jì)算機(jī)類(lèi)/信息類(lèi)專(zhuān)業(yè)不學(xué)好C語(yǔ)言行嗎?好好思考一下如何學(xué)習(xí)才能便于將來(lái)自己的專(zhuān)業(yè)擴(kuò)展和就業(yè)擴(kuò)展。一、C語(yǔ)言出現(xiàn)的歷史背景講述最初的匯編語(yǔ)言編寫(xiě)系統(tǒng)軟件的局限性,引出C語(yǔ)言應(yīng)孕而生的必然性。C語(yǔ)言大致歷程為:ALGOL60 CPL BCPL B C 1973年K.Thompson和D.M.Ritchie用C語(yǔ)言改寫(xiě)了UNIX 90%以上,使UNIX與C相互促進(jìn),共
4、同發(fā)展。二、C語(yǔ)言程序的特點(diǎn)在沒(méi)講C語(yǔ)言程序的特點(diǎn)之前,先看幾個(gè)小小的C程序:例1 #include <stdio.h> /*頭文件包含*/void main( ) /*main函數(shù)是C語(yǔ)言固定的主函數(shù),不能少*/函數(shù)體 printf(“Hello World!”); /*輸出函數(shù)*/*注意花括號(hào)的配對(duì)出現(xiàn)*/每一個(gè)C程序都必須有main函數(shù),否則,程序?qū)o(wú)法運(yùn)行,同學(xué)們記住,今后要編程序時(shí),可先搭建主函數(shù)框架。例2求3個(gè)數(shù)的平均值(a=3.5、b=4.6、c=7.9)。float averager(float x,float y,float z) /*定義一個(gè)求三個(gè)平均值的函數(shù)*
5、/x,y,z三個(gè)變量為形式參數(shù),都為實(shí)型 float aver; aver=(x+y+z)/3 ;/*求平均*/ return(aver); /*返回到主函數(shù)的調(diào)用處*/main( ) float a,b,c,ave; /*定義幾個(gè)變量為實(shí)型*/ a=3.5;b=4.6;c=7.9; /*給實(shí)際參數(shù)變量賦值*/ ave=averager(a,b,c); /*調(diào)用求平均函數(shù)averager*/ printf(“averager=%f”,ave); /*按實(shí)數(shù)輸出格式%f輸出ave的值*/思考:若求三個(gè)任意數(shù)的平均值怎么辦?我們可以利用鍵盤(pán)輸入函數(shù)scanf( )來(lái)實(shí)現(xiàn)!只要我們修改一下main函
6、數(shù)就行了。代碼如下:main( ) int a,b,c;float ave; printf("input a,b,c:"); scanf("%d%d%d",&a,&b,&c); /*鍵盤(pán)輸入函數(shù)*/ ave=average(a,b,c); printf("average=%f",ave);其中,scanf函數(shù)雙引號(hào)內(nèi)的“%d%d%d”是分別說(shuō)明變量a、b、c按整型格式輸入,“&”表示地址符號(hào),運(yùn)用輸入函數(shù)輸入變量值時(shí),必須在變量前加地址符號(hào),這樣才能保證輸入的值正確存入相應(yīng)的變量所在內(nèi)存單元。有興趣的學(xué)
7、習(xí)者可以在計(jì)算機(jī)上運(yùn)行一下,看效果如何。自定義函數(shù)averager由編程者命名。命名時(shí),只要符合C語(yǔ)言的語(yǔ)法要求,都是可以的,在此為了見(jiàn)名思義,故取名為averager。由上可總結(jié)出C語(yǔ)言程序的一般特點(diǎn)為:(1)C語(yǔ)言是由函數(shù)構(gòu)成的,一個(gè)C源程序至少包含一個(gè)main函數(shù);(2)一個(gè)C程序總是從main函數(shù)開(kāi)始開(kāi)始執(zhí)行的而不論main函數(shù)在程序中的位置;(3)C語(yǔ)言書(shū)寫(xiě)格式自由,一行內(nèi)可寫(xiě)幾個(gè)語(yǔ)句;(4)每個(gè)語(yǔ)句和數(shù)據(jù)定義的最后一個(gè)語(yǔ)句必須有一個(gè)分號(hào);(5)C語(yǔ)言本身沒(méi)有輸入輸出語(yǔ)句,輸入輸出是由函數(shù)完成的;(6)可以用“/*”和“*/”對(duì)C程序中的任何部分作注釋?zhuān)徽f(shuō)明:C程序的基本單位是函數(shù),
8、一個(gè)源程序由若干函數(shù)組成,但至少包括一個(gè)main函數(shù),且main函數(shù)的位置不限。三、C程序的開(kāi)發(fā)過(guò)程執(zhí)行連接編譯編輯鍵盤(pán)輸入 f.c磁盤(pán)文件 f.obj f.exe 結(jié)果源程序 成功 出錯(cuò)見(jiàn)課本第6頁(yè)。四、技能測(cè)試:見(jiàn)課本第8頁(yè)。作業(yè):P9 1.4已知三角形的三邊長(zhǎng)分別為:3、4、5,試編程求其面積。課 題:實(shí)驗(yàn)(熟悉Turbor C語(yǔ)言的編譯環(huán)境)教學(xué)目標(biāo):通過(guò)本次實(shí)驗(yàn)使學(xué)生熟練掌握C的編譯環(huán)境,學(xué)會(huì)一般程序的調(diào)試方法。教學(xué)重點(diǎn):掌握C程序的編輯、調(diào)試和運(yùn)行方法。教 法:試驗(yàn)法。授課班級(jí):計(jì)應(yīng)51、52、計(jì)控51、 網(wǎng)絡(luò)55 信管51、52授課時(shí)間: 試驗(yàn)內(nèi)容:一、演示實(shí)驗(yàn)內(nèi)容1程序的編輯方
9、法打開(kāi)file菜單(按ALT+F快捷鍵或按F10功能鍵,然后通過(guò)移動(dòng)光標(biāo)鍵來(lái)選file菜單);通過(guò)光標(biāo)鍵選擇new選項(xiàng),如下圖:在編輯區(qū)域內(nèi),輸入一個(gè)小程序,如下圖所示:2保存程序打開(kāi)file菜單,選擇Write To選項(xiàng),便出現(xiàn)如下情況:在上圖所示的New Name對(duì)話(huà)框中,輸入自己程序的保存路徑及文件名,假如程序名取為P1,將其保存在D盤(pán)的MYFILE目錄下,可像如下輸入:回車(chē)后,將會(huì)將你所輸入的程序保存到指定的路徑下。3運(yùn)行程序打開(kāi)Run菜單,選擇Run選項(xiàng),或者直接用快捷方式Ctrl+F9執(zhí)行。若程序無(wú)錯(cuò),則會(huì)顯示編譯成功畫(huà)面,否則會(huì)顯示出錯(cuò)信息,可排錯(cuò)后再執(zhí)行。4顯示運(yùn)行結(jié)果程序正確
10、編譯后,并不能出現(xiàn)運(yùn)行結(jié)果,若要看運(yùn)行結(jié)果,可打開(kāi)Run菜單,選擇User Screen選項(xiàng),或者直接用快捷鍵ALT+F5,如下所示:結(jié)果如下:若返回程序編輯狀態(tài)可,按任意鍵。說(shuō)明:對(duì)同一個(gè)程序來(lái)講,若修改后再保存,則用File菜單的Save選項(xiàng)即可,不要再用Write to項(xiàng);若想再編輯調(diào)試其它程序,千萬(wàn)不要接著第一個(gè)程序往下輸,可重新選File菜單的New選項(xiàng),從而開(kāi)始新程序的編輯。二、學(xué)生練習(xí)活動(dòng):1學(xué)生完成課本第9頁(yè)練習(xí)1.4的程序編輯及其調(diào)試運(yùn)行;2觀(guān)察學(xué)生的練習(xí)過(guò)程;3根據(jù)學(xué)生練習(xí)中出現(xiàn)的問(wèn)題逐一進(jìn)行演示糾正;4學(xué)生自行消化鞏固C編譯器的應(yīng)用。三、小結(jié):1 熟悉C程序的編輯運(yùn)行環(huán)境
11、;2 掌握一個(gè)完整C程序的運(yùn)行調(diào)試方法。課 題:第2章 數(shù)據(jù)描述教學(xué)目標(biāo):通過(guò)本次講授,使學(xué)生了解C語(yǔ)言的數(shù)據(jù)類(lèi)型及標(biāo)識(shí)符的概念和用法。教學(xué)重點(diǎn):常量和變量的理解。教 法:講授法所用課時(shí):2節(jié)授課班級(jí):計(jì)應(yīng)51、52、計(jì)控51、 網(wǎng)絡(luò)55 信管51、52授課時(shí)間: 教學(xué)過(guò)程:活動(dòng):1找學(xué)生寫(xiě)出main()的框架、printf( )和scanf( );2評(píng)作業(yè):求三角形的面積。3讓學(xué)生討論什么是數(shù)據(jù)?C語(yǔ)言的數(shù)據(jù)類(lèi)型 見(jiàn)P11:數(shù)據(jù)類(lèi)型1、標(biāo)識(shí)符:標(biāo)識(shí)符是給程序中的實(shí)體(變量、常量、函數(shù)、數(shù)組等)所起的一個(gè)名字。例:float x,y,z ;float為實(shí)數(shù)類(lèi)型標(biāo)識(shí)符,也是專(zhuān)用標(biāo)識(shí)符。x、y、z
12、則為一般的變量標(biāo)識(shí)符。關(guān)于標(biāo)識(shí)符的說(shuō)明:見(jiàn)P12:說(shuō)明:標(biāo)識(shí)符必須以字母或下劃線(xiàn)開(kāi)頭,由字母、數(shù)字或下劃線(xiàn)組成的字符序列;用戶(hù)不能采用C語(yǔ)言已有的32個(gè)關(guān)鍵字作為同名的用戶(hù)標(biāo)識(shí)符;標(biāo)識(shí)符長(zhǎng)度沒(méi)限制;標(biāo)識(shí)符區(qū)分大小寫(xiě)。關(guān)鍵字見(jiàn)課本P221。例如:1sum, PI , aa , bb43 , ch , a_53ff ,_lab 都是合法的標(biāo)識(shí)符。24mm , ma , tt$a , _ch#a 均是不合法的標(biāo)識(shí)符。思考:count、Count和COUNT是否為相同的標(biāo)識(shí)符?main、float能否作為用戶(hù)標(biāo)識(shí)符?1 常量:在程序中,其值不能改變的量。例:12 , 3 ,12.3 , -2.4 ,
13、3.14159 , a(代表字符a,為字符常量) 都是常量。說(shuō)明:常量可用宏定義命令#define來(lái)定義一個(gè)常量的標(biāo)識(shí),且一旦定義后,該標(biāo)識(shí)將永久性代表此常量,常量標(biāo)識(shí)符一般用大寫(xiě)字母表示。符號(hào)常量定義的一般格式為:#define 常量標(biāo)識(shí)符 數(shù)值例:#define PI 3.14 /*定義PI為3.14,即圓周率值近似值*/ main( ) int r ; float s ,l; /*變量類(lèi)型定義*/ r = 2 ; /*為半徑賦值為2*/ s = PI * r * r ; /*求圓面積,并且存到s所在的內(nèi)存中*/ l=2*r*PI; /*求圓周長(zhǎng)*/ printf( s=%f l=%f ,
14、 s,l ) ; /*輸出面積s和周長(zhǎng)l的值*/ 運(yùn)行結(jié)果:s=12.560000 l=12.5600003.變量:在程序的運(yùn)行過(guò)程中其值可改變的量。變量在程序中起著“容器”的重要作用,沒(méi)有變量就沒(méi)有數(shù)據(jù)存儲(chǔ),計(jì)算機(jī)也就無(wú)法處理數(shù)據(jù)。變量的命名完全如標(biāo)識(shí)符的命名規(guī)則,因?yàn)樽兞棵旧砭蛯儆跇?biāo)識(shí)符的范疇。由于計(jì)算機(jī)中不同的數(shù)據(jù)類(lèi)型所分配的內(nèi)存單元不同,所以C變量在使用之前必須定義,有些書(shū)上也稱(chēng)為變量聲名,否則,系統(tǒng)將無(wú)法為變量分配合適的內(nèi)存單元。變量定義的一般方式為:類(lèi)型 變量名;例:int i,j,l; float a,b,c;1)變量的初始化:變量賦初值。賦值的一般格式為:變量名=表達(dá)式;例如
15、:x=3; a=a+1;f=3*4+2;思考:看下面程序段中的語(yǔ)句是否正確?#define MAX 20main( ) int a; a=3; MAX=8; 9=a; printf(這樣賦值行嗎?);另外,變量初始化也可與變量定義同時(shí)進(jìn)行。例如:int a=3,b=4,c=5;float x=7.5;均是在變量定義的同時(shí),進(jìn)行的賦初值操作。見(jiàn)書(shū)上P14:畫(huà)龍點(diǎn)睛作業(yè):1 仔細(xì)閱讀并理解講過(guò)的內(nèi)容。2 課本40頁(yè)單選題1、2。小結(jié)1C語(yǔ)言的數(shù)據(jù)類(lèi)型2標(biāo)識(shí)符的概念3常量與變量課 題:第二章 基本數(shù)據(jù)類(lèi)型教學(xué)目標(biāo):通過(guò)本堂講授,使學(xué)生掌握C語(yǔ)言常用的數(shù)據(jù)類(lèi)型及存儲(chǔ)特征教學(xué)重點(diǎn):基本數(shù)據(jù)類(lèi)型的正確運(yùn)用
16、教 法:講授法。所用課時(shí):2節(jié)授課班級(jí):網(wǎng)絡(luò)45教學(xué)過(guò)程:一、 基本數(shù)據(jù)類(lèi)型 我們知道數(shù)據(jù)在計(jì)算機(jī)內(nèi)存中是以二進(jìn)制數(shù)存在的(不清楚的可參閱有關(guān)計(jì)算機(jī)基礎(chǔ)方面的書(shū)),我們的C語(yǔ)言程序在執(zhí)行過(guò)程中,首先被編譯成目標(biāo)代碼,即二進(jìn)制代碼或機(jī)器碼,這樣程序變量的值就會(huì)以二進(jìn)制的形式存在于內(nèi)存。由于二進(jìn)制數(shù)在實(shí)際應(yīng)用中很不方便,所以我們?cè)诰幊虝r(shí)用到的數(shù)據(jù)通常以十進(jìn)制、八進(jìn)制等形式出現(xiàn)。下面將對(duì)基本數(shù)據(jù)類(lèi)型一個(gè)一個(gè)進(jìn)行講解。1. 整型數(shù)據(jù)(int)整型數(shù)據(jù)在C語(yǔ)言中有三種表示形式,在具體應(yīng)用中,往往根據(jù)需要選用。(1)整型常量十進(jìn)制表示:如:123、-34、0 。八進(jìn)制表示:以0開(kāi)頭符合八進(jìn)制規(guī)則的整型常量
17、。如:045、0611、011。十六進(jìn)制表示:以0x開(kāi)頭符合十六進(jìn)制規(guī)則的整型常量。如:0x123、0xabc、0xaf。(2)整型變量整型數(shù)據(jù)在內(nèi)存中的表示范圍如課本P15表2.1,要使變量成為整型,必須將其聲明為整型,至此,這對(duì)我們來(lái)說(shuō)已經(jīng)不是難題了。例如: main( ) int a , b =7 ; a = 6; printf(%d%d,a,b); 該程序段,將變量a、b定義成整型,并給它們分別賦了初值。值的注意的是整型數(shù)據(jù)輸出的格式控制符為“%d”,初學(xué)者務(wù)必記牢!活動(dòng):例: 有這樣的數(shù)據(jù)定義:int a;則a=32768;行嗎?2、實(shí)型數(shù)據(jù)(float或double)(1)實(shí)型常量
18、 實(shí)型數(shù)據(jù)有兩種表示形式,這與我們現(xiàn)實(shí)生活中所用的實(shí)數(shù)表示方法有所不同。C語(yǔ)言中,實(shí)型常量或常數(shù)由小數(shù)點(diǎn)和數(shù)字組成,你也許會(huì)認(rèn)為這與我們?cè)跀?shù)學(xué)中的表示沒(méi)什么兩樣,實(shí)際上是有區(qū)別的,C語(yǔ)言中,實(shí)數(shù)的小數(shù)點(diǎn)前允許沒(méi)有數(shù)字。一般形式表示如:0.21、.12、3.141592、9999987.76660等。指數(shù)形式表示指數(shù)表示法有點(diǎn)類(lèi)似數(shù)學(xué)中的科學(xué)記數(shù)法,只不過(guò)C語(yǔ)言中用e或E代替數(shù)學(xué)表示中的10。例如:1240000用C語(yǔ)言可表示為1.24E6。C語(yǔ)言的指數(shù)表示法是有規(guī)則的,一定注意在e或E之前必須有數(shù)字,在其后的指數(shù)部分必須為整數(shù)。見(jiàn)課本P16中間。如:123e3、-1.2E3、2e2、1.6e+
19、2、1.9E-3 都是合法的形式,但1.23e0.7和e3都不是合法形式。(2)實(shí)型變量:分為單精度(float)和雙精度(double)。見(jiàn)課本P15表2.1。例1 見(jiàn)課本P16例2-2。代碼:main( ) float x , y ; /*定義單精度變量x和y*/ double c, d ; /*定義雙精度變量c和d*/ x = y = 4.6; /*x、y均被賦值為4.6*/ c = 988888987.111; d = x + c ; printf(%f %f, x , d ); 運(yùn)行結(jié)果:4.600000 988888991.711000分析:(1)變量x、y、c、d被賦的值必須在其
20、表示范圍內(nèi),若上面程序中,將d定義為float型就會(huì)出現(xiàn)溢出錯(cuò)誤,想一下為什么?(2)不管是單精度還是雙精度,其輸出格式均為“%f”;(3)在C語(yǔ)言中,不管是單精度還是雙精度實(shí)數(shù),輸出時(shí)小數(shù)點(diǎn)后默認(rèn)保留6位小數(shù)。3、字符型數(shù)據(jù)(char)(1)字符常量:用單撇號(hào)括起來(lái)的單個(gè)字符,或轉(zhuǎn)義字符。如a、E、¥、$、9、t、101、x1f都是字符常量(后3個(gè)是轉(zhuǎn)義字符)。應(yīng)當(dāng)注意,單撇號(hào)只是字符常量的一個(gè)“標(biāo)志”,并非字符常量的一部分,字符常量只能是單個(gè)字符,當(dāng)輸出一個(gè)字符常量時(shí)不輸出單撇號(hào)。字符型數(shù)據(jù)是以ASCII碼的形式存儲(chǔ)的,關(guān)于A(yíng)SCII碼見(jiàn)書(shū)后附錄P220。轉(zhuǎn)義字符見(jiàn)課本P17?;顒?dòng):(1)
21、5與5是否相同?為什么?分析:5與5不同,5是整數(shù),但5是字符常量,其值為53,5遠(yuǎn)遠(yuǎn)大于5。(2)a與a是否相同?為什么?分析:不相同,a是個(gè)標(biāo)識(shí)符,可看作變量,其值由所賦的值決定。(2)字符變量字符變量主要是為了存儲(chǔ)字符常量,字符常量是以ASCII碼值的方式存儲(chǔ)的。字符變量的定義方法為:char 變量名;例 2 本程序用來(lái)演示字符常量和字符變量的使用。(先寫(xiě)出來(lái)然后分析)代碼: main( ) char ch,c; /*定義字符變量ch,c*/ch=362;/*給字符變量ch賦一個(gè)轉(zhuǎn)義字符,其中362為8進(jìn)制數(shù)*/c=g;不勝數(shù)/*把字符常量g給字符變量c*/printf(%cn%c,c,
22、ch); /*n為轉(zhuǎn)義字符,表示換行*/運(yùn)行結(jié)果:g 說(shuō)明:字符在內(nèi)存中是以ASCII的值的形式存在的,所以字符型變量可與整型變量互相賦值。(寫(xiě)課本P18)例2-4 本程序演示字符型數(shù)據(jù)與整型數(shù)據(jù)互相賦值的情況。(先寫(xiě)出來(lái)后分析)代碼:main( ) char c1 , c2 ; int a ; c1= a , c2 = 98 ; a = a; /*體會(huì)“=”兩邊的a意義有何不同?*/ printf( c1=%c c2=%c a=%d , c1 ,c2 , a) ;運(yùn)行結(jié)果:c1=a c2=b a=97分析: c1 c2 a979798(a)c1 01100001c201100010a0110
23、0001(b)二、字符串字符串常量:由雙引號(hào)括起的若干字符序列。如CHINA、ab$、I love chong qing !都屬于字符串常量。字符串在存貯時(shí),每一個(gè)字符元素占一個(gè)字節(jié),但是整個(gè)串占用的空間并不等于串中字符元素的個(gè)數(shù),而是字符元素個(gè)數(shù)加1,因?yàn)樽址幸粋€(gè)結(jié)束標(biāo)志0要占一個(gè)字節(jié)(0是一個(gè)ASCII碼為0的“空操作字符”)。如“CHINA”的存儲(chǔ)情況如下:0ANIHC說(shuō)明:C語(yǔ)言沒(méi)有專(zhuān)門(mén)的字符串變量,一般用字符數(shù)組來(lái)存放。串和字符是不能混為一談的。單個(gè)字符用單引號(hào)括起來(lái)是字符串常量,如a,但a卻是一個(gè)串常量,它們所占的內(nèi)存空間大小也不一樣。三、小結(jié):1 掌握基本數(shù)據(jù)類(lèi)型的表示方法;
24、2 掌握基本數(shù)據(jù)類(lèi)型的數(shù)據(jù)定義和使用方法;3 記住基本數(shù)據(jù)類(lèi)型在內(nèi)存中的表示范圍;4 了解字符串的特征及存儲(chǔ)特性。四、作業(yè):P40 2.1題的18;P41 2.2題的13;課 題:基本類(lèi)型修飾符及輸入輸出函數(shù)教學(xué)目標(biāo):通過(guò)本堂講授,使學(xué)生掌握C語(yǔ)言常用的輸入輸出函數(shù)用法教學(xué)重點(diǎn):輸入輸出函數(shù)的正確運(yùn)用教學(xué)難點(diǎn):類(lèi)型修飾符的用法教 法:講授法所用課時(shí):2節(jié)授課班級(jí):網(wǎng)絡(luò)45教學(xué)過(guò)程:活動(dòng)提問(wèn):1. int型數(shù)據(jù)的表示范圍;2float 與double類(lèi)型分別占多少個(gè)字節(jié)?3. 0字符的ASCII碼值是多少?4a的ASCII碼值是多少?52與2是相同的常量(判斷并分析)6字符串”wangling”
25、占幾個(gè)字節(jié)的單元?7說(shuō)出哪些是合法的常量:3e2 e1 2.3e0.3 n 086 xhh一、基本類(lèi)型修飾符基本類(lèi)型前面還可以通過(guò)添加修飾符實(shí)現(xiàn)基本類(lèi)型的“范圍擴(kuò)充”。類(lèi)型修飾符可以改變基本類(lèi)型的含義,以更加精確地適合特定環(huán)境的需要。C語(yǔ)言提供的修飾符如下:signed(有符號(hào))unsigned(無(wú)符號(hào))long(長(zhǎng)型)short(短型)以上修飾符均可修飾int基類(lèi)型,其中部分也可修飾char和double類(lèi)型,關(guān)于修飾符的用法,我們只關(guān)心它與int的搭配,如需要了解其它類(lèi)型與修飾符組合用法的,可參閱相關(guān)C語(yǔ)言書(shū)籍。具體修飾后的表示寬度見(jiàn)P20頁(yè)表2.3類(lèi)型修飾符是為了給用戶(hù)提供更大范圍的數(shù)據(jù)
26、定義而提供的,我們知道基本類(lèi)型int實(shí)際上指的是signed int類(lèi)型,其表示范圍相當(dāng)小,若用到比較大的整型數(shù)據(jù)時(shí),可考慮使用修飾符。當(dāng)類(lèi)型修飾符獨(dú)自使用時(shí),則認(rèn)為是修飾int型的。因此,下面幾種類(lèi)型修飾符是等效的:見(jiàn)P21頁(yè)上面。修 飾 符 等 效 于signed signed intunsigned unsigned intlong long intshort short int教法指引:先寫(xiě)出如下程序例題,然后分析其用法。例 1 本程序顯示了修飾符long的正確使用。main( ) int x1,y1; long x2,y2; x1=32767;y1=32769; /*注意y1的賦值超
27、出了其表示范圍*/ x2=32767L;y2=32769L;/*數(shù)字后的L表示該數(shù)據(jù)是長(zhǎng)整型,是合法的書(shū)寫(xiě)方法*/ printf(x1=%d,x2=%ldny1=%d,y2=%ld,x1,x2,y1,y2);/*n為換行符*/運(yùn)行結(jié)果:x1=32767,x2=32767y1=-32767,y2=32769二、常用輸入輸出函數(shù)1)printf函數(shù):格式輸出函數(shù)。格式:printf ( 格式控制,輸出表列 )格式控制是用雙引號(hào)括起來(lái)的字符串,它包括兩種信息:格式說(shuō)明:由“% ”和格式字符組成,如:%d ,%f等;普通字符:即需要原樣輸出的字符,如 printf ( a = %d , a) ;中的劃
28、線(xiàn)部分就是普通字符。見(jiàn)書(shū)中P22頁(yè)下邊。輸出表列可以是若干個(gè)需要輸出的數(shù)據(jù)變量,也可以是表達(dá)式。例見(jiàn)課本P22。注意格式控制符總結(jié):見(jiàn)P23中間。例:2見(jiàn)課本P23例2-8,對(duì)其進(jìn)行解釋。2)scanf函數(shù):格式輸入函數(shù)(1)格式:scanf (格式控制,地址表列)說(shuō)明:格式控制的含義與printf函數(shù)的相同;地址表列是由若干個(gè)以&打頭的地址項(xiàng);見(jiàn)書(shū)P23下面。分析例2-9(P24頁(yè))三、字符數(shù)據(jù)的輸入輸出函數(shù)1、putchar函數(shù):字符輸出函數(shù)格式:putchar(字符變量/字符常量)功能:在顯示設(shè)備上輸出一個(gè)字符變量的值。2、getchar函數(shù):字符輸入函數(shù)格式:getchar()
29、功能:從終端設(shè)備輸入一個(gè)字符,一般是從鍵盤(pán)輸入字符。見(jiàn)課本P25例2-10和例2-11:說(shuō)明:使用字符輸入輸出函數(shù)時(shí),必須用#include “stdio.h”;getchar和putchar函數(shù)每次只能處理一個(gè)字符,而且getchar函數(shù)沒(méi)有參數(shù)。四、小結(jié)1printf( )的基本用法;2scanf( )的基本用法;3 putchar( ) 的基本用法;4getchar( )的 基本用法;五、作業(yè)P40 2.1 79課 題:2.4基本運(yùn)算及表達(dá)式中的類(lèi)型轉(zhuǎn)換教學(xué)目標(biāo):通過(guò)本堂講授,使學(xué)生掌握C語(yǔ)言基本算術(shù)運(yùn)算符的合理用法,以及混合運(yùn)算時(shí)類(lèi)型轉(zhuǎn)換原則教學(xué)重點(diǎn):運(yùn)算符的基本用法教學(xué)難點(diǎn):增量運(yùn)算
30、與減量運(yùn)算教 法:講授法所用課時(shí):2節(jié)授課班級(jí):網(wǎng)絡(luò)45教學(xué)過(guò)程:復(fù)習(xí)上堂內(nèi)容;活動(dòng):提問(wèn)1 長(zhǎng)整型數(shù)據(jù)占幾個(gè)字節(jié)?2 無(wú)符號(hào)整型數(shù)據(jù)表示的數(shù)值范圍是多少?3 字符輸入函數(shù)有參數(shù)嗎?導(dǎo)入新課內(nèi)容。一、算術(shù)運(yùn)算符與算術(shù)表達(dá)式1算術(shù)運(yùn)算符見(jiàn)課本P27表2.4算術(shù)運(yùn)算符:+、-、*、/(整除運(yùn)算符)、%(模運(yùn)算符) 主要講解/和%運(yùn)算符。說(shuō)明:當(dāng)“ /”兩邊的運(yùn)算量完全是整數(shù)或字符時(shí),結(jié)果取整;模運(yùn)算符“%”是一種求余運(yùn)算,也叫模運(yùn)算,但是切記,模運(yùn)算取整數(shù)除法的余數(shù),所以“%”不能用于實(shí)型數(shù)據(jù)的運(yùn)算。見(jiàn)課本P27表2。4下面一段。例:7 % 3 = 4 ; 10 / 3 = 3 ;請(qǐng)考慮表達(dá)式:a
31、 = 8.9 % 3 ; 是否正確?例見(jiàn)P282-122算術(shù)表達(dá)式用算術(shù)運(yùn)算符和括號(hào)將數(shù)據(jù)對(duì)象連接起來(lái)的式子,稱(chēng)為算術(shù)表達(dá)式。如表達(dá)式:a*d/c-2.5+a就是一個(gè)合法的算術(shù)表達(dá)式。表達(dá)式的運(yùn)算按照運(yùn)算符的結(jié)合性和優(yōu)先級(jí)來(lái)進(jìn)行。C語(yǔ)言規(guī)定了運(yùn)算符的結(jié)合方向,即結(jié)合性。例如表達(dá)式7+9+1計(jì)算機(jī)在運(yùn)算時(shí),是先計(jì)算7+9還是先計(jì)算9+1呢?這就是一個(gè)左結(jié)合性還是右結(jié)合性的問(wèn)題。算術(shù)運(yùn)算的結(jié)合性是自左向右的左結(jié)合,所以應(yīng)該先算7+9。·結(jié)合性:左結(jié)合(自左向右結(jié)合);如果只有結(jié)合性顯然不夠,上面的例子屬于同級(jí)運(yùn)算(只有加運(yùn)算),但是如7+9*2,豈能只考慮運(yùn)算的結(jié)合性?這就要考慮運(yùn)算符的
32、優(yōu)先級(jí)的問(wèn)題了。其實(shí)在小學(xué)里我們就知道混合運(yùn)算規(guī)則:先算括號(hào)里面的,然后乘除,最后算加減。C語(yǔ)言算術(shù)運(yùn)算符的優(yōu)先級(jí)與小學(xué)數(shù)學(xué)中的混合運(yùn)算規(guī)則大致相同,即優(yōu)先級(jí)從高到低是:·優(yōu)先級(jí):見(jiàn)P28第二段下面。() 負(fù)號(hào) *、/ 、% +、-優(yōu)先級(jí) 高 低二、賦值運(yùn)算符及賦值表達(dá)式1賦值運(yùn)算格式:變量名=表達(dá)式;說(shuō)明:“=”是一種運(yùn)算符。2復(fù)合賦值 賦值表達(dá)式有一種變形,稱(chēng)為復(fù)合賦值,它簡(jiǎn)化了一定類(lèi)型的賦值操作的編碼。例如,x=x+10;可以改寫(xiě)成x+=10;操作符“+=”告訴編譯程序:x被賦值為:x加10。類(lèi)似的還有:-=,*=,/=,%=,它們的使用方法完全一樣,如: b-=9 等價(jià)于 b
33、=b-9 y*=x+12 等價(jià)于 y=y*(x+12) t/=3 等價(jià)于 t=t/3 a%=b+2 等價(jià)于 a=a%(b+2)活動(dòng):思考:下面的算術(shù)表達(dá)式如何轉(zhuǎn)化為合法的復(fù)合賦值表達(dá)式?y=y+9*xa=a%(b*2)3自增和自減運(yùn)算C包括兩種其它語(yǔ)言一般不支持的非常實(shí)用的操作符,即增量操作符+和減量操作符-也稱(chēng)自增運(yùn)算符和自減運(yùn)算符。操作符+ +對(duì)操作數(shù)增加一個(gè)單位,操作符- -對(duì)操作數(shù)減一個(gè)單位。也就是說(shuō),x=x+1;與+ +x;一樣,而x=x-1;與x- -;完全一樣。增量和減量操作符都能放到操作數(shù)前面,也可放到操作數(shù)后面。P30表2.5說(shuō)明:見(jiàn)P30表2.5下面一段。例如: x=10;
34、 y=+x;x的值先增1,變成11,然后將x的值11置給y,使y的值也為11。當(dāng)寫(xiě)成: x=10; y=x+;例:見(jiàn)書(shū)P31 2-13:三、表達(dá)式中的類(lèi)型轉(zhuǎn)換1自動(dòng)類(lèi)型轉(zhuǎn)換見(jiàn)P32中間示例:說(shuō)明:見(jiàn)P32劃線(xiàn)處。2強(qiáng)制類(lèi)型轉(zhuǎn)換使用強(qiáng)制類(lèi)型轉(zhuǎn)換,可以把表達(dá)式的結(jié)果硬性轉(zhuǎn)換為指定類(lèi)型,其一般形式為:(類(lèi)型)表達(dá)式其中類(lèi)型是將要轉(zhuǎn)換的有效C數(shù)據(jù)類(lèi)型。例如,為確保表達(dá)式x/2求值成float型,可以書(shū)寫(xiě)成(float) x/2。 實(shí)際上強(qiáng)制轉(zhuǎn)換(類(lèi)型)是操作符,由于它是一元單目運(yùn)算,所以?xún)?yōu)先級(jí)較高,它與自增自減運(yùn)算符屬于同一優(yōu)先等級(jí)。例 2-14 程序演示了強(qiáng)制類(lèi)型轉(zhuǎn)換的用法。代碼:main( ) i
35、nt a=2,b=7,c; float x=15.5,y,z; y=a/b; z=(float)a/b; /*將整型變量a轉(zhuǎn)換成實(shí)型*/ c=(int)x%a; /* 變量x不轉(zhuǎn)換類(lèi)型可以嗎?*/ printf(y=%f z=%f c=%d x=%f,y,z,c,x);運(yùn)行結(jié)果:y=0.000000 z=0.285714 c=1 x=15.500000小結(jié):1 算術(shù)運(yùn)算符及算術(shù)表達(dá)式的用法;2 賦值運(yùn)算及復(fù)合賦值運(yùn)算;3 增量運(yùn)算的用法;4 表達(dá)式中的類(lèi)型轉(zhuǎn)換。作業(yè):P40:2.1題的 1014;2.2題的 68課 題:2.4關(guān)系運(yùn)算、邏輯運(yùn)算教學(xué)目標(biāo):通過(guò)本堂講授,使學(xué)生掌握C語(yǔ)言關(guān)系運(yùn)算、
36、邏輯運(yùn)算的基本規(guī)則和其運(yùn)算過(guò)程教學(xué)重點(diǎn):關(guān)系運(yùn)算、邏輯運(yùn)算在現(xiàn)實(shí)問(wèn)題中的運(yùn)用教學(xué)難點(diǎn):關(guān)系運(yùn)算和邏輯運(yùn)算的實(shí)質(zhì)意義教 法:講授法所用課時(shí):2節(jié)授課班級(jí):網(wǎng)絡(luò)45教學(xué)過(guò)程:復(fù)習(xí)上堂內(nèi)容活動(dòng):1提問(wèn):將如下表達(dá)式轉(zhuǎn)換為合法的復(fù)合賦值表達(dá)式:y=y%(4+x)將如下復(fù)合賦值表達(dá)式轉(zhuǎn)換為一般形式:a/=b-3程序段:int a; float s=9; a=s%4;是否合法,若有錯(cuò),將如何將其改正?語(yǔ)句:#define PI 3 main() int a; PI+; a=PI;printf(“a=%d”,a); 是否有錯(cuò),若有錯(cuò),錯(cuò)在哪里?若:int a=4;char t=0; float d=9; 則
37、表達(dá)式:19*a-t/d的值類(lèi)型是什么?2講解,并引入今天課題一、關(guān)系運(yùn)算關(guān)系運(yùn)算是指數(shù)據(jù)之間的關(guān)系(比如數(shù)間的大小等),關(guān)系運(yùn)算的結(jié)果要么為真,要么為假,若為真就用1表示,為假就用0表示。1關(guān)系運(yùn)算符< 、<=、 >、 >=、 =、 != 優(yōu)先級(jí)相同 優(yōu)先級(jí)相同 高 低需要說(shuō)明的是,關(guān)系運(yùn)算符=是“比較等”,也就是說(shuō),兩個(gè)運(yùn)算量通過(guò)比較看是否相等?運(yùn)算結(jié)果要么為真/1,要么為假/0,它完全不同于賦值運(yùn)算符=,賦值運(yùn)算是將右值賦給左部變量,賦值運(yùn)算符沒(méi)有比較的意思,一定要搞清楚它們的用法區(qū)別。說(shuō)明:見(jiàn)課本:P34中間(1)-(3)例:如下面每組表達(dá)式是等價(jià)的: b<
38、;=a*2 與 b<=(a*2) a =b>7 與 a=(b>7) a=b>c 與 a=(b>c)2關(guān)系表達(dá)式用關(guān)系運(yùn)算符將兩個(gè)表達(dá)式連接起來(lái)的式子叫關(guān)系表達(dá)式。關(guān)系表達(dá)式的值是1或0。試分析下面表達(dá)式的值。說(shuō)明:關(guān)系表達(dá)式的值為真時(shí)用1表示,為假時(shí)用0表示。(1)若a = 3 , b = 2 , c = 1,則下列表達(dá)式的值分別為多少? (a > b )= = c b + c < a f = a < b > c 分析:(a>b)=c b + c < a f=a < b > c 1 =1 3 < 3 0 >
39、; 1 0 0 0 所以f=0。(2)表達(dá)式(a=3)>(b=5)的值是多少?(3)表達(dá)式c!=C的值是多少?例 2-15 該程序演示關(guān)系運(yùn)算符的運(yùn)用。(見(jiàn)書(shū)P35頁(yè))main( ) int a=3,b=2; printf(%d,%d,%d,%d,%d,%d,a<b,a<=b,a>b,a>=b,a=b,a!=b);運(yùn)行結(jié)果:0,0,1,1,0,1二、 邏輯運(yùn)算1邏輯運(yùn)算符邏輯運(yùn)算表示兩個(gè)數(shù)據(jù)或表達(dá)式之間的邏輯關(guān)系??陕?lián)系到現(xiàn)實(shí)中邏輯關(guān)系的運(yùn)用。C提供的邏輯運(yùn)算符有三個(gè),它們分別是:&&(邏輯與) |(邏輯或) !(邏輯非)邏輯運(yùn)算的結(jié)果也只有真和假
40、,即:1和0。它們的運(yùn)用情況看表2.6。表2.6 邏輯運(yùn)算的真值情況數(shù)值情況運(yùn)算及結(jié)果ab!a!ba && ba | b001100011001100101110011關(guān)于邏輯運(yùn)算的符的使用說(shuō)明:見(jiàn)課本P36上面開(kāi)始。(1)&&是雙目運(yùn)算符,僅當(dāng)兩個(gè)操作數(shù)都為真時(shí),其運(yùn)算值才為真,否則為假;(2)|也是雙目運(yùn)算符,其操作數(shù)中只要有一個(gè)為真,則整個(gè)運(yùn)算值為真,否則為假;(3)!是單目運(yùn)算符,其運(yùn)算值是取操作數(shù)的相反邏輯值。優(yōu)先級(jí)及結(jié)合性說(shuō)明:說(shuō)明: &&和|的優(yōu)先級(jí)低于關(guān)系運(yùn)算符,但!高于算術(shù)運(yùn)算符;邏輯表達(dá)式中的邏輯量,若不是0,則認(rèn)為該量為真;
41、邏輯運(yùn)算符!的結(jié)合性為“從右向左”,&&和|的結(jié)合性仍是“左結(jié)合性”。邏輯運(yùn)算符的優(yōu)先級(jí)情況是這樣的:高低 | && ! 優(yōu)先級(jí) 由以上可知,下面是等效的C語(yǔ)言寫(xiě)法:(x>y)&&(9<5) 與 x>y && 9<5(a+b)|(c=d) 與 a+b | c=d(a>c)|(!d) 與 a>c | !d2邏輯表達(dá)式若a = 5,b = 3試分析下面表達(dá)式的邏輯值是多少? 5 > 3 && 2 | 7 < 4 - ! 0分析:計(jì)算機(jī)對(duì)該表達(dá)式的執(zhí)行先后順序大致如下:第一
42、步 5 > 3 && 2 | 7 < 4 - ! 0 第二步: 5 > 3 && 2 | 7 < 4 - 1 第三步: 5 > 3 && 2 | 7 < 3 第四步: 1 && 2 | 7 < 3第五步: 1 && 2 | 0第六步: 1 | 0第七步: 1所以表達(dá)式最后結(jié)果是:1畫(huà)龍點(diǎn)睛用合法的C語(yǔ)言描述下列命題: a和b中有一個(gè)大于c; a不能被b整除;判斷某年year是否為閏年;(提示:某年若是閏年,則必須符合下列條件之一:.該年可以被4整除,但不能被100整除;.該
43、年可以被400整除)解: a>c | b>c 或 (a>c)|(b>c) a % b!= 0(year % 4 = 0 && year % 100 != 0) | (year % 400 = 0)若該表達(dá)式成立,則該年為閏年。特殊說(shuō)明:需要提出的是,在邏輯表達(dá)式的求解過(guò)程中,并不是所有的邏輯量、運(yùn)算符都被執(zhí)行,只是必須執(zhí)行該邏輯量才能求出整個(gè)表達(dá)式的解時(shí),才執(zhí)行該運(yùn)算量或運(yùn)算符。例如: 表達(dá)式1&&表達(dá)式2中,若表達(dá)式1為0,則計(jì)算機(jī)不再考慮表達(dá)式2的值的情況,也就是說(shuō)表達(dá)式不再執(zhí)行。例:int a=5,b=9,s; s=(a-=5)&a
44、mp;&+b;計(jì)算機(jī)執(zhí)行該程序段后,s=?,a=?,b=?a && b && c 只有a為非零值時(shí),才需判斷邏輯量b的值,只有a和b都為真的情況下才需考慮c的值。如果a為假,則就不用判斷b和c的值了,因?yàn)檫@是與運(yùn)算,整個(gè)表達(dá)式的值已經(jīng)可以確定為假了。同樣的道理,對(duì)于邏輯或,如:a|b|c 只要a為真,不需再判斷b和c了,就能確定整個(gè)表達(dá)式的值為真。思考:若a=9,b=10,c=1,d=7,x=8,y=15 ,則計(jì)算機(jī)執(zhí)行了語(yǔ)句:m=(x=a>b) && (y=c<d);后,m和y的值分別是多少?小結(jié)1 關(guān)系運(yùn)算符及其運(yùn)算規(guī)律;
45、2 理解關(guān)系運(yùn)算在現(xiàn)實(shí)中的運(yùn)用;3 邏輯運(yùn)算符及邏輯表達(dá)式的用途;4 深刻理解邏輯運(yùn)算在現(xiàn)實(shí)生活中的運(yùn)用。作業(yè)P41 15小題,填空題的9-15課 題:2.5幾種特殊的運(yùn)算符及表達(dá)式教學(xué)目標(biāo):通過(guò)本堂講授,使學(xué)生掌握逗號(hào)表達(dá)式和條件表達(dá)式的用法,同時(shí)理解順序程序設(shè)計(jì)的基本思想。教學(xué)重點(diǎn):條件運(yùn)算符的運(yùn)算機(jī)理及順序程序設(shè)計(jì)的方法教學(xué)難點(diǎn):條件運(yùn)算符的靈活運(yùn)用教 法:講授法所用課時(shí):2節(jié)授課班級(jí):網(wǎng)絡(luò)45教學(xué)過(guò)程:復(fù)習(xí)上堂內(nèi)容活動(dòng):1提問(wèn):寫(xiě)出:“A小于B或小C”的C語(yǔ)言表達(dá)式;寫(xiě)出:“a和b中有一個(gè)小于c”的C語(yǔ)言表達(dá)式;寫(xiě)出:“a不能被b整除”的C語(yǔ)言表達(dá)式若有:a=3,b=4,c=5,則表達(dá)
46、式:?。╝>b)&&!c|1的值為多少?2引入本堂內(nèi)容一、逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式逗號(hào)運(yùn)算符主要用于連接表達(dá)式。例如:a=a+1,b=3*4;用逗號(hào)運(yùn)算符連接起來(lái)的表達(dá)式稱(chēng)為逗號(hào)表達(dá)式。它的一般形式為: 表達(dá)式1,表達(dá)式2,表達(dá)式n;逗號(hào)表達(dá)式的運(yùn)算過(guò)程是:先算表達(dá)式1,再算表達(dá)式2,依次算到表達(dá)式n。整個(gè)逗號(hào)表達(dá)式的值是最后一個(gè)表達(dá)式的值。逗號(hào)表達(dá)式的結(jié)合性從左向右,它的優(yōu)先級(jí)是最低的。如:b=(a=4,3*4,a*2)它的運(yùn)算過(guò)程是:a=4 > 3*4 >a*2 > b=a*2二、 條件運(yùn)算符和條件表達(dá)式 條件運(yùn)算符是C語(yǔ)言的唯一的三目運(yùn)算符,即它需要
47、3個(gè)數(shù)據(jù)或表達(dá)式構(gòu)成條件表達(dá)式。它的一般形式為: 表達(dá)式1?表達(dá)式2:表達(dá)式3 如果表達(dá)式1成立,則表達(dá)式2的值是整個(gè)表達(dá)式的值,否則表達(dá)式3的值是整個(gè)表達(dá)式的值。如圖所示: 今后要學(xué)習(xí)的if-else結(jié)構(gòu)可以替換條件運(yùn)算符,但是條件運(yùn)算符不能替換所有的if-else結(jié)構(gòu)。只有當(dāng)if-else結(jié)構(gòu)為兩個(gè)分支情況,并且都給同一個(gè)變量賦值時(shí)才可以用條件運(yùn)算符替換,關(guān)于這點(diǎn),今后再慢慢體會(huì)。 例如,將a,b兩個(gè)變量中大者放到變量max中,我們可以利用條件運(yùn)算這樣來(lái)完成:max=a>b?
48、 a:b條件運(yùn)算符的結(jié)合方向?yàn)閺挠彝蟆?#160;例如: a > b ? a : b > c ? b : c 等價(jià)于a>b ? a : (b > c ? b:c)例 1 該程序的功能是求三個(gè)數(shù)中的最大數(shù)。代碼:main( )int a,b,c,max; scanf(%d,%d,%d,&a,&b,&c);max=a>(b>c?b:c)? a :(b>c?b:c); printf(a=%d,b=%d,c=%d,max=%dn,a,b,c,max);執(zhí)行情況:3,4,5<回車(chē)>運(yùn)行結(jié)果:a=3,b=4,c=5,max=5
49、例2 從鍵盤(pán)上輸入學(xué)生的三門(mén)成績(jī),求其總成績(jī)和平均成績(jī)。小結(jié)1逗號(hào)運(yùn)算符及逗號(hào)表達(dá)式;2條件運(yùn)算符及條件表達(dá)式;3順序程序設(shè)計(jì)的基本過(guò)程;作業(yè)P41 2.1 2.22.42.5(作業(yè)本上做)上機(jī)作業(yè):理解驗(yàn)證題1P28 例:2-12 2P31 例:2-133編程理解驗(yàn)證題:P37 思考題。試驗(yàn)項(xiàng)目:運(yùn)算符的合理用法及順序程序設(shè)計(jì)方法試驗(yàn)?zāi)康模和ㄟ^(guò)本次實(shí)驗(yàn)使學(xué)生熟練掌握各種運(yùn)算符的特征及合理應(yīng)用,同時(shí)掌握順序程序設(shè)計(jì)的思想及編程方法。試驗(yàn)重點(diǎn):仔細(xì)理解揣測(cè)程序中各語(yǔ)句的真正作用及運(yùn)行結(jié)果的由來(lái)試驗(yàn)難點(diǎn):C編譯器的熟練運(yùn)用不夠施用班級(jí):網(wǎng)絡(luò)45試驗(yàn)內(nèi)容:一、驗(yàn)證理解內(nèi)容1通過(guò)調(diào)試程序,仔細(xì)分析增量運(yùn)算在不同場(chǎng)景下的使用的不同。代碼:main() int a,b,c,d,e,f; a=b=c=d=10; a+; +b; c-; -d; printf(a=%d b=%d c=%d d=%dn,a,b,c,d);/*注意輸出后換行*/ e=a+;f=+b; /*認(rèn)真分析e,f的結(jié)果是否相同*/ printf(a=%d b=%d e=%d f=%d,a,b,e,f);2通過(guò)調(diào)試程序,分析運(yùn)算符/和%的用法特點(diǎn)及其區(qū)別。代碼:main( ) int a,b; float c; a=5/3; c=5/3.0; b=5%3; /*注意%運(yùn)算符要求操作數(shù)必須為整型
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023三年級(jí)英語(yǔ)下冊(cè) Unit 1 Animals on the farm(Again Please)說(shuō)課稿 冀教版(三起)
- 8的乘法口訣(說(shuō)課稿)-2024-2025學(xué)年二年級(jí)上冊(cè)數(shù)學(xué)北京版
- 2024年九年級(jí)語(yǔ)文上冊(cè) 第四單元 第15課《少年中國(guó)說(shuō)》說(shuō)課稿 北京課改版
- 16 麻雀 第一課時(shí) 說(shuō)課稿-2024-2025學(xué)年語(yǔ)文四年級(jí)上冊(cè)統(tǒng)編版
- 2024年春七年級(jí)語(yǔ)文下冊(cè) 第二單元 8 木蘭詩(shī)說(shuō)課稿 新人教版
- 1 折彩粽(說(shuō)課稿)蘇教版二年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)001
- Unit 4 My home Part B Lets learn(說(shuō)課稿)-2024-2025學(xué)年人教PEP版英語(yǔ)四年級(jí)上冊(cè)
- 2025樓房承包合同協(xié)議模板
- 2025家居裝修工程施工合同范文
- 2025房地產(chǎn)銷(xiāo)售代理合同范本
- 2024年6月浙江省高考地理試卷真題(含答案逐題解析)
- 物業(yè)管理服務(wù)應(yīng)急響應(yīng)方案
- 醫(yī)院培訓(xùn)課件:《如何撰寫(xiě)護(hù)理科研標(biāo)書(shū)》
- 風(fēng)車(chē)的原理小班課件
- 河南省鄭州市2023-2024學(xué)年高二上學(xué)期期末考試 數(shù)學(xué) 含答案
- 2024年山東省濟(jì)南市中考英語(yǔ)試題卷(含答案)
- 2024年北師大版八年級(jí)上冊(cè)全冊(cè)數(shù)學(xué)單元測(cè)試題含答案
- 江蘇省南京市第二十九中2025屆數(shù)學(xué)高二上期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)模擬試題含解析
- 六年級(jí)數(shù)學(xué)競(jìng)賽試題及答案(六套)
- 八年級(jí)下學(xué)期期末考試語(yǔ)文試題(PDF版含答案)
- 浙教版八年級(jí)下冊(cè)科學(xué)第一章 電和磁整章思維導(dǎo)圖
評(píng)論
0/150
提交評(píng)論