C語言程序設(shè)計(jì)基礎(chǔ)——輸入輸出函數(shù) 變量定義、使用、賦值 算術(shù)運(yùn)算_第1頁(yè)
C語言程序設(shè)計(jì)基礎(chǔ)——輸入輸出函數(shù) 變量定義、使用、賦值 算術(shù)運(yùn)算_第2頁(yè)
C語言程序設(shè)計(jì)基礎(chǔ)——輸入輸出函數(shù) 變量定義、使用、賦值 算術(shù)運(yùn)算_第3頁(yè)
C語言程序設(shè)計(jì)基礎(chǔ)——輸入輸出函數(shù) 變量定義、使用、賦值 算術(shù)運(yùn)算_第4頁(yè)
C語言程序設(shè)計(jì)基礎(chǔ)——輸入輸出函數(shù) 變量定義、使用、賦值 算術(shù)運(yùn)算_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、C語言程序設(shè)計(jì)基礎(chǔ)劉新國(guó)1實(shí)驗(yàn)課主要問題Dev-C使用使用Dev-C 5.1以上版本進(jìn)入Windows 7系統(tǒng)不要進(jìn)入XP系統(tǒng),它只有4.9版本在32位的計(jì)算機(jī)上選擇32位的編譯模式2實(shí)驗(yàn)課主要問題代碼編寫習(xí)慣縮進(jìn),對(duì)齊,大小寫if 語句縮進(jìn)if( ab ) max = a; else max = b;語句 max = a 和 max = b必須往右縮進(jìn)去縮進(jìn)的空格數(shù)量可以自己決定,一般為4個(gè)空格,而且整個(gè)文件統(tǒng)一。3實(shí)驗(yàn)課主要問題for 語句縮進(jìn)for ( i = 1; i 100; i+ ) sum = sum + i;for的循環(huán)體語句必須往右縮進(jìn)去如果循環(huán)體語句是復(fù)合語句,括號(hào) 和fo

2、r縱向?qū)Rfor ( k = 1; k n; k+ ) sum = flag * k; flag = - flag;4第二章用C語言編寫程序 2.1 在屏幕上顯示 Hello World!2.2 求華氏溫度 100F 對(duì)應(yīng)的攝氏溫度2.3 計(jì)算分段函數(shù)2.4 輸出華氏攝氏溫度轉(zhuǎn)換表2.5 生成乘方表與階乘表 52.1 在屏幕上顯示Hello World! 例2-1 在屏幕上顯示一個(gè)短句:Hello World!62.1 在屏幕上顯示Hello World!/* 顯示 Hello World! */# include int main(void) printf(“Hello World! n”)

3、; return 0;1.任何程序都有主函數(shù)2.程序由若干語句組成3.語句由;結(jié)束注釋文本 主函數(shù)輸出函數(shù)換行符; 語句結(jié)束符編譯預(yù)處理命令7問:下面語句的輸出有何不同?printf(“Hello worldn”);printf(“Hellon worldn”);不可見字符:換行符n空格符制表符8練習(xí)2-3:輸出一個(gè)倒三角圖案 * * * * * * * * * *92.2 求華氏溫度 100F 對(duì)應(yīng)的攝氏溫度 5 x ( f 32 )攝氏溫度 c = - 9102.2.1 程序解析: C=5(F-32)/9#include int main(void) int celsius, fahr;

4、fahr = 100; celsius = 5 * (fahr - 32) / 9; printf(fahr = %d, celsius = %dn, fahr, celsius); return 0;11常量:在程序運(yùn)行過程中 其值不能改變 變量:在程序運(yùn)行過程中 其值可以改變 變量的定義變量定義的一般形式:類型名 變量名表;例如:int celsius, fahr; 定義整型變量float x; 定義單精度浮點(diǎn)型變量double area, length; 定義雙精度浮點(diǎn)型變量變量名代表內(nèi)存中的一個(gè)存儲(chǔ)單元存儲(chǔ)變量的值存儲(chǔ)單元的內(nèi)存大小由類型決定int(4字節(jié)),float(4字節(jié)),do

5、uble(8字節(jié))double比float字節(jié)多,精度高,取值范圍大 12變量名字要合適,做到:簡(jiǎn)潔、顧名思義變量命名規(guī)則簡(jiǎn)潔、顧名思義單詞,通用縮寫:year,abs(absolute縮寫)整數(shù):i,j,k,n等 (小范圍內(nèi)的局部變量)浮點(diǎn)數(shù):x,y,z等min-length & max-information原則避免依賴大小寫區(qū)分的相似標(biāo)識(shí)符例如:float x, X; /* 不可取 */變量名一般使用“名詞”或“形容詞名詞”例如:float value, oldValue, newValue;函數(shù)名一般使用“動(dòng)詞”或“動(dòng)詞名詞”(動(dòng)賓詞組)風(fēng)格保持一致13變量的定義與使用#include

