




已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
,第三章,數(shù)據(jù)類型、運(yùn)算符與表達(dá)式,主要內(nèi)容,3.1 C的數(shù)據(jù)類型 3.2 常量,變量 3.3 整型數(shù)據(jù) 3.4 浮點(diǎn)型數(shù)據(jù) 3.5 字符型數(shù)據(jù) 3.6 變量賦初值 3.7 各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算 3.8 運(yùn)算符和表達(dá)式,C的數(shù)據(jù)類型,數(shù)據(jù)類型,常量與變量,1) 常量 在程序運(yùn)行過程中,其值不能被改變的量稱為常量 常量可以由字面形式區(qū)分為不同的類型,如:,整型常量 100,125,-100,0 實型常量 3.14 , 0.125,-3.789 字符常量 a, b,2 字符串常量 “abc”, “ 1232 “,2)宏定義,用一個標(biāo)識符代表一個常量,#define PI 3.1415926 #define NAME1 張三,3) 變量 變量代表內(nèi)存中具有特定屬性的一個存儲單元,它用來存放數(shù)據(jù),這就是變量的值,在程序運(yùn)行期間,這些值是可以改變的。,變量的 三要素,4) 變量命名的規(guī)定: 變量名和其它標(biāo)識符只能由字母(區(qū)分大小寫)、數(shù)字和下劃線三種字符組成,且第一個字符必須為字母或下劃線。 例:sum,_total, month, Stu_nam1, lotus_1,BASIC, Basic M.D.John, ¥123, 3D64 , ab,選有含意的英文單詞 (或其縮寫)作變量名或標(biāo)識符。,變量賦初值,語言允許在定義變量的同時使變量初始化 如: int a=3; / 指定為整型變量,初值為 float f=3.56; / 指定為浮點(diǎn)型變量,初值為.56 double pi = 3.1415926 ; char c= a; / 指定為字符變量,初值為a,算術(shù)運(yùn)算符及其表達(dá)式 + - * / % 強(qiáng)制類型裝換運(yùn)算符 (類型) 賦值運(yùn)算符及其表達(dá)式 , +=, -=,*=, /=, 逗號運(yùn)算符及其表達(dá)式 ,,運(yùn)算符和表達(dá)式,C語言的運(yùn)算符共有十幾類之多,算術(shù)運(yùn)算符和算術(shù)表達(dá)式,1) 基本的算術(shù)運(yùn)算符: (加法運(yùn)算符,或正值運(yùn)算符。如:、) (減法運(yùn)算符,或負(fù)值運(yùn)算符。如:、) * (乘法運(yùn)算符。如:*) (除法運(yùn)算符。如:) (模運(yùn)算符,或稱求余運(yùn)算符,兩側(cè)均應(yīng)為整型數(shù)據(jù),如:的值為)。,(2) 算術(shù)表達(dá)式 *(+3).5a,(3)算術(shù)運(yùn)算符的優(yōu)先級及結(jié)合性,float a = 5/3 ;,a = ?,1.00000,4) 自增(+)、自減(-)運(yùn)算符 作用: 使變量的值增或減, 有2種用法: a) +i,-i /在使用之前,先使的值加(減) b) i+, i- /在使用之后,使的值加(減),例如: i=3;+i; i的值先變成4, 再賦給.最終i,j的值均為 i=3; i+; 先將 i的值3 賦給, 然后變?yōu)?最終i的 值為,j的值為3,注意:自增(+),自減運(yùn)算符(-),只能于變量,而不能用于常量或表達(dá)式,,3) 復(fù)合的賦值運(yùn)算符 在賦值符“”之前加上其他運(yùn)算符,可以構(gòu)成復(fù)合的運(yùn)算符。,如: 等價于 * 等價于 *() 等價于 ,語言規(guī)定可以使用種復(fù)合賦值運(yùn)算符: ,*,|,4) 賦值表達(dá)式 由賦值運(yùn)算符將一個變量和一個表達(dá)式連接起來的式子稱為“賦值表達(dá)式”。 ,b = 3+a; *;,5) 賦值表達(dá)式的求解過程 求賦值運(yùn)算符右側(cè)表達(dá)式的值; 賦給賦值運(yùn)算符左側(cè)的變量, 作為表達(dá)式的值,a=1; a = a+3;,整型變量的定義(聲明) 1)語言規(guī)定在程序中所有用到的變量都必須在程序中定義。 2)先定義,后使用,例如: int a; (指定變量a為整型變量) unsigned int c, d; (指定變量c, d為無符號整型) long e, f, g; (指定變量e, f, g為長整型),(例1)Input two integers, output the product,#include main() int x,y,m; /* 定義整型變量x,y,m */ printf(“Please input x and yn”); /輸出提示信息 scanf(“%d%d“,/* 輸出結(jié)果 */ ,浮點(diǎn)型數(shù)據(jù),浮點(diǎn)型常量的表示方法,1) 小數(shù)。 如 0.123 2) 科學(xué)計數(shù)法。 如 3.1e-3,注意:字母e(或E)之前必須有數(shù)字,且e后面的指數(shù)必須為整數(shù),浮點(diǎn)型變量的類型(32bit),float sum; (指定變量sum為單精度浮點(diǎn)型變量) double term; (指定變量term為雙精度型),浮點(diǎn)型變量的聲明,(例2)輸入兩個浮點(diǎn)數(shù),輸出它們中的大數(shù),#include main() float x,y,c; /* 變量定義 */ printf(“Please input x and y:n“); scanf(“%f%f“, /* 輸出c */ ,(例2)輸入兩個浮點(diǎn)數(shù),輸出它們中的大數(shù),#include main() float x,y,c; /* 變量定義 */ printf(“Please input x and y:n“); scanf(“%f%f“, /* 輸出c */ ,if (x y) c = x ; else c = y ; ,(例3) 計算圓面積,int main() double radius; double area; radius = 20; / Step 1: Read in radius area = radius * radius * 3.14159; / Step 2: Compute area printf(“The area is “) ; / Step 3: Display the area printf(“%lfn“,area) ; return 0; ,上機(jī)練習(xí)1 對“(例3)”進(jìn)行修改,改為從鍵盤輸入半徑,int main() double radius; double area; radius = 20; / Step 1: Read in radius area = radius * radius * 3.14159; / Step 2: Compute area printf(“The area is “) ; / Step 3: Display the area printf(“%lfn“,area) ; return 0; ,字符變量 1) 字符型變量用來存放字符常量。 2) 字符變量的定義形式如下:char c1,c2; 3) 一個字符變量在內(nèi)存中占一個字節(jié)(ASCII碼),字符型數(shù)據(jù)和整型數(shù)據(jù)之間可以通用 一個字符數(shù)據(jù)既可以以字符形式輸出,也可以以整數(shù)形式輸出。,a,字符型數(shù)據(jù),字符常量 1) 用單引號包含的一個字符是字符型常量 2) 只能包含一個字符,例,a, A, 1 abc、 “a”,字符串常量 1)字符串常量是一對雙引號括起來的字符序列. 2)合法的字符串常量: “How do you do.”, “CHINA”, “a” , “$123.45”,注意: 是字符常量, ”是字符串常量,兩者不同,,char c c = a; c = ”a”;c = ”CHINA”;,(例4)大小寫字母的轉(zhuǎn)換,#include void main() char c1,c2; c1=a; c2=b; c1=c1-32; c2=c2-32; printf(“c c,c1, c2); ,(例4)大小寫字母的轉(zhuǎn)換,#include void main() char c1,c2; c1=a; c2=b; c1=c1-32; c2=c2-32; printf(“c c,c1, c2); ,運(yùn)行結(jié)果:A B,(例5)ASCII 代碼,#include void main() char c1,c2; c1 = 97; c2 = 98; printf(“%c %cn”, c1,c2); printf(“%d %dn”,c1,c2); ,(例5)ASCII 代碼,#include void main() char c1,c2; c1 = 97; c2 = 98; printf(“%c %cn”, c1,c2); printf(“%d %dn”,c1,c2); ,運(yùn)行結(jié)果: a b 97 98,(例6)寫一個函數(shù),將小寫字母轉(zhuǎn)換為大寫字母,int ToUpper(int c) if (c = a ,上機(jī)練習(xí)2 修改(例5),將 “char c1,c2;”改為“int c1, c2”,輸出結(jié)果?,#include void main() char c1,c2; c1 = 97; c2 = 98; printf(“%c %cn”, c1,c2); printf(“%d %dn”,c1,c2); ,上機(jī)練習(xí)3,要將“China”譯成密碼,密碼規(guī)律是:用原來的字母后面第4個字母代替原來的字母。例如,字母“A”后面第4個字母是“E”,用“E”代替“A”。因此,“China”應(yīng)譯為”Glmre”。請編一程序,用賦初值的方法使c1,c2,c3,c4,c5這5個變量的值分別為C、h、i、n、a,經(jīng)過運(yùn)算,使c1,c2,c3,c4,c5分別變?yōu)镚、l、m、r、e,并輸出。(暫不考慮wxyz這四個字母),Integer Division,+, -, *, /, and % 5 / 2 yields an integer 2. 5.0 / 2 yields a double value 2.5 5 % 2 yields 1 (the remainder of the division),Arithmetic Expressions,(3+4*x)/5 10*(y-5)*(a+b+c)/x + 9*(4/x + (9+x)/y),is translated to,Example: Converting Temperatures,Write a program that converts a Fahrenheit degree to Celsius using the formula:,celsius = (5 / 9) * (fahrenheit - 32);,Example: Converting Temperatures,Write a program that converts a Fahrenheit degree to Celsius using the formula:,celsius = (5 / 9) * (fahrenheit - 32);,Example: Converting Temperatures,Write a program that converts a Fahrenheit degree to Celsius using the formula:,celsius = (5 / 9) * (fahrenheit - 32);,celsius = (5.0 / 9) * (fahrenheit - 32);,(上機(jī)練習(xí)4) 完成前面的溫度轉(zhuǎn)換。從鍵盤輸入Fahrenheit (華氏度),從屏幕輸出Celsius(攝氏度),celsius = (5.0 / 9) * (fahrenheit - 32);,(上機(jī)練習(xí)5) 按揭貸款(等額本息),輸入貸款年利率、貸款總額和貸款年限,計算每月還款額和還款總額,下面是每月還款額的公式:,提示:查閱數(shù)學(xué)函數(shù)pow的使用,int main() printf( “Enter yearly interest rate, for example 8.25: “); double annualInterestRate; scanf(“%lf“, ,輸出結(jié)果如何?,(例6),#include mai
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 休閑餐飲連鎖店廚師團(tuán)隊合作協(xié)議
- 《房屋買賣定金合同范本》
- 臨時倉儲彩鋼板房搭建與倉儲物流合同
- 眼科技能培訓(xùn)
- 智能化砂石料采購及倉儲物流合同
- 休閑農(nóng)業(yè)園區(qū)場地承包經(jīng)營與服務(wù)協(xié)議范本
- 拆除工程后期維護(hù)服務(wù)合同范本
- 茶園租賃與茶葉品牌連鎖經(jīng)營合作合同
- 戰(zhàn)國后期教育論著
- 能源領(lǐng)域采購戰(zhàn)略合作框架協(xié)議
- 西安歷年美術(shù)中考題及答案
- 國家開放大學(xué)《管理學(xué)基礎(chǔ)》形考任務(wù)1-4答案
- 眩暈中醫(yī)臨床路徑解讀
- 2025年山東省威海市市屬事業(yè)單位招聘(綜合類)考試筆試高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- 2020年預(yù)防艾滋病、梅毒和乙肝(三病)母嬰傳播培訓(xùn)
- 中國音樂學(xué)院《藥學(xué)分子生物學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 化工廠安全隱患排查培訓(xùn)
- 《室上性心動過速》課件
- 2025年高中歷史會考會考全套知識復(fù)習(xí)
- 健身房預(yù)售培訓(xùn)課件
- 2025年中鐵國際集團(tuán)招聘79人高頻重點(diǎn)提升(共500題)附帶答案詳解
評論
0/150
提交評論