c語言第2講基本數據類型與表達式.ppt
《c語言第2講基本數據類型與表達式.ppt》由會員分享,可在線閱讀,更多相關《c語言第2講基本數據類型與表達式.ppt(49頁珍藏版)》請在裝配圖網上搜索。
第2講C語言的基本數據類型與表達式,2.1C語言的基本數據類型2.2常量與變量2.3運算符與表達式2.4數據類型轉換,一、數據類型概述,本講中將對基本類型中的前三類進行介紹和學習。,2.1C語言的基本數據類型,變量:指以標識符為名字,其值可以改變的量。,在學習各種數據類型之前,我們先簡單了解一下常量和變量的概念。,常量:指在程序運行中,其數值不能被改變的量。,變量代表計算機內存中的某一存儲空間,變量的類型決定了該存儲空間的長度和其中存放數據的編碼方式及存儲格式。變量的類型也決定了該存儲空間中存放數據的數據形式和取值范圍。,*八進制的數碼范圍為0~7;018?*十六進制的數碼除了數字0~9外,還使用英文字母a~f(或A~F)表示10~15。如:0 x1e√,,注意!,二、整型(采用定點整數的存儲格式,只能表示純整數),1、整型常量:,(1)十進制形式:與數學上的整數表示相同;例如:12,-100,0(2)八進制形式:在數碼前加數字0;例如:012=1*81+2*80=10(十進制)(3)十六進制形式:在數碼前加0X(數字0和字母X)。例如:0 x12=1*161+2*160=18(十進制),舉例,在16位操作系統(tǒng)中,一般用2字節(jié)表示一個int型變量,且long型(4字節(jié))≥int型(2字節(jié))≥short型(2字節(jié))。在VC++6.0環(huán)境中,用4字節(jié)表示一個int型變量,且long型(4字節(jié))≥int型(4字節(jié))≥short型(2字節(jié))。查看變量的字節(jié)數,即其長度,使用函數sizeof(類型名),2、整型變量的分類:,根據數據所占的存儲長度的不同分為:int、short、long;同樣存儲長度的數據又分unsigned、signed;故可組合出六種類型。,3、整型變量的值域:,由機器中數據的存儲長度決定,2、實型變量的分類及值域:關鍵字字節(jié)數取值范圍精度(位)float43.410-38~3.410387double81.710-308~1.71030815,注意,,三、實型,1、常量:(1)十進制小數形式:由數字和小數點組成;例如:3.4,4.,.3。(2)指數形式:“十進制小數”+“e(或E)”+“十進制數整數”。例如:12.5e-6表示12.510-6。,?小數點不能單獨出現;0.√.0√.??e或E的兩邊必須有數,且其后面必須為整數;如:6E0.2?e5?,字符形式功能\n換行\(zhòng)t橫向跳格\b退格\r回車\\反斜杠字符\’單引號字符\ddd8進制數表示的ASCII碼對應的字符\xhh16進制數表示的ASCII碼對應的字符,四、字符類型,1、常量:(1)用單引號括起來的一個字符;如:‘A’、‘1’、’?’等。注意(1)數值0、字符‘0’、字符‘\0’的區(qū)別(2)大小寫對應字母的ASCII值相差32(’A’為65,’a’為97)(2)用單引號括起來的由反斜杠(\)引導的轉義字符。,4、字符串常量:是用一對雙引號括起來的字符序列。注意:每個字符串的后面都有一個‘\0’結束符。如:“SHANGHAI”,“AbcdeFGHijk”,“Howareyou”。,注意,‘a’與“a”的區(qū)別strlen()與sizeof()的區(qū)別,,例如:字符A的ASCII碼為:65D(十進制)=41H(十六進制)=101Q(八進制)∴字符A可以表示為‘A’、’\x41’、’\101’。,2、字符型變量的分類:char和unsignedchar;,3、值域(字符型可參與數學運算,也可看成一種一字節(jié)的整型變量)每個字符型數據在內存中占一個字節(jié);包括ASCII字符表中的所有字符(可顯示字符和非顯示字符)。,舉例,一、常量與符號常量?常量是指在程序運行中,其數值不能被改變的量。?常量又可分為直接常量和符號常量。,2.2常量與變量,120、0120、072;0 xFFFF、0 x1e;120L,200L;長整型常量3.14、5.12E-6;a、#、\n、\101;099、12f、0 xg、48EA;E-6、6.4E+4.8;"changsha"、"+++\\?ab";\、\p、、ab;,1、直接常量:是在程序中直接引用的數據。,請判斷這些常量正確與否:,定義形式:#define標識符常量數據例如:#definePI3.14159在程序預處理時,凡是出現標識符PI的地方都將用數據3.14159來替換。如:2*2.3*PI就等價于2*2.3*3.14159。,?變量是指以標識符為名字,其值可以改變的量。?變量代表計算機內存中的某一存儲空間,該存儲空間中存放的數據就是變量的值。?在同一程序塊中,變量不能被重復定義。?使用變量時必須“先定義,后使用”。,2、符號常量是用標識符來表示一個數據;在程序不能給它賦值。,二、變量,2、變量初始化在定義變量的同時給變量一個初始值。,注意,inta=5,b=3;√inta=b=c=3;?inta,b,c;a=b=c=3;√,,例如:inta,b,c;floatx,y;charc1,c2;或intc1,c2;定義變量就是在內存中劃出一塊相應類型的存儲空間存放該變量的值。,#includemain(){intx,y,z,w;/*定義x,y,z,w為整型變量*/unsignedintk;/*定義k為無符號整型變量*/x=10;y=-20;k=30;z=x+k;w=y+k;printf(“x+k=%d,y+k=%d\n”,z,w);},例2-1:,程序運行結果為:x+k=40,y+k=10,變量根據作用域的不同可分為局部變量和全局變量,根據存儲方式的不同可分為靜態(tài)存儲變量和動態(tài)存儲變量,這些我們將在后面詳細介紹。,1、以下合法的字符型常量是A\x13B\081C65D"\n"2、已知大寫字母A的ASCII碼是65,小寫字母a的ASCII碼是97。以下不能將變量c中的大寫字母轉換為對應小寫字母的語句是Ac=(c-A)%26+aBc=c+32Cc=c-A+aDc=(A+c)%26-a‘3.以下選項中,合法的一組C語言數值常量是A)028B)12.C).177D)0 x8A.5e-30Xa234e1.510,000.0 xf4.5e00abc3.e54.以下關于long、int和short類型數據占用內存大小的敘述中正確的是A)均占4個字節(jié)B)根據數據的大小來決定所占內存的字節(jié)數C)由用戶自己定義D)由C語言編譯系統(tǒng)決定5.以下選項中不屬于字符常量的是A)CB)"C"C)‘\xCCD)\072,實驗內容,實驗二題目2:完成從鍵盤輸入一個10以內的數字,在屏幕上輸出這個數字的3次方。題目3:從鍵盤上輸入兩個數字,在屏幕上輸出這兩個的加減乘除的結果。,在數學里當多個運算符一起組成一個表達式時,我們規(guī)定了優(yōu)先級(先乘除后加減)和結合規(guī)則(從左至右)。同樣,在C語言中,我們也規(guī)定了每個運算符的結合規(guī)則及運算符之間的優(yōu)先級。,2.3運算符與表達式,運算符:就是表示某種運算功能的符號。按操作功能運算符大致可分為:算術運算符、關系運算符、邏輯運算符、賦值運算符、條件運算符、逗號運算符以及位運算符等。,表達式:是由操作數和運算符組成的序列。如:1+2*3-4、3>5-7、a=b%2等都是C語言中的表達式。,,下面分類介紹各種運算符:,%(取余)(注意:取余運算的操作數只能是整數,結果的符號與被除數相同),一、算術運算符和算術表達式,1、運算符+(加):3+4、+3-(減):3-5、-5*(乘):3*5/(除):5/2、5.0/2(注意,此二種形式,結果不同),5%3的值為2;-5%3的值為-2;5%(-3)的值為2;-5%(-3)的值為-2;12.3%3若a%b的結果為0,則有a能被b整除,,2、算術表達式?用算術運算符和括符將操作數連接起來的式子。?優(yōu)先級:()*、/、%+、-?結合性:從左至右;?表達式的值:數值型(int、long、unsigned、float、double);,,,例如:已知:floata=2.0;intb=6,c=3;求解:a*b/c-1.5+’a’+fabs(-5)=?,,,,,,,floata=2.0;intb=6,c=3;a*b/c-1.5+’a’+fabs(-5),,,,,,,,12.0/3,5,4.0-1.5,2.5+97(int),99.5+5,104.5,思考inta=1,b=2;表達式a/b+3的結果是多少?,,等價于:j=i;i++;所以i的值為4,j的值為3,等價于:i++;j=i;所以i的值為4,j的值為4,(1)i=3;j=i++;(2)i=3;j=++i;,3、自增與自減運算符(++、--),?++i,--i:使用之前使i的值增1(或減1);,?i++,i--:使用之后使i的值增1(或減1);,分析下面幾種情況中i與j的值:,,當++、--不與其他運算符混合使用時,++i與i++都等價于i=i+1,--i與i--都等價于i=i-1,如:i=2;j=-i++;求執(zhí)行完這兩句后i與j的值分別是多少,?結合性:自右至左。,分析:“++”與”-“是同優(yōu)先級,且都高于“=”按結合規(guī)則,等價于:j=-(i++);結果:i的值為3,j的值為-2。,再看幾個例子:如:設i=3,k=(i++)+(i++)k=i=,6,5,設a=3,b=(++a)+(++a)b=a=,10,5,題盤練習,(1)例題:1-3。運算符/及%的應用(函數fun的功能是:將兩個兩位數的正整數a、b合并形成一個整數放在c中。合并的方式是:將a的十位數和個位數依次放在c數的千位和十位上,b數的十位和個位數依次放在c數的百位和個位上。)(2)作業(yè):2-3;3-3;4-3;51-3;53-3;72-3;88-3;4-2;5-2;注意:掌握兩個數的輸入方法!,1、6種關系運算符:=>==!=2、關系表達式:用關系運算符將表達式連接起來的式子?優(yōu)先級:(=>)>(==!=)?結合性:自左至右;?表達式的值:若為真,則結果為1;若為假,則結果為0。,3>5值為:32值為:設x=-2;-3- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 語言 基本 數據類型 表達式
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://kudomayuko.com/p-11494900.html