6、 int main(void) int celsius, fahr; fahr = 100; celsius = 5 * (fahr - 32) / 9; printf(fahr = %d, celsius = %dn, fahr, celsius); return 0;變量只能定義一次函數(shù)內(nèi)部首先定義變量應(yīng)該先賦值,后引用14演示:編寫程序運(yùn)行結(jié)果2.2.3 算術(shù)運(yùn)算和賦值運(yùn)算1、算術(shù)運(yùn)算+、-、*、/、%(取模、余數(shù))算術(shù)表達(dá)式:用算術(shù)運(yùn)算符,將運(yùn)算對(duì)象連接起來的式子。( 按照C語言語法規(guī)則)數(shù)學(xué)式:s(s-a)(s-b)(s-c) C表達(dá)式:s*(s-a)*(s-b)*(s-c)數(shù)學(xué)式:

7、5(fahr-32)/9C表達(dá)式:5*(fahr-32)/9 15celsius = 5*(fahr-32)/9; 算術(shù)運(yùn)算整數(shù)除整數(shù),結(jié)果為整數(shù)如:1/2 0,9/4 2 沒有四舍五入5 * (fahr - 32) / 9 和 5 / 9 * (fahr - 32) 等價(jià)嗎?運(yùn)算 % 僅僅適用于整型數(shù)據(jù)如: 565,941,10040雙目運(yùn)算符兩側(cè)操作數(shù)的類型要相同16賦值運(yùn)算賦值表達(dá)式:用 = 將一個(gè)變量和一個(gè)表達(dá)式連接起來的式子 變量 表達(dá)式例如:fahr = 100; celsius = 5 * (fahr - 32) / 9; 計(jì)算賦值運(yùn)算符右側(cè)表達(dá)式的值將結(jié)果值賦給左側(cè)變量17左邊

8、必須是一個(gè)變量2.2.4 格式化輸出函數(shù)printfprintf(格式字符串, 輸出參數(shù)1, ,輸出參數(shù)n);例如:printf(Hello World! n);printf(fahr = %d, celsius = %dn, fahr, celsius);用,號(hào)隔開控制字符串和輸出參數(shù)控制字符串用雙引號(hào) 注意不要中文的全角符號(hào)18printf格式控制字符串普通字符:原樣輸出printf(Hello World!n);Hello World!格式控制字符:%d: 輸出參數(shù)為int%f: 輸出參數(shù)為float或doubleprintf(fahr = %d, celsius = %dn, fahr

9、, celsius);fahr = 41, celsius = 5更多的(一邊用,一邊學(xué))19小結(jié)數(shù)據(jù)類型int, float, double變量的定義和使用輸出函數(shù)printf( 格式控制字符串, 參數(shù)表);格式%d int%f float%lf doublen 換行符202.3 計(jì)算分段函數(shù) 分段計(jì)算水費(fèi)輸入 x計(jì)算函數(shù)f(x)設(shè)置一個(gè)變量y,保存f(x)的值輸出,并保留2位小數(shù)格式控制 %.2f212.3.1 程序解析求分段函數(shù) #include int main(void) double x, y; printf(Enter x (x=0):n); /* 輸入提示 */ scanf(%

10、lf, &x); /* 輸入數(shù)據(jù) */ if( x = 15 ) y = 4 * x / 3; else y = 2.5 * x - 10.5; printf(y = f(%f) = %.2fn, x, y); return 0;22演示:f(9.500000)=12.67f(15.000000)=20.00f(21.300000)=42.75測(cè)試程序1)輸入測(cè)試數(shù)據(jù),驗(yàn)證結(jié)果正確性2)覆蓋每一個(gè)分支(情況)3)執(zhí)行到每一種情況4)分塊測(cè)試(復(fù)雜、多模塊程序)知識(shí)要點(diǎn)關(guān)系運(yùn)算比較大小分支語句 if else 輸入函數(shù)scanf232.3.2 關(guān)系運(yùn)算x = 15比較 x 和 15 的大小關(guān)系結(jié)

11、果為真(1)或假(0)當(dāng)x為9.5時(shí), x = 15的結(jié)果是 真(1)當(dāng)x值為21時(shí),x 、=、=、=242.3.2 關(guān)系運(yùn)算x = 15比較 x 和 15 的大小關(guān)系,結(jié)果為 真(1)或假(0)當(dāng)x為9.5時(shí), x = 15的結(jié)果是:真(1)當(dāng)x值為21時(shí),x 例如 a b例如 a =例如 a = b=例如 a = b=例如 a = b 注意區(qū)分 = 和 =!=例如 a != b26運(yùn)用關(guān)系表達(dá)式判斷 x 是否為負(fù)數(shù)x 0判斷 x 是否為零x = 0判斷 x 是否不為零x != 0272.3.3 if-else語句if ( 表達(dá)式 ) 語句1else 語句2if(x = 15) y = 4

