




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li第二章第二章 C C語言基礎(chǔ)語言基礎(chǔ)第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li程序處理的基本過程程序處理的基本過程開始開始輸入數(shù)據(jù)輸入數(shù)據(jù)x=2,y=3外設(shè)外設(shè)z=x+y數(shù)據(jù)處理數(shù)據(jù)處理輸出數(shù)據(jù)輸出數(shù)據(jù)5外設(shè)外設(shè)結(jié)束結(jié)束數(shù)據(jù)表示數(shù)據(jù)表示第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xua
2、n & Li主主 要要 內(nèi)內(nèi) 容容 數(shù)據(jù)及其表示方法;數(shù)據(jù)及其表示方法; 數(shù)據(jù)的基本運(yùn)算;數(shù)據(jù)的基本運(yùn)算; 基本輸入輸出。基本輸入輸出。 程序是對(duì)數(shù)據(jù)按照算法處理,并輸出結(jié)果的過程,因程序是對(duì)數(shù)據(jù)按照算法處理,并輸出結(jié)果的過程,因此,以上三個(gè)問題是程序設(shè)計(jì)的基本問題。此,以上三個(gè)問題是程序設(shè)計(jì)的基本問題。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li2.1 基本數(shù)據(jù)類型基本數(shù)據(jù)類型1/2 ? 數(shù)據(jù)數(shù)據(jù)是對(duì)客觀事物特征抽象的符號(hào)化表示,客觀事物不同,表是對(duì)客觀事物特征抽象的符號(hào)化表示,客觀事物
3、不同,表示的方法也不同(人數(shù)以整數(shù)表示,圓面積用小數(shù)表示,燈的狀態(tài)示的方法也不同(人數(shù)以整數(shù)表示,圓面積用小數(shù)表示,燈的狀態(tài)用開關(guān)表示,信件要用文字表示),計(jì)算機(jī)的處理方法也不同,因用開關(guān)表示,信件要用文字表示),計(jì)算機(jī)的處理方法也不同,因此根據(jù)程序處理的數(shù)據(jù)對(duì)象,應(yīng)規(guī)定數(shù)據(jù)的此根據(jù)程序處理的數(shù)據(jù)對(duì)象,應(yīng)規(guī)定數(shù)據(jù)的類型類型。 計(jì)算機(jī)由于工程的限制,只能在有限精度和有限范圍內(nèi)在工程計(jì)算機(jī)由于工程的限制,只能在有限精度和有限范圍內(nèi)在工程上近似地描述操作的對(duì)象上近似地描述操作的對(duì)象數(shù)據(jù)。數(shù)據(jù)。 數(shù)據(jù)類型決定了數(shù)據(jù)的如下特征:數(shù)據(jù)類型決定了數(shù)據(jù)的如下特征:數(shù)據(jù)的外部表示方式和內(nèi)部存儲(chǔ)方式不同;數(shù)據(jù)的外
4、部表示方式和內(nèi)部存儲(chǔ)方式不同;表示的范圍和精度不同;表示的范圍和精度不同;對(duì)數(shù)據(jù)的處理方式不同。對(duì)數(shù)據(jù)的處理方式不同。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & LiC C語言的數(shù)據(jù)類型語言的數(shù)據(jù)類型C語言的數(shù)據(jù)類型語言的數(shù)據(jù)類型基本類型基本類型字符型字符型 char浮點(diǎn)型浮點(diǎn)型 float double構(gòu)造類型構(gòu)造類型數(shù)組、結(jié)構(gòu)、聯(lián)合、數(shù)組、結(jié)構(gòu)、聯(lián)合、枚舉型枚舉型 enum指針類型指針類型空類型空類型 void整整 型型 int第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 B
5、asic of C languageHFUT Xuan & Li2.2 常量(常量(Constant)及其類型)及其類型 常量的概念常量的概念 在程序中不能改變的量稱為常量。常量的類型由數(shù)據(jù)的外部表在程序中不能改變的量稱為常量。常量的類型由數(shù)據(jù)的外部表現(xiàn)形式確定。現(xiàn)形式確定。常量的外部形式及其確定的類型常量的外部形式及其確定的類型整型常量的表示整型常量的表示 整型常量根據(jù)表示的范圍可以有整型常量根據(jù)表示的范圍可以有一般整型一般整型和和長整型長整型,還可以表,還可以表示為十進(jìn)制、八進(jìn)制、十六進(jìn)制形式。示為十進(jìn)制、八進(jìn)制、十六進(jìn)制形式。一般整型常量的表示一般整型常量的表示進(jìn)進(jìn) 制制表示舉例
6、表示舉例范范 圍圍 字節(jié)數(shù)字節(jié)數(shù)十十 進(jìn)進(jìn) 制制2304 -32768 +327672八八 進(jìn)進(jìn) 制制 04400 0 0177777 2十六進(jìn)制十六進(jìn)制 0 xaa00 0 x0000 0 xffff2長整型常量的表示長整型常量的表示進(jìn)進(jìn) 制制表示舉例表示舉例范范 圍圍 字節(jié)數(shù)字節(jié)數(shù)十十 進(jìn)進(jìn) 制制-21234l -231 +231-14八八 進(jìn)進(jìn) 制制 04400l 0 037777777777 4十六進(jìn)制十六進(jìn)制 0XAA00L 0 x0000-0 xffffffff 4第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT X
7、uan & Li浮點(diǎn)型常量的表示(只有十進(jìn)制表示)浮點(diǎn)型常量的表示(只有十進(jìn)制表示) 浮點(diǎn)型常量浮點(diǎn)型常量有兩種表示方式:有兩種表示方式:小數(shù)表示方法小數(shù)表示方法,指數(shù)表示方法指數(shù)表示方法。不區(qū)分單、雙精度。不區(qū)分單、雙精度。小數(shù)表示方式規(guī)則:一個(gè)小數(shù)點(diǎn)、符號(hào)和至少一位數(shù)字。小數(shù)表示方式規(guī)則:一個(gè)小數(shù)點(diǎn)、符號(hào)和至少一位數(shù)字。-2.0 1. 0.11113 -15.指數(shù)表示方式規(guī)則:指數(shù)表示方式規(guī)則:規(guī)則:規(guī)則:nem 表示表示 n10mn小數(shù)部分,整型常量或小數(shù)形式表示的實(shí)型常量。小數(shù)部分,整型常量或小數(shù)形式表示的實(shí)型常量。指數(shù)部分,兩位整數(shù)。指數(shù)部分,兩位整數(shù)。 n決定精度,一般精度
8、為決定精度,一般精度為7位;位;m決定范圍,范圍決定范圍,范圍10-38到到10+38,當(dāng)超過范圍時(shí)稱為當(dāng)超過范圍時(shí)稱為“溢出溢出”,小于,小于10-38稱為下溢,當(dāng)稱為下溢,當(dāng)0處理,大于處理,大于10+38,稱為上溢,系統(tǒng)出錯(cuò)!,稱為上溢,系統(tǒng)出錯(cuò)!123.456 表示為表示為 0.123456E+3-10000000 表示為表示為 -1e70.0000123 表示為表示為 0.123e-4第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li字符常量的表示字符常量的表示 表示表示ASCII字符集中的一
9、個(gè)字符字符集中的一個(gè)字符。字符有一個(gè)整型值,即該字符字符有一個(gè)整型值,即該字符的的ASCII碼值。表示方法:碼值。表示方法:a 、 ! 。撇號(hào)定界的一個(gè)字符。值為:值為:97字符串常量的表示字符串常量的表示 雙引號(hào)雙引號(hào)“定界的字符序列。系定界的字符序列。系統(tǒng)會(huì)在最后一個(gè)字符后加統(tǒng)會(huì)在最后一個(gè)字符后加NULL(ASCII碼值為碼值為0),標(biāo)志字符串的結(jié)束。,標(biāo)志字符串的結(jié)束。 如:如:”HEFEI ” ”Hello!” a 和和 ”a”的區(qū)別?的區(qū)別?內(nèi)部內(nèi)部 a :97 ”a”: 97NULL72101108108111330Hello!0”Hello!” 在內(nèi)存中的存儲(chǔ)結(jié)構(gòu):在內(nèi)存中的存儲(chǔ)
10、結(jié)構(gòu):第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li轉(zhuǎn)義字符轉(zhuǎn)義字符 轉(zhuǎn)義字符轉(zhuǎn)義字符是是C語言表示字符的特殊方法,用來表示語言表示字符的特殊方法,用來表示ASCII字符集字符集中的控制字符,以及系統(tǒng)占用字符如:中的控制字符,以及系統(tǒng)占用字符如:”。表示方法:表示方法: 字符;字符; 八進(jìn)制(十六進(jìn)制整數(shù),小于八進(jìn)制(十六進(jìn)制整數(shù),小于256)a 表示表示BELLb 表示表示BACKSPACE字母字母 n 表示換行表示換行r 表示回車表示回車t 表示表示TAB 表示表示? 表示表示?符號(hào)符號(hào) 表示表
11、示” 表示表示”0 表示表示NULL八進(jìn)制十六進(jìn)制數(shù)八進(jìn)制十六進(jìn)制數(shù) x41 101 代表代表Aprintf(“007”);printf(“語文語文n數(shù)學(xué)數(shù)學(xué)n”);表示八進(jìn)制或十六進(jìn)制數(shù)作為表示八進(jìn)制或十六進(jìn)制數(shù)作為ASCII碼值所對(duì)應(yīng)的字符。碼值所對(duì)應(yīng)的字符。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li2.3 變量變量(Variable) 變量的概念變量的概念 變量是在程序中可以改變的量,變量具有三個(gè)特征:變量是在程序中可以改變的量,變量具有三個(gè)特征: 變量有名,用標(biāo)識(shí)符命名;變量有名,用標(biāo)識(shí)
12、符命名; 變量有類型;變量有類型; 在程序中可以改變。在程序中可以改變。 變量變量對(duì)應(yīng)于內(nèi)存中對(duì)應(yīng)于內(nèi)存中某一地址下的幾個(gè)單元,某一地址下的幾個(gè)單元,變量名作為程序引變量名作為程序引用變量的標(biāo)志。變量的類型確定了變量在內(nèi)存中所占單元的數(shù)量及用變量的標(biāo)志。變量的類型確定了變量在內(nèi)存中所占單元的數(shù)量及其表示的方式。變量的地址可以通過其表示的方式。變量的地址可以通過&運(yùn)算獲得。運(yùn)算獲得。內(nèi)存內(nèi)存int a; a變量的引用標(biāo)志變量的引用標(biāo)志&a對(duì)應(yīng)對(duì)應(yīng)a的地址。的地址。 整型變量整型變量占兩個(gè)內(nèi)存單占兩個(gè)內(nèi)存單元。元。變量必須先說明后使用變量必須先說明后使用!說明的目的是確定變量的名字
13、和類型。!說明的目的是確定變量的名字和類型。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li變量的說明變量的說明形式:形式: type 變量名表;變量名表;/*以,分隔的標(biāo)識(shí)符表以,分隔的標(biāo)識(shí)符表*/ int a,b,c;type是類型說明詞,對(duì)于整型和字符型可加修飾說明。是類型說明詞,對(duì)于整型和字符型可加修飾說明?;绢愋驼f明符:基本類型說明符:int、char、float、double修飾說明和基本說明的對(duì)應(yīng)關(guān)系修飾說明和基本說明的對(duì)應(yīng)關(guān)系修飾說明詞修飾說明詞可用于修飾的基本類型可用于修飾的基本類
14、型singed/unsignedint、charshort/longintlong int a,b,c; 第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li整型變量說明整型變量說明說明詞及性質(zhì)如下:說明詞及性質(zhì)如下:說明詞說明詞含義含義范圍范圍Byteint有符號(hào)一般整型有符號(hào)一般整型-32768327672short int有符號(hào)短整型有符號(hào)短整型-32768327672long int有符號(hào)長整型有符號(hào)長整型-231 +231-14unsigned無符號(hào)一般整型無符號(hào)一般整型0655352unsig
15、ned short無符號(hào)短整型無符號(hào)短整型0655352unsigned long無符號(hào)長整型無符號(hào)長整型0 232-14short a,b,c;int e,f,g;long _qs,num;unsigned d,e,f;第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li字符型變量的說明字符型變量的說明說明符說明符 所占字節(jié)數(shù)所占字節(jié)數(shù) 范圍范圍 char 1 -128 +127unsigned char 1 0 255浮點(diǎn)型變量的說明浮點(diǎn)型變量的說明說明符說明符 所占字節(jié)數(shù)所占字節(jié)數(shù) 范圍范圍 精度精
16、度float 4 10-38 10+38 7位位double 8 10-308 10+308 16位位浮點(diǎn)型變量包含精度和范圍兩個(gè)概念。浮點(diǎn)型變量包含精度和范圍兩個(gè)概念。 超過精度位數(shù)后的位數(shù)值不確定。超過精度位數(shù)后的位數(shù)值不確定。float a;a=1.1111111111;超過范圍溢出超過范圍溢出(Overflow)。超出精度部分,不準(zhǔn)確。超出精度部分,不準(zhǔn)確。float a,b,c;a=1.234e+20 ; b=2.345e+21;c=a*b ;超出超出1038,溢出。,溢出。 當(dāng)運(yùn)算結(jié)果大于當(dāng)運(yùn)算結(jié)果大于10+38稱稱為上溢,系統(tǒng)出錯(cuò)。為上溢,系統(tǒng)出錯(cuò)。 當(dāng)運(yùn)算結(jié)果小于當(dāng)運(yùn)算結(jié)果小于
17、10-38稱稱為下溢,當(dāng)為下溢,當(dāng)0處理。處理。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li2.4 基本運(yùn)算與表達(dá)式基本運(yùn)算與表達(dá)式 程序的核心是對(duì)數(shù)據(jù)按照算法進(jìn)行處理(運(yùn)算)。程序的核心是對(duì)數(shù)據(jù)按照算法進(jìn)行處理(運(yùn)算)。C 語言提供語言提供了強(qiáng)大的數(shù)據(jù)運(yùn)算功能。了強(qiáng)大的數(shù)據(jù)運(yùn)算功能。數(shù)據(jù)通過運(yùn)算符連接的式子稱為表達(dá)式,數(shù)據(jù)通過運(yùn)算符連接的式子稱為表達(dá)式,表達(dá)式根據(jù)運(yùn)算關(guān)系對(duì)數(shù)據(jù)運(yùn)算,并得到一個(gè)值。表達(dá)式根據(jù)運(yùn)算關(guān)系對(duì)數(shù)據(jù)運(yùn)算,并得到一個(gè)值。變量賦值(變量賦值(Assignment)運(yùn)算)運(yùn)算格式
18、:格式: V=expression;/* 將將expression的值賦給變量的值賦給變量V*/int a=2; /*說明賦值,編譯時(shí)賦值。說明賦值,編譯時(shí)賦值。*/int b;b=3+2; /*說明后賦值,執(zhí)行時(shí)賦值。說明后賦值,執(zhí)行時(shí)賦值。*/說明:說明: =是賦值號(hào)(動(dòng)詞);是賦值號(hào)(動(dòng)詞); 賦值運(yùn)算的左值只能是變量。賦值運(yùn)算的左值只能是變量。a=a+2;iCount=iCount+10;a+2=12; /*Error!*/ 賦值號(hào)兩邊類型應(yīng)該一致,如不一致,以變量類型轉(zhuǎn)換。賦值號(hào)兩邊類型應(yīng)該一致,如不一致,以變量類型轉(zhuǎn)換。 int a=2.5 ; /* 2a */第第二二章章 C C
19、語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li算術(shù)運(yùn)算(算術(shù)運(yùn)算(Arithmetic operators) 功能:完成各種類型數(shù)據(jù)的加、減、乘、除及求余數(shù)運(yùn)算。功能:完成各種類型數(shù)據(jù)的加、減、乘、除及求余數(shù)運(yùn)算。雙目算術(shù)運(yùn)算(兩個(gè)運(yùn)算對(duì)象參加的運(yùn)算)雙目算術(shù)運(yùn)算(兩個(gè)運(yùn)算對(duì)象參加的運(yùn)算)運(yùn)算運(yùn)算規(guī)則示例+加2+3-減a-b*乘2*(-a)/除12/3.0%求余數(shù)15%4 只能對(duì)整型或字符型數(shù)據(jù)運(yùn)算。只能對(duì)整型或字符型數(shù)據(jù)運(yùn)算。余數(shù)符號(hào)與被除數(shù)相同。余數(shù)符號(hào)與被除數(shù)相同。注意:乘號(hào)不能省略!-12%5-2-12%(-5
20、)1%2第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li自加、自減運(yùn)算(單目運(yùn)算)自加、自減運(yùn)算(單目運(yùn)算)運(yùn)算符運(yùn)算符前置前置后置后置運(yùn)算關(guān)系運(yùn)算關(guān)系+aa+a=a+1 -aa-a=a-1說明:說明:運(yùn)算對(duì)象只能是一個(gè)變量。運(yùn)算對(duì)象只能是一個(gè)變量。前置是先運(yùn)算,后引用,而后置則是先引用,后運(yùn)算。前置是先運(yùn)算,后引用,而后置則是先引用,后運(yùn)算。2+; /* Error !*/int i, x;i=5;x=i+;/* x=i;i=i+1;*/i=5;x=+i;/* i=i+1;x=i;*/#includ
21、e void main(void) int a=2,b=3,c; c=a+b; printf(“%d”,c);CHAP2EX1C語言盡語言盡可能多的可能多的從左向右從左向右結(jié)合符號(hào)結(jié)合符號(hào)形成運(yùn)算形成運(yùn)算符。符。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li算術(shù)運(yùn)算賦值算術(shù)運(yùn)算賦值運(yùn)算符運(yùn)算符表達(dá)式示例表達(dá)式示例運(yùn)算關(guān)系運(yùn)算關(guān)系+=a+=3 a=a+3- -=b - -= c b=b- -c* =a* =2 a=a*2 /=s/=t s=s/t%=a%=5 a=a%5 說明:說明:運(yùn)算對(duì)象的左值只能
22、是一個(gè)變量。運(yùn)算對(duì)象的左值只能是一個(gè)變量。 (a+2)+=5; /*Error !*/%=運(yùn)算的對(duì)象,必須是整型或字符型。運(yùn)算的對(duì)象,必須是整型或字符型。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li算術(shù)運(yùn)算的說明算術(shù)運(yùn)算的說明運(yùn)算中的類型問題運(yùn)算中的類型問題運(yùn)算對(duì)象的類型相同,運(yùn)算結(jié)果取運(yùn)算對(duì)象相同的類型。運(yùn)算對(duì)象的類型相同,運(yùn)算結(jié)果取運(yùn)算對(duì)象相同的類型。int a;float b;b=2/3; /* 0b 0.0*/a=5.0/2.0; /*2.5a 2 */ 運(yùn)算對(duì)象的類型不同,先將運(yùn)算對(duì)象的
23、類型不同,先將低等類型低等類型轉(zhuǎn)換為轉(zhuǎn)換為高等類型高等類型后再進(jìn)行后再進(jìn)行運(yùn)算,運(yùn)算,運(yùn)算結(jié)果取高等類型運(yùn)算結(jié)果取高等類型。等級(jí)原則如下:。等級(jí)原則如下:charintlongdoublefloat2*16.0+15.0doubledoubledouble運(yùn)算時(shí)可以實(shí)行類型的強(qiáng)制轉(zhuǎn)換,格式如下:運(yùn)算時(shí)可以實(shí)行類型的強(qiáng)制轉(zhuǎn)換,格式如下:(type)expression 只對(duì)當(dāng)前表達(dá)式起作用。只對(duì)當(dāng)前表達(dá)式起作用。(float)a/(int)c+(float)(a+10)2(int)fSum第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageH
24、FUT Xuan & Li類型轉(zhuǎn)換舉例類型轉(zhuǎn)換舉例int a;float b;int c;c=a * 1.0 + b * 5 + (float) A;idfic d d ff d dc int注意:賦值運(yùn)算右值表達(dá)式的類型轉(zhuǎn)換以左值變量的類型為準(zhǔn)。注意:賦值運(yùn)算右值表達(dá)式的類型轉(zhuǎn)換以左值變量的類型為準(zhǔn)。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li運(yùn)算的優(yōu)先級(jí)運(yùn)算的優(yōu)先級(jí) 表達(dá)式的運(yùn)算是分步驟進(jìn)行的。因此當(dāng)一個(gè)表達(dá)式中出現(xiàn)多種表達(dá)式的運(yùn)算是分步驟進(jìn)行的。因此當(dāng)一個(gè)表達(dá)式中出現(xiàn)多種運(yùn)算時(shí),存在
25、優(yōu)先級(jí)的問題。運(yùn)算時(shí),存在優(yōu)先級(jí)的問題。算術(shù)運(yùn)算的優(yōu)先級(jí)如下:算術(shù)運(yùn)算的優(yōu)先級(jí)如下:+、- -、(type) 單目運(yùn)算單目運(yùn)算*、/、%+、- -=、op=相同優(yōu)先級(jí),結(jié)合順序從左到右!相同優(yōu)先級(jí),結(jié)合順序從左到右!3*4+6/a- 6%3;相同優(yōu)先級(jí),結(jié)合順序從右到左!相同優(yōu)先級(jí),結(jié)合順序從右到左!int a,b=2,c=2;a=b*=c+=2;可以用可以用( )調(diào)整優(yōu)先級(jí)。調(diào)整優(yōu)先級(jí)。c=c+2;b=b*c;a=b;第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li條件運(yùn)算運(yùn)算條件運(yùn)算運(yùn)算格式:格式
26、: e1 ? e2 : e3 e1、e2、e3為表達(dá)式,當(dāng)為表達(dá)式,當(dāng)e1非非0時(shí),運(yùn)算結(jié)果取時(shí),運(yùn)算結(jié)果取e2的值;當(dāng)?shù)闹?;?dāng)e1為為0時(shí),取時(shí),取e3的值。的值。int a=2,b=3,c=-1,d;d=a?b:c; /*d為為3*/a=0;d=a?b:c; /*d為為-1*/逗號(hào)表達(dá)式逗號(hào)表達(dá)式格式:格式: e1, e2, e3,en 用,分隔的表達(dá)式,計(jì)算順序從用,分隔的表達(dá)式,計(jì)算順序從左到右,表達(dá)式取值為左到右,表達(dá)式取值為en;sizeof 運(yùn)算運(yùn)算形式:形式: sizeof 數(shù)據(jù)對(duì)象數(shù)據(jù)對(duì)象; sizeof (類型說明符類型說明符);int a,b,c;b=sizeof a;
27、/*b的值為的值為2(TC) */c=sizeof(float); /* c的值為的值為4*/x=(a=5,a+6)*10;第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & LiC語言常用數(shù)學(xué)函數(shù)語言常用數(shù)學(xué)函數(shù) 為方便用戶使用,為方便用戶使用,C語言系統(tǒng)定義了大量函數(shù)。數(shù)學(xué)函數(shù)主要目語言系統(tǒng)定義了大量函數(shù)。數(shù)學(xué)函數(shù)主要目的是求解常用數(shù)學(xué)函數(shù),如的是求解常用數(shù)學(xué)函數(shù),如sinX等。數(shù)學(xué)函數(shù)的原型定義在系統(tǒng)的等。數(shù)學(xué)函數(shù)的原型定義在系統(tǒng)的math.h頭文件中。在使用此類函數(shù)時(shí),應(yīng)在程序的開始處加如下語頭文件中
28、。在使用此類函數(shù)時(shí),應(yīng)在程序的開始處加如下語句:句: #include 函數(shù)函數(shù)數(shù)學(xué)含義數(shù)學(xué)含義sin(x)sinXcos(x)cosX tan(x) tgXfabs(x)| x |pow(x,y)xysqrt(x)log(x)lnxlog10(x)log10 x使用方法:使用方法:作為一個(gè)運(yùn)算項(xiàng)參加表達(dá)式運(yùn)算。作為一個(gè)運(yùn)算項(xiàng)參加表達(dá)式運(yùn)算。yxz22cossin 函數(shù)的參數(shù)(自變量)、函數(shù)的值函數(shù)的參數(shù)(自變量)、函數(shù)的值都是都是double類型。類型。z=sqrt(sin(x)*sin(x)+cos(y)*cos(y)X第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 B
29、asic of C languageHFUT Xuan & Li2.5 數(shù)據(jù)的輸入輸出數(shù)據(jù)的輸入輸出Input &Output C 語言沒有輸入輸出語句,輸入輸出是通過系統(tǒng)定義的標(biāo)準(zhǔn)函語言沒有輸入輸出語句,輸入輸出是通過系統(tǒng)定義的標(biāo)準(zhǔn)函數(shù)來實(shí)現(xiàn)的。數(shù)來實(shí)現(xiàn)的。 I/O函數(shù)的原型定義在函數(shù)的原型定義在stdio.h頭文件中,在引用頭文件中,在引用I/O函數(shù)時(shí),應(yīng)函數(shù)時(shí),應(yīng)應(yīng)在程序開始處加預(yù)處理語句包含頭文件。應(yīng)在程序開始處加預(yù)處理語句包含頭文件。#include 輸入輸出的概念輸入輸出的概念輸入輸出輸入輸出指的是指的是內(nèi)存變量或程序內(nèi)存變量或程序和和外部設(shè)備間外部設(shè)備間的數(shù)據(jù)交換
30、。的數(shù)據(jù)交換。內(nèi)內(nèi)存存外外設(shè)設(shè)輸入輸入 輸出輸出輸入輸出函數(shù)要描述:輸入輸出函數(shù)要描述:輸入輸出的量;輸入輸出的量;輸入輸出的格式;輸入輸出的格式;輸入輸出的設(shè)備。輸入輸出的設(shè)備。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li格式輸入輸出函數(shù)格式輸入輸出函數(shù)輸出函數(shù)輸出函數(shù)printf( )格式:格式:printf(“輸出格式字符串輸出格式字符串”,輸出項(xiàng)列表輸出項(xiàng)列表););格式描述。用,分隔的常用,分隔的常量、變量、表量、變量、表達(dá)式表。達(dá)式表。輸出格式字符串可包含以下內(nèi)容:輸出格式字符串可包含
31、以下內(nèi)容:普通字符普通字符 ,如:,如:a=轉(zhuǎn)義字符,如:轉(zhuǎn)義字符,如:n 對(duì)于普通字符和轉(zhuǎn)義字符在相應(yīng)位置對(duì)于普通字符和轉(zhuǎn)義字符在相應(yīng)位置原樣原樣輸出,其中輸出,其中%用用%。 printf(“nabcd%”); 輸出結(jié)果:輸出結(jié)果: abcd% 格式說明符組,說明輸出項(xiàng)列表中的各項(xiàng)的輸出格式。格式格式說明符組,說明輸出項(xiàng)列表中的各項(xiàng)的輸出格式。格式說名符組用說名符組用%為開始標(biāo)志。內(nèi)容包含對(duì)一項(xiàng)輸出對(duì)象的格式說明。為開始標(biāo)志。內(nèi)容包含對(duì)一項(xiàng)輸出對(duì)象的格式說明。%-7.5f第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xu
32、an & Li格式說明類型表格式說明符格式說明符說明量的類型說明量的類型d、i、o、 x 、 u整型整型c字符型字符型s字符串字符串f、e、g浮點(diǎn)型浮點(diǎn)型 格式說明符應(yīng)和輸出的列表項(xiàng)對(duì)應(yīng),產(chǎn)生相應(yīng)的輸出。其中輸格式說明符應(yīng)和輸出的列表項(xiàng)對(duì)應(yīng),產(chǎn)生相應(yīng)的輸出。其中輸出的表項(xiàng)應(yīng)與格式說明符類型一致。出的表項(xiàng)應(yīng)與格式說明符類型一致。printf(“a=%5dnb=%f”, 2+3, 5.34);第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li格式說明串的一般形式和意義格式說明串的一般形式和意義% -
33、 m.n l 格式類型字符(一個(gè)字母)格式類型字符(一個(gè)字母)格式說明標(biāo)志格式說明標(biāo)志對(duì)齊方式:缺省為右對(duì)齊,對(duì)齊方式:缺省為右對(duì)齊,-為左對(duì)齊。為左對(duì)齊。 寬度寬度.精度精度(位數(shù)),寬度:輸出總列數(shù),位數(shù)),寬度:輸出總列數(shù),精度:小數(shù)位數(shù)(或字符位數(shù))。精度:小數(shù)位數(shù)(或字符位數(shù))。類型長度,缺省短整型,類型長度,缺省短整型,l表示表示long或或double。#include void main(void) float a; a=1.232326 ; printf(“a=%10.4f”,a);CHAP2EX2第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic
34、 of C languageHFUT Xuan & Li各種類型數(shù)據(jù)輸出舉例各種類型數(shù)據(jù)輸出舉例 字符型輸出字符型輸出char ch=b;printf(“%5c, %-5c, %c” ,ch ,ch-32,s+1);輸出結(jié)果:輸出結(jié)果:b,B,t字符串輸出字符串輸出#include void main(void) char chString =China; printf(%s,%6s,%-6sn,chString,chString,chString); printf(“%4s%6.2s%-6.2s,Hefei,Hefei,Hefei);China, China, China Hefei
35、 HeHe寬度不夠,原樣輸出。寬度不夠,原樣輸出。m.n,m為總輸出列數(shù)為總輸出列數(shù), n 截取輸出字符數(shù)。截取輸出字符數(shù)。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li整型輸出(整型輸出(TC環(huán)境描述)環(huán)境描述)#include void main(void) unsigned int a=65535; int b=-2; printf(a=%d,%o,%x,%u, a, a, a, a); printf(nb=%6d%8o%5X%6u,b, b, b, b);a=-1,177777,ffff,6
36、5535b=-2177776FFFE65534第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li浮點(diǎn)數(shù)輸出浮點(diǎn)數(shù)輸出include void main(void) float f=123.456; printf(%f,%10f,%10.2f,%-10.2fn,f ,-f ,f ,-f);123.456001,-123.45600,123.46,-123.46 小數(shù)保留兩位,四舍五入截?cái)?。小?shù)保留兩位,四舍五入截?cái)?。符?hào)占一位符號(hào)占一位!第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2
37、Basic of C languageHFUT Xuan & Li輸入函數(shù)輸入函數(shù)scanf()()格式:格式: scanf(“格式說明字符串格式說明字符串”,輸入變量,輸入變量地址地址列表列表); 說明:說明: m域?qū)捒勺詣?dòng)截取,空格作為各數(shù)據(jù)項(xiàng)的分隔符。域?qū)捒勺詣?dòng)截取,空格作為各數(shù)據(jù)項(xiàng)的分隔符。 void main(void) int i,j; scanf(%3d%3d,&i,&j); printf(%dn%d,i,j);123456實(shí)型變量輸入時(shí)不能規(guī)定精度;實(shí)型變量輸入時(shí)不能規(guī)定精度;scanf(“%7.2f”,&a); ERROR! 數(shù)據(jù)輸入用數(shù)據(jù)輸入
38、用SPACE分隔,當(dāng)分隔,當(dāng)格式字符用其他字符隔離,輸入格式字符用其他字符隔離,輸入時(shí)也應(yīng)在對(duì)應(yīng)位置上輸入相同的字符時(shí)也應(yīng)在對(duì)應(yīng)位置上輸入相同的字符;void main(void) int i,j; scanf(i=%d,j=%d,&i,&j); printf(n%dn%d,i,j);輸入項(xiàng)只能是變量,且必須用地址形式。輸入項(xiàng)只能是變量,且必須用地址形式。第第二二章章 C C語語言言基基礎(chǔ)礎(chǔ)合肥工業(yè)大學(xué)Chapter 2 Basic of C languageHFUT Xuan & Li字符輸入輸出函數(shù)字符輸入輸出函數(shù)輸入:輸入:getchar ( );輸出:輸出:putchar ( );#include void main(void) char ch1,ch
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年岳陽職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年山西藥科職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年山東外貿(mào)職業(yè)學(xué)院高職單招語文2019-2024歷年真題考點(diǎn)試卷含答案解析
- 2025年宜賓職業(yè)技術(shù)學(xué)院高職單招(數(shù)學(xué))歷年真題考點(diǎn)含答案解析
- 2025年安徽郵電職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年(2019-2024年)真題考點(diǎn)試卷含答案解析
- GSP管理知識(shí)培訓(xùn)課件
- 新發(fā)展英語(第二版)綜合教程3 課件 Unit 10 Making Guesses and Predictions
- 90后小學(xué)生音樂課件
- 2020醫(yī)療安全課件
- 湖南省長沙市寧鄉(xiāng)市2025屆高三畢業(yè)班聯(lián)考(二)物理試題含解析
- HG-T 6136-2022 非金屬化工設(shè)備 玄武巖纖維增強(qiáng)塑料貯罐
- 供應(yīng)商質(zhì)量事故索賠單
- 2023年河南省鄭州市中考一模語文試題(含答案與解析)
- 骨質(zhì)疏松與關(guān)節(jié)置換課件
- GIS軟件工程的總體設(shè)計(jì)-
- 主體結(jié)構(gòu)質(zhì)量驗(yàn)收檢驗(yàn)批
- 犬生理結(jié)構(gòu)-泌尿系統(tǒng)解剖(動(dòng)物解剖生理)
- 網(wǎng)頁制作技術(shù)知到章節(jié)答案智慧樹2023年通遼職業(yè)學(xué)院
- 灰色清華大學(xué)畢業(yè)論文答辯PPT模板
- 合肥市規(guī)劃許可證至施工許可證辦理流程
- 幼兒園:《學(xué)前兒童健康學(xué)習(xí)與發(fā)展核心經(jīng)驗(yàn)》(二)
評(píng)論
0/150
提交評(píng)論