![C語言程序設計:2 用C語言編寫程序_第1頁](http://file4.renrendoc.com/view/a5d87ef4b95883b03f70a80a8b8d6bf6/a5d87ef4b95883b03f70a80a8b8d6bf61.gif)
![C語言程序設計:2 用C語言編寫程序_第2頁](http://file4.renrendoc.com/view/a5d87ef4b95883b03f70a80a8b8d6bf6/a5d87ef4b95883b03f70a80a8b8d6bf62.gif)
![C語言程序設計:2 用C語言編寫程序_第3頁](http://file4.renrendoc.com/view/a5d87ef4b95883b03f70a80a8b8d6bf6/a5d87ef4b95883b03f70a80a8b8d6bf63.gif)
![C語言程序設計:2 用C語言編寫程序_第4頁](http://file4.renrendoc.com/view/a5d87ef4b95883b03f70a80a8b8d6bf6/a5d87ef4b95883b03f70a80a8b8d6bf64.gif)
![C語言程序設計:2 用C語言編寫程序_第5頁](http://file4.renrendoc.com/view/a5d87ef4b95883b03f70a80a8b8d6bf6/a5d87ef4b95883b03f70a80a8b8d6bf65.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第2章 用C語言編寫程序主要內(nèi)容溫度值轉(zhuǎn)換計算分段函數(shù)輸出華氏-攝氏溫度轉(zhuǎn)換表生成乘方表與階乘表教學目標、重點和難點教學目標掌握 C 語言程序的一般結(jié)構(gòu)及編寫方法掌握C語言中常量、變量、數(shù)據(jù)類型、算術(shù)運算、賦值運算、關(guān)系運算符等,以及格式化輸入、輸出函數(shù)的應用了解順序、選擇和循環(huán)三種基本的程序結(jié)構(gòu)理解函數(shù)的定義和函數(shù)的調(diào)用教學重點C語言程序的基本構(gòu)成格式化輸入、輸出函數(shù)的使用C語言的基本語法、三種基本程序結(jié)構(gòu)教學難點三種基本的程序結(jié)構(gòu)以及自定義函數(shù)#include int main() 問題:求華氏溫度 100F 對應的攝氏溫度算法:攝氏溫度 C=5*(F-32)/9。int ss, hs;
2、/變量定義hs= 100; /變量賦值ss = 5*(hs - 32) /9; printf(華氏 = %d, 攝氏 = %dn, hs, ss);return 0;程序能處理的數(shù)據(jù)包括:字符、數(shù)值、聲音、圖像等,不同的數(shù)據(jù)有不同的編碼規(guī)則和格式,從而形成不同的類型;數(shù)據(jù)類型總表短整型(short int)整型(int)長整型(long int)字符型(char)程序中的數(shù)據(jù)數(shù)據(jù)類型基本類型構(gòu)造類型指針類型空類型(void)整型實型單精度型(float)雙精度型(double)數(shù)組類型()結(jié)構(gòu)體(struct)共用體(union)枚舉(emum)類型Dev Cchar1 Byte0255 0
3、(28-1)short int2 Byte-3276832767 -215(215-1)int4 Byte-2 147 483 648 -2 147 483 647 -231(231-1)long int4 Byte-2 147 483 648 -2 147 483 647 -231(231-1)float4 Byte約(10-381038),6位有效數(shù)字double8 Byte約(10-30810308), 15位有效數(shù)字數(shù)據(jù)類型數(shù)據(jù)類型決定數(shù)據(jù)所占內(nèi)存字節(jié)數(shù)數(shù)據(jù)的取值范圍數(shù)據(jù)可參與的運算Dev C中基本類型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)定義:值在程序執(zhí)行時允許改變的量。C語言程序中的變量必須“先
4、定義,后使用”;變量定義即確定變量名和類型。變量定義的一般格式數(shù)據(jù)類型 變量名1,變量名2,變量名n;變量初始化變量定義時賦初值說明:變量例如: int a,b,c; float data; double r1,r2;例如: int a=1,b=1,c=3; float data=1.2; double r1=1.0,r2;能否:int a=b=1;NO變量名命名遵循“標識符”規(guī)則;同一函數(shù)內(nèi),每個變量都有唯一的名字,不能重復定義。變量與內(nèi)存的關(guān)系程序編譯、運行時,系統(tǒng)將自動根據(jù)變量的類型為變量在內(nèi)存中分配由其類型確定的字節(jié)數(shù)的連續(xù)的內(nèi)存單元;變量例如: short a=1; 1a200020
5、01內(nèi)存單元內(nèi)存地址變量的值a=a+2;變量名3從變量中取值,實際上就是通過變量名找到相應的內(nèi)存單元,并從該內(nèi)存單元讀取數(shù)據(jù)。變量名即代表其分配的內(nèi)存單元,變量的值即內(nèi)存單元中存放的數(shù)據(jù),內(nèi)存單元是確定的,其中的數(shù)據(jù)是可變的;整型常量十進制:由數(shù)字09和正負號組成.如123,-456,0八進制:由數(shù)字0開頭,后跟數(shù)字07組成.如0123, 072十六進制:由0 x開頭,后跟09,af,AF組成. 如0 x123, 0XaF實型常量小數(shù)形式:必須有小數(shù)點。如:0.12 .12 0.0 123.指數(shù)形式:系數(shù)e(或E)指數(shù)。如:0. 12e3 1E-2 1.2e4 e前有數(shù)字,e后為整數(shù) 例如:e
6、-5、1.2E3.5數(shù)值常量例題:以下表示錯誤的整型常量有+123、086、-3F、-0 x01af、0Xe1g算術(shù)運算與賦值運算基本算術(shù)運算符+、 - 、*、 /、 %(求余)說明“-”為單目運算符時,表示取負;兩整數(shù)相除,結(jié)果為整數(shù),舍去小數(shù)部分;%要求兩側(cè)均為整型數(shù)據(jù);一個為浮點數(shù),則運算結(jié)果為double型;例如:5%2 = 1%5 = 5%1 = 5.5%2例如:5/2 = -5/3 = 1/3 =2-1例如:b=1; a=-b+1; 110運算后:a=0,b=10算術(shù)運算與賦值運算簡單賦值運算符符號:=格式:變量=表達式作用:將表達式的運算結(jié)果賦給變量。說明左側(cè)必須是變量,不能是常
7、量或表達式。賦值表達式的值等于變量的值 。賦值運算允許嵌套,運算方向:自右向左。例如:int a,b; a=65; b=(a*2+10)/3; /b= ?46例如:int a,b,c; a=b=c=1;例如: int a,b,c; a=(b=4)+(c=6) /a=10,b=4,c=6,表達式的值為10能否a=(b=c)=1;算術(shù)運算與賦值運算例題:輸入一個3位整數(shù),計算每位數(shù)字之和。 #include int main ( ) int n,a,b,c,sum; printf(Input n: ); scanf (%d, &n ); a= ; b= ; c= ; sum=a+b+c; prin
8、tf(n=%d,sum=%dn,n,sum); return 0; n/100n%100/10n%10格式化輸出函數(shù) printf 格式1:printf (字符串) ;原樣輸出字符串例如:格式2:printf (格式符串 ,數(shù)據(jù)表) ;按格式要求輸出數(shù)據(jù)表中對應的數(shù)據(jù)(表達式的計算結(jié)果)。數(shù)據(jù)表中的數(shù)據(jù)個數(shù)須與%格式符的個數(shù)保持一致。格式串中的非格式符原樣輸出。#include void main( ) printf(tc語言學習無捷徑,n多看多練是正道!n);#include void main( ) int a=1; double b=2.0; printf(%d+%lf=%lfn,a,b
9、,a+b);第2章 用C語言編寫程序主要內(nèi)容溫度值轉(zhuǎn)換計算分段函數(shù)輸出華氏-攝氏溫度轉(zhuǎn)換表生成乘方表與階乘表問題:計算分段函數(shù)例題:輸入用戶的月用水量x,分段計算水費,輸出該用戶應支付的水費y(保留2位小數(shù))。 計算函數(shù):#include int main( ) 問題:計算分段函數(shù)程序:double x, y; /*定義變量*/printf(x(x=0):); /*輸入提示 */scanf(%lf, &x); /*調(diào)用scanf函數(shù)*/if( x = 15 ) /*if else語句 */ y = 4 * x / 3; else y = 2.5 * x - 10.5; printf(f(%lf
10、) = %.2lf n, x, y); return 0;.n 表示保留n位小數(shù)(n為整數(shù))關(guān)系運算符及其優(yōu)先次序 (小于) (大于)= (大于或等于)= = (等于)! = (不等于)關(guān)系運算表達式用關(guān)系運算符將兩個表達式連接起來的式子.關(guān)系表達式的計算結(jié)果為1或0(1:真/0:假)優(yōu)先級相同優(yōu)先級相同算術(shù)運算符賦值運算符高低關(guān)系運算例如:53 結(jié)果為真(1) 55 結(jié)果為假(0) 例如:35、k%5=0、a+b!=c*d例如:課堂練習int a,b,x=3;a=x0;b=xb=cf2=b+c!=af3=abc/f1=1/f2=0/f3=0賦值表達式:a=3輸出3if-else 語句形式說明
11、條件表達式為非0值則表示“真”,0值則表示“假”條件為真,執(zhí)行語句A (一條語句:簡單語句或復合語句) ; 否則執(zhí)行語句B (一條語句:簡單語句或復合語句) 。若條件不成立情況下不作處理,則else子句可以缺省。ifelse語句if (條件) 語句A;else 語句B;非0條件語句A0語句B;程序試分析以下程序的輸出#include stdio.hvoid main() int a=6,b=0,c=0; if( a%20 ) b = b + a; c = c + 1; a = a + 1; if( a%20 ) b = b + a; c = c + 1; a = a + 1; printf (
12、%d,%d,%dn, a, b, c);復合語句else子句缺省/求100以內(nèi)能被3整除的數(shù)的個數(shù)及和。#include void main() int k=1, c=0,s=0; while(k=100) if( ) s=s+ k; c=c+1; k=k+1; printf(“c=%d,s=%dn”,c,s);復合語句格式 語句1; 語句2; 語句n; 說明從語法的角度看,相當于一條語句;復合語句可嵌套;k%3=0格式化輸入函數(shù) scanf格式:scanf (格式符串 ,輸入項地址表 ) ;依次按格式要求輸入數(shù)據(jù)并賦給對應的變量.格式符組成形式:輸入項地址表: &變量1,&變量2, &變量3
13、說明以空格/回車/TAB/非法輸入作為每項數(shù)據(jù)輸入的結(jié)束。格式串中的非格式字符要求原樣輸入。% 格式字符scanf(a=%d b=%d, &a,&b)輸入應為: a=3 b=4 若輸入3 4則a、b數(shù)據(jù)錯誤!scanf(%d,%d,&a,&b)輸入應為:3,4 若輸入3 4則b錯誤!第2章 用C語言編寫程序主要內(nèi)容溫度值轉(zhuǎn)換計算分段函數(shù)輸出華氏-攝氏溫度轉(zhuǎn)換表生成乘方表與階乘表輸出華氏-攝氏溫度轉(zhuǎn)換表問題:輸入華氏溫度的取值范圍lower, upper,輸出華氏攝氏溫度轉(zhuǎn)換表,每次增加1度。程序#include void main() int hs,lower,upper; printf(輸入
14、華氏溫度范圍a,b: ); scanf(%d,%d,&lower,&upper); printf(華氏溫度 - 攝氏溫度n); for(hs=lower ; hs=upper ; hs+) printf(%8d - %8.1fn,hs, );hs+ 等價于 hs=hs+1表達式2表達式1循環(huán)體語句表達式3for循環(huán)語句語句一般形式for(表達式1 ; 表達式2 ; 表達式3) 循環(huán)體語句執(zhí)行流程表達式2表達式1循環(huán)體語句非00表達式3循環(huán)變量值修改循環(huán)變量賦初值循環(huán)控制條件一條語句1234; /空語句一條簡單或復合語句程序#include void main() int hs,lower,up
15、per; printf(輸入華氏溫度范圍a,b: ); scanf(%d,%d ,&lower,&upper); printf(華氏溫度 - 攝氏溫度n); for(hs=lower ; hs=upper ; hs+) printf(%8d - %8.1fn,hs, );5.0/9*(hs-32)輸出華氏-攝氏溫度轉(zhuǎn)換表按照固定8位寬度顯示hs=upperhs=lowerprintf()hs+程序#include void main() int hs,lower,upper; printf(輸入華氏溫度范圍a,b: ); scanf(%d,%d,&lower,&upper); printf(華
16、氏溫度 - 攝氏溫度n); for(hs=lower ; hs=upper ; hs+) printf(%8d - %8.1fn,hs, ); 輸出華氏-攝氏溫度轉(zhuǎn)換表double ss;ss = 5.0/9*(hs-32);ss 例題:計算1-1/3+1/5-1/7前n項的和。分析求前n項和,每次累加1項,則需要循環(huán)n次;設循環(huán)變量 i, i 表示循環(huán)的次數(shù),s表示累加和,則循環(huán)用for語句可表示為: for(i=1;i=n;i+) s=s+第i項;設第i項為item,將累加項的符號單獨考慮,設為flag,則:item=flag*1.0/deno;因每項的符號正負交替變化,第1項為正,則fl
17、ag=1;每次循環(huán)執(zhí)行flag=-1*flag使之反號,deno表示每一項的分母,第1項為1,每次循環(huán)遞增2,即:deno=deno+2;也可以通過deno與i之間的關(guān)系來確定deno的變化規(guī)律,表示成表達式即為:deno = 2*i 1;例題:計算1-1/3+1/5-1/7前n項的和。算法流程圖定義s=0,n,i,flag,deno輸入ni=1, flag=1, deno=1;i = ns=s+flag*(1.0/deno)flag = -1* flagi = i+1輸出sdeno = deno + 2程序#include void main() int n, i, flag , deno;
18、double s=0.0;scanf(%d,&n);flag=1 , deno=1 ;printf(s=%lfn, s);for( i=1 ; i=n ; i+ ) s=s+flag*1.0 / deno; flag= -1* flag; deno = deno +2; (2*i-1);程序#include void main() 例題:計算1-1/3+1/5-1/7前n項的和。int n,i,flag;double s=0.0;printf(輸入n:);scanf(%d,&n);flag=1;printf(s=%lfn, s);for( i=1 ; i=2*n-1 ; ) s=s+flag
19、* ( ); flag= -flag; 算法流程圖定義s=0,n,i,flag輸入ni=1,flag=1;i = 2*n-1i =i+2輸出ss=s+flag* 1.0 / iflag = - flag1.0 / ii=i+2課堂練習:2-15(P38)程序#include int main() int n, i, flag = 1; double s=0.0; printf(輸入n:); scanf(%d,&n); for( i=1 ; i=n; i+ ) s=s+flag*(1.0/(3*i-2); flag= -flag; printf(s=%lfn, s); return 0;#inc
20、lude void main() int n, i, flag=1, item = 1; double s=0.0; printf(輸入n:); scanf(%d,&n); for( i=1 ; i=n; i+ ) s=s+flag*(1.0/item); flag= -flag; item=item+3; printf(s=%lfn, s);第2章 用C語言編寫程序主要內(nèi)容溫度值轉(zhuǎn)換計算分段函數(shù)輸出華氏-攝氏溫度轉(zhuǎn)換表生成乘方表與階乘表生成乘方表與階乘表問題1:輸入正整數(shù)n,調(diào)用pow()函數(shù)生成2的乘方表程序#include void main() int i,n; double power; printf(輸入n: ); scanf(%d,&n); for(i=0 ; i=n ; i+) power=pow(2,i); printf(pow(2,%d)=%.0fn, i, power ); /pow(x,y) : 求xy的庫函數(shù)#include /數(shù)學函數(shù)庫頭文件常用數(shù)學庫函數(shù)平方根函數(shù) sqrt(x) 絕對值函數(shù) fabs(x)fabs(-3.56) 的值為3.56冪函數(shù) pow(x, y) :xypow(1.1, 2) 的值為1.21(即1.12)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球工業(yè)彩色標簽打印機行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球嵌入式格柵熒光燈行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國電腦鎮(zhèn)痛泵行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國可編程玩具行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 四川省宜賓市高三“二診”測試語文試題(含答案)
- 2025商場地產(chǎn)景區(qū)蛇年元宵節(jié)情人節(jié)發(fā)財(好巳花生主題)活動策劃方案
- 物流協(xié)議合同
- 智能環(huán)保設備研發(fā)生產(chǎn)合同
- 2025委托代銷合同樣本新范文
- 三方消防工程合同
- 《聚焦客戶創(chuàng)造價值》課件
- 公安校園安全工作培訓課件
- PTW-UNIDOS-E-放射劑量儀中文說明書
- 保險學(第五版)課件全套 魏華林 第0-18章 緒論、風險與保險- 保險市場監(jiān)管、附章:社會保險
- 許小年:淺析日本失去的30年-兼評“資產(chǎn)負債表衰退”
- 典范英語2b課文電子書
- 17~18世紀意大利歌劇探析
- β內(nèi)酰胺類抗生素與合理用藥
- 何以中國:公元前2000年的中原圖景
- 第一章:公共政策理論模型
- GB/T 4513.7-2017不定形耐火材料第7部分:預制件的測定
評論
0/150
提交評論