12、* x / 3; else y = 2.5 * x - 10.5;28表達(dá)式語句1語句2真假計(jì)算二分段函數(shù) if (表達(dá)式) 語句1else 語句229if( x != 0 ) y = 1/x;else y = 0;2.3.4 格式化輸入函數(shù)scanfscanf(格式字符串, 輸入?yún)?shù)1, , 輸入?yún)?shù)n);總體上和輸出函數(shù)printf類似:printf(格式字符串, 輸出參數(shù)1, ,輸出參數(shù)n);30用雙引號(hào)括起來,表示輸入的格式變量地址scanf格式控制字符串int型 : %dfloat型: %fdouble型:%lf lf long floatscanf(%lf, &x);輸入的時(shí)候,輸

13、入x的值即可。例如:9.5注意:運(yùn)算符 & 作用是取變量地址普通字符:原樣輸入scanf(x=%lf, &x);輸入的時(shí)候,需要輸入:x=9.5盡量不要出現(xiàn)普通字符312.3.5 常用數(shù)學(xué)庫(kù)函數(shù)庫(kù)函數(shù)C語言處理系統(tǒng)提供事先編好的函數(shù),供用戶在編程時(shí)調(diào)用。scanf(), printf(), exp()在相應(yīng)的系統(tǒng)文件(頭文件)中定義一些必需的信息。#include命令用戶調(diào)用庫(kù)函數(shù)時(shí),將相應(yīng)的頭文件包含到源程序中。 例如調(diào)用scanf, printf,需要 #include 調(diào)用sqrt,需要 #include 32常用數(shù)學(xué)庫(kù)函數(shù)平方根函數(shù) sqrt(x) 絕對(duì)值函數(shù) fabs(x)fabs(

14、-3.56) 的值為3.56冪函數(shù) pow(x, n) :xnpow(1.1, 2) 的值為1.21(即1.12)指數(shù)函數(shù) exp(x):exexp(2.3) 的值為e2.3以e為底的對(duì)數(shù)函數(shù) log(x):ln xlog(123.45) 的值為4.815836以10為底的對(duì)數(shù)函數(shù) log10(x):log10 xlog10(123.45) 的值為2.091491。 33例2-5 計(jì)算存款的本息輸入存款金額 money、存期 year 和年利率 rate,根據(jù)公式計(jì)算存款到期時(shí)的本息合計(jì)sum。輸出時(shí)保留2位小數(shù)。 sum = money ( 1 + rate)yearsum = money

15、* pow(1 + rate), year)34例2-5 程序# include # include int main(void) int money, year; double rate, sum; printf(Enter money:); scanf(%d, &money); printf(Enter year: ); scanf(%d, &year); printf(Enter rate:); scanf(%lf, &rate); sum = money * pow(1 + rate), year); printf(sum = %.2f, sum); return 0;35調(diào)用scan

16、f函數(shù)輸入多個(gè)數(shù)據(jù)scanf(%d%d%lf, &money, &year, &rate); 用戶只需輸入:1000 3 0.025輸入數(shù)據(jù)之間用“空格”隔開輸入?yún)?shù)的類型、個(gè)數(shù)和位置要與格式控制說明一一對(duì)應(yīng) 否則,程序很可能意外崩潰!362.4 循環(huán)控制結(jié)構(gòu)(for 循環(huán))for(表達(dá)式1;表達(dá)式2;表達(dá)式3) 循環(huán)體語句表達(dá)式1只執(zhí)行一次37表達(dá)式 2表達(dá)式 1循環(huán)體語句表達(dá)式32.4.3 指定次數(shù)的循環(huán)程序設(shè)計(jì)求 1 + 2 + + n變量設(shè)置int i, n, sum;初值:i=1; sum=0;輸入 n: scanf(%d,&n)工作sum = sum + ii +; 或者 i =

17、i+1;工作條件i=n38sum = 0;for( i=1; i=n; i+ )sum = sum + i;39表達(dá)式1:給循環(huán)變量賦初值,指定循環(huán)的起點(diǎn)。i = 1 初始化表達(dá)式2:給出循環(huán)的條件,決定循環(huán)的繼續(xù)或結(jié)束。i = n 條件判斷表達(dá)式3:設(shè)置循環(huán)的步長(zhǎng),改變循環(huán)變量的值,從而可改變表達(dá)式2的真假性。i + 更新控制變量循環(huán)體語句:被反復(fù)執(zhí)行的語句。 主要任務(wù) sum = sum + i;for(表達(dá)式1;表達(dá)式2;表達(dá)式3) 循環(huán)體語句2.4.3 指定次數(shù)的循環(huán)程序設(shè)計(jì)求 1-1/3+1/5-1/7+ 的前n項(xiàng)和變量設(shè)置int i, n, sum, item, flag;初值:輸

18、入 n: scanf(%d,&n)sum=0; i=1; flag=1;工作item = flag*1.0/(2*i-1)sum = sum + itemi +; 或者 i = i+1; flag = - flag工作條件i=n40sum = 0;flag = 1;for( i=1; i=n; i+ ) item = flag*1.0/(2*i-1); sum = sum + item; flag = - flag;例2-9 求n! = 1*2*n變量設(shè)置int n, i;double product;初值:輸入 n: scanf(%d,&n)product=1; i=1;工作product = product * i;i +; 或者 i = i+1;工作條件i=n41produ

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論