




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第二章
數(shù)據(jù)與運算了解數(shù)據(jù)在計算機中的表示了解常量與變量的含義。掌握數(shù)據(jù)類型及類型間的混合運算。掌握基本輸入、輸出函數(shù)的使用。C語言基本數(shù)據(jù)類型與基本輸入輸出數(shù)據(jù)的分類在現(xiàn)實世界中,我們所遇到的數(shù)可能既有整數(shù)部分,又有小數(shù)部分,這就存在一個如何表示小數(shù)點的問題,即如何確定小數(shù)點的位置。根據(jù)小數(shù)點的位置是否固定,數(shù)的格式可分為:定點表示浮點表示其中,定點數(shù)又分為無符號定點數(shù)、帶符號定點數(shù)。對于數(shù)據(jù)表示,我們最關(guān)心兩項指標(biāo):第一,表示范圍,即在正負(fù)兩個方向上各能表示多大的數(shù)第二,分辨率,也就是表示數(shù)的精細(xì)程度定點表示法——帶符號定點整數(shù)帶符號定點整數(shù)是純整數(shù),它約定機器字的最高位為符號位,小數(shù)點在最低數(shù)位之后、且不出現(xiàn)在數(shù)碼序列中。格式為:xnxn-1xn-2……x2x1x0
符號位數(shù)值位小數(shù)點定點表示法——帶符號定點小數(shù)帶符號定點小數(shù)是純小數(shù),它約定機器字的最高位為符號位,小數(shù)點在符號位之后、最高數(shù)值位之前、且不出現(xiàn)在數(shù)碼序列中
。格式:x0x1x2……xn-2xn-1xn
符號位數(shù)值位小數(shù)點原碼反碼補碼移碼原碼
最高位為符號位,“0”表示正,“1”表示負(fù),數(shù)值部分是原數(shù)的絕對值。反碼正數(shù)的反碼和原碼相同,負(fù)數(shù)的反碼是對其原碼除符號位外各位求反,即0變1,1變0。補碼正數(shù)的補碼和原碼相同,負(fù)數(shù)的補碼是在其反碼的最后一位上加1。移碼將補碼的符號位取反可得移碼
。以定點整數(shù)為例,用數(shù)軸形式說明原碼、反碼、補碼的表示范圍。解:與原碼、反碼不同,補碼表示中“0”只用一種形式,且表示負(fù)數(shù)時可以到-2n。浮點數(shù)的表示方法把一個數(shù)的有效數(shù)字和數(shù)的范圍在計算機的一個存儲單元中分別予以表示,相當(dāng)于小數(shù)點的位置隨數(shù)的比例因子不同在一定范圍內(nèi)可自由浮動,所以把這種表示方式稱為浮點表示法。任意一個二進制數(shù)可以寫成:
N=2e×M M稱為浮點數(shù)的尾數(shù),純小數(shù)表示,基數(shù)為2;
e為浮點數(shù)的指數(shù),也叫階碼,整數(shù)表示,底數(shù)為2。浮點數(shù)在機器中由階碼和尾數(shù)來表示。尾數(shù)部分給出浮點數(shù)有效數(shù)字的數(shù)位,決定浮點數(shù)的精度;階碼指明小數(shù)點在數(shù)據(jù)中的位置,決定浮點數(shù)的表示范圍。(1)浮點數(shù)的格式浮點數(shù)的表示格式
EsE1E2…EmMsM1M2…Mn階符階碼數(shù)符尾數(shù)數(shù)符決定浮點數(shù)的正負(fù);階符僅決定階碼本身的正負(fù)階碼通常使用移碼表示。
整數(shù)小數(shù)(3)規(guī)格化為了提高浮點數(shù)的表示精度,當(dāng)尾數(shù)不為0時,尾數(shù)域的最高數(shù)位必須是一個有效值。如果最高數(shù)位不是有效值,則通過尾數(shù)移位并修改階碼的辦法,使其變成有效值,這稱為浮點數(shù)的規(guī)格化。對規(guī)格化的浮點數(shù)規(guī)定如下:如果尾數(shù)是原碼表示,尾數(shù)的最高有效位一定為1。 如,0.1101×2-2
為規(guī)格化的浮點數(shù)表示,
0.01101×2-1則不是。如果尾數(shù)用補碼表示,尾數(shù)的最高有效位一定與符號位相反。如:0.1x…x和1.0xx…x是規(guī)格化的補碼表示。-1/2是個特殊的浮點數(shù),無規(guī)格化表示,所以不在浮點數(shù)規(guī)格化表示的范圍內(nèi)。
C語言基礎(chǔ)C的數(shù)據(jù)類型
數(shù)據(jù)類型決定:1.
數(shù)據(jù)占內(nèi)存字節(jié)數(shù)2.數(shù)據(jù)取值范圍3.其上可進行的操作C數(shù)據(jù)類型基本類型構(gòu)造類型指針類型空類型void定義類型typedef枚舉類型enum數(shù)組共用體nion結(jié)構(gòu)體struct單精度型float雙精度型double字符類型char整型實型短整型short長整型long整型int數(shù)據(jù)往往都是以某種特定形式存在的,C語言提供的數(shù)據(jù)類型如下:
C語言基礎(chǔ)標(biāo)識符用來標(biāo)識變量名、符號常量名、函數(shù)名、數(shù)組名、類型名、文件名的有效字符序列稱為標(biāo)識符。規(guī)定標(biāo)識符只能由字母、數(shù)字和下劃線三種字符組成,并且第一個字符必須為字母或下劃線。
例:判斷下列標(biāo)識符號合法性area、sum、a&b、$234、_above、PI、name、Name、class、CLASSX1、kk、_student、a、abc
C語言基礎(chǔ)變量C語言的標(biāo)識符可以分為以下三類:關(guān)鍵字:在程序中都代表著固定的含義,不能另 作它用。預(yù)定義標(biāo)識符:有特定的含義。為了避免誤 解,建議用戶不要把這些預(yù)定 義標(biāo)識符另作它用。用戶標(biāo)識符:由用戶根據(jù)需要定義的標(biāo)識符
C語言的標(biāo)識符中,將區(qū)分大小寫,name和Name、CLASS和class都是不同的標(biāo)識符。
C語言基礎(chǔ)常量10、-28;3.14;'a'、'A'
;”abc” 程序運行過程中,值不發(fā)生改變的量稱為常量。直接常量:程序中直接寫出的常量(即常數(shù)),也稱為字面常量符號常量:給常量起一個名,常用大寫字母表示。
C語言基礎(chǔ)常量#definePI3.14
main(){floatr,circle,area;r=2.4;circle=2*PI*r;area=PI*r*r;printf("circle=%f,area=%f\n",circle,area);}程序的運行結(jié)果是:circle=15.072001,rea=18.086401程序中用#define命令行定義PI代表常量3.14,此后凡在本文件中出現(xiàn)的PI都代表3.14,可以和常量一樣進行運算。
符號常量
C語言基礎(chǔ)
變量#definePI3.14main(){floatr,c,area;r=2.4;……printf("c=%f,area=%f\n",c,area);}r、c和area就是變量名,命名規(guī)則應(yīng)遵守標(biāo)識符命名規(guī)則變量的定義
程序運行過程中,值可改變的量稱為變量。每一個變量都應(yīng)該有一個名字作為標(biāo)識,屬于用戶標(biāo)識符。
C語言基礎(chǔ)變量變量定義的一般格式:
數(shù)據(jù)類型
變量1[,變量2,…,變量n];C語言所允許的任何數(shù)據(jù)類型,包括基本數(shù)據(jù)類型及構(gòu)造數(shù)據(jù)類型等合法標(biāo)識符例:
inti;
floatdata;變量必須遵從“先定義,后使用”的原則。如:
inti;i=10;(將10這個值賦給i這個變量)變量定義可執(zhí)行語句
整型數(shù)據(jù)整型數(shù)據(jù)包括:整型常量整型變量
整型數(shù)據(jù)整型常量三種形式:十進制整數(shù):由數(shù)字0~9和正負(fù)號表示.如32、-8、0等八進制整數(shù):由數(shù)字0開頭(注意:不是字母o),后跟數(shù) 字0~7表示.如012、011、016十六進制整數(shù):由0x(或0X)開頭,后跟0~9,a~f,A~F表 示.如0x123,0Xff注意:八進制數(shù)、十六進制數(shù)的合法數(shù)字表 示,十六進制數(shù)中字母大、小寫等同0xaa等同于0xAA
整型數(shù)據(jù)整型常量#include<stdio.h>main(){inta,b,c;a=100;b=0100;c=0x100;printf("a=%d,b=%d,c=%d\n",a,b,c);}%d控制用十進制格式輸出輸出結(jié)果是:a=100,b=64,c=256
整型數(shù)據(jù)常量main(){printf("%d,%d\n",0,32767);printf("%d,%o\n",010,010);printf("%d,%o\n",0x10,0X10);}
%d控制用十進制格式輸出%o控制用八進制格式輸出輸出結(jié)果是:0,327678,1016,20舉例:%x控制用十六進制格式輸出
整型數(shù)據(jù)整型變量1.分類:歸納起來,可以用以下6種整型變量。即:有符號基本整型[signed]int
有符號短整型[signed]short[int]有符號長整型[signed]long[int]無符號基本整型unsigned[int]無符號短整型unsignedshort[int]無符號長整型unsignedlong[int]
整型數(shù)據(jù)變量例:inta,b;(指定變量a、b為整型)
unsignedintc,d;(指定變量c、d為無符號整型)
整型變量的定義:
編譯程序會按各變量類型為其開辟相應(yīng)的存儲單元,但是存儲單元中原有值并沒被清除。
整型數(shù)據(jù)變量main(){inta=10,b=-25;unsignedshortc=2,d=100;longe=123456,f=-1234567;…}定義a、b為整型變量,它們的初值分別為10和-25定義變量c、d為無符號短整型,初值分別為2和100定義e、f為長整型,初值分別為123456和-1234567
對變量的定義,一般是放在一個函數(shù)的開頭部分的聲明部分.規(guī)定,可在定義變量時給變量賦初值,稱為變量初始化。
整型數(shù)據(jù)#include<stdio.h>main(){inta=3,b=6;printf("a=%d,b=%d\n",a,b);}
#include<stdio.h>main(){inta=b=c=6;printf("a=%d,b=%d,c=%d\n",a,b,c);}運行結(jié)果是:a=3,b=6程序在編譯過程中出現(xiàn)錯誤:errorC2065:'b':undeclaredidentifiererrorC2065:'c':undeclaredidentifier整型數(shù)據(jù)的特性見下表:數(shù)據(jù)類型名說明VisualC++6.0環(huán)境TurboC2.0環(huán)境字節(jié)取值范圍字節(jié)取值范圍short[int]短整型2-32768~327672-32768~32767signedshort[int]帶符號短整型2-32768~327672-32768~32767unsignedshort[int]無符號短整型20~6553520~65535int整型4-2147483648~21474836472-32768~32767[signed]int帶符號整型4-2147483648~21474836472-32768~32767unsigned[int]無符號整型40~429496729520~65535long[int]長整型4-2147483648~21474836474-2147483648~2147483647signedlong[int]帶符號長整型4-2147483648~21474836474-2147483648~2147483647unsignedlong[int]無符號長整型40~429496729540~4294967295
整型數(shù)據(jù)一個int型變量的最大允許值為2147483647,如果再加1,會出現(xiàn)什么情況?#include"stdio.h"voidmain(){inti,j;i=2147483647;j=i+1;printf("i=%d,j=%d\n",i,j);}程序的運行結(jié)果是:i=2147483647,j=-2147483648
結(jié)論:C語言的用法比較靈活,往往出現(xiàn)副作用,而系統(tǒng)又不給出“出錯信息”,要靠程序員的細(xì)心和經(jīng)驗來保證結(jié)果的正確。整型數(shù)據(jù)的溢出
實型數(shù)據(jù)實型數(shù)據(jù)包括:實型常量實型變量
實型數(shù)據(jù)常量實型常量(浮點數(shù))即帶小數(shù)點的實數(shù)。
表示形式:十進制數(shù)形式:(必須有小數(shù)點)如 0.1234、.1234、-1234.、0.0
指數(shù)形式: 由尾數(shù)、字母e或E、指數(shù)三部分組成。如3.85e4或3.85E4均表示3.85×104,(e或E之前必須有數(shù)字;指數(shù)必須為整數(shù))例:判斷下列指數(shù)形式的合法性
13E6
3.5e4.5
.e3
-1.23456e-2e規(guī)范化的指數(shù)形式:在字母e(或E)之前的尾數(shù)中,小數(shù)點左邊應(yīng)有一位(且只能有一位)非零的數(shù)字。例如:3.478e2
實型數(shù)據(jù)常量main(){printf("%f\n",0.1234);
printf("%e\n",123.456);}程序輸出結(jié)果是:0.1234001.23456e+02%e控制用指數(shù)形式輸出按規(guī)范化的指數(shù)形式輸出
實型數(shù)據(jù)變量實型變量1.實型數(shù)據(jù)在內(nèi)存中的存放形式
2.實型變量的分類
分為單精度(float型)、雙精度(double型)和長雙精度型(longdouble)三類。3.實型變量也應(yīng)在使用前加以定義。如:float
x,y;(指定x、y為單精度實數(shù))doublez;(指定z為雙精度實數(shù))實型變量數(shù)據(jù)類型名說明VisualC++6.0環(huán)境TurboC2.0環(huán)境字節(jié)取值范圍有效數(shù)字字節(jié)取值范圍有效數(shù)字float單精度實型4-3.4×1038~3.4×10386~74-3.4×1038~3.4×10386~7double雙精度實型8-1.7×10308~1.7×1030815~168-1.7×10308~1.7×1030815~16longdouble長雙精度實型16-1.2×104932~1.2×10493218~1910-1.2×104932~1.2×10493218~19實型變量例題:已知圓的半徑,求圓的面積并輸出。
#include<stdio.h> #definePI3.14159 main() { floatr,s; scanf("%f",&r); s=PI*r*r; printf("s=%f\n",s); }字符型數(shù)據(jù)字符型數(shù)據(jù)包括:字符型常量字符型變量字符常量字符常量區(qū)分大小寫如'a'、'I'、'A'、‘\n’如'a'、'A'是兩個不同的字符常量
字符常量的值:該字符的ASCII碼值如‘a(chǎn)’在內(nèi)存的字節(jié)中存放的ASCII值是97
特殊的字符常量:以一個“\”開頭的字符序列。(轉(zhuǎn)義字符)
字符型數(shù)據(jù)常量定義:用單引號括起來的單個普通字符或轉(zhuǎn)義字符.
字符型數(shù)據(jù)常量<轉(zhuǎn)義字符含義\n\v\r\a\‘\ddd\t\b\f\\\“\xhh轉(zhuǎn)義字符含義換行垂直制表回車響鈴單引號3位8進制數(shù)代表的字符水平制表退格換頁反斜線雙引號2位16進制數(shù)代表的字符“轉(zhuǎn)義字符”:即將反斜杠(\)后面的字符轉(zhuǎn)換成另外的意義。如:‘\n‘中的“n”不代表字母n而作為“換行”符。(仍代表一個字符)
以“\”開頭的特殊字符字符型數(shù)據(jù)常量main(){printf("%c,%c\n",‘a(chǎn)’,‘A’);
printf("%d,%d\n",‘a(chǎn)’,‘A’);
printf("%c,%c\n",‘a(chǎn)’-32,‘A'+1);
}%c控制字符形式輸出%d整數(shù)格式輸出字符常量的ASCII碼值程序輸出結(jié)果是:
a,A97,65A,B由于字符常量存放的是ASCII碼值,所以字符常量可以同數(shù)值常量一樣參加算術(shù)運算。字符型數(shù)據(jù)變量字符型變量1.字符變量的定義:
一個字符變量在內(nèi)存中占一個字節(jié)
charc1,c2;c1=‘a(chǎn)’;c2=‘b’;/*對c1、c2賦值*/2.字符數(shù)據(jù)在內(nèi)存中的存放及其使用方法: 存放的是該字符相應(yīng)的ASCII碼。例如:字符'a'的ASCII碼為97,'b'為98字符數(shù)據(jù)的存儲形式與整數(shù)的存儲形式類似。所以字符數(shù)據(jù)與整型數(shù)據(jù)可以互相賦值。字符型數(shù)據(jù)數(shù)據(jù)類型名說明字節(jié)取值范圍char字符型1-128~127[signed]char帶符號字符型1-128~127unsignedchar無符號字符型10~255
字符型數(shù)據(jù)變量字符數(shù)據(jù)和整型數(shù)據(jù)的相互賦值與變換輸出:
舉例:main(){charc1,c2;inti,j;c1=97;c2=98;i='A';j='B';
printf(“%c%c\n”,c1,c2);
printf(“%d%d\n”,c1,c2);
printf("%c%c\n",i,j);
printf("%d%d\n",i,j);
}程序的運行結(jié)果是:
ab
97
98AB6566
返回字符常量與字符串常量不同字符串常量定義:用雙引號(“”)括起來的若干字符,簡稱:字符串
如”STRING”存儲:每個字符串尾自動加一個‘\0’作為字符串結(jié)束標(biāo)志a
a\0例‘a(chǎn)’“a”例空串“”\0
C語言基礎(chǔ)常量例字符串“STRING”在內(nèi)存中STRING\0
C語言基礎(chǔ)常量main(){printf("Computer");printf("\nIamaboy!\n");printf("%s\n","STRING");}
程序輸出結(jié)果是:
ComputerIamaboy!STRING單引號、雙引號分別是字符常量和字符串常量的標(biāo)記,字符串和字符常量是兩個不同的概念。C語言表達式與運算符一、運算符和表達式簡介
表達式由運算符(例如:+—*/)、運算對象(也稱操作數(shù),可以是常量、變量等等)和括號組成。表達式運算所得到的結(jié)果值便是表達式的值。
例如:a+bx/y
C語言的運算符豐富,幾乎大部分操作都由運算符來完成。歸納起來,C的運算符有以下幾類:
運算符和表達式運算符和表達式算術(shù)運算符+-*/%指針運算符*和&關(guān)系運算符><>=<===!==求字節(jié)數(shù)運算符sizeof邏輯運算符!&&||強制類型轉(zhuǎn)換運算符
(類型)位運算符<<>>~|&∧分量運算符->賦值運算符=及其擴展賦值運算符下標(biāo)運算符[]條件運算符?:其他如函數(shù)調(diào)用運算符()逗號運算符,運算符和表達式二元運算符(或雙目運算符):運算符需要兩個操作數(shù)使用形式為:操作數(shù)1
運算符
操作數(shù)2一元運算符(或單目運算符):運算符需要一個操作數(shù)優(yōu)先級:決定表達式的運算順序。結(jié)合性:是指當(dāng)一個操作數(shù)左右兩邊的運算符優(yōu)先 級相同時,按什么樣的順序進行運算。包含自左向右,自右向左兩種順序。同一優(yōu)先級的運算符,運算順序由結(jié)合方向決定。總結(jié)單目運算符、賦值運算符和條件運算符的結(jié)合性是從右到左的運算符和表達式算術(shù)運算符與算術(shù)表達式算術(shù)運算符和表達式基本算術(shù)運算符:+-
(正負(fù))
*/%+-(加減)結(jié)合方向:從左向右優(yōu)先級:+----->*/%----->+-
(2)(3)(4)
說明:“-”為單目運算符時,右結(jié)合性若/運算符的運算對象均為整型數(shù)據(jù),則結(jié)果為其商的整數(shù)部分,舍去小數(shù)部分。如13/7的結(jié)果為1。若運算對象中有一個為負(fù)值,則舍入的方向是不固定的。如,-13/7在有的機器上得到結(jié)果是-1,有的機器上得到結(jié)果是-2,但多數(shù)機器采取“向零取整”方法,即13/7=1,-13/7=-1,取整后向零靠攏。%運算符的運算對象必須是整型數(shù)據(jù),運算結(jié)果的符號與被除數(shù)的符號相同,如,-13%7運算結(jié)果為-6,13%-7運算結(jié)果為6,-13%-7運算結(jié)果為-6
。第3章
順序結(jié)構(gòu)程序設(shè)計3.1語句簡介第3章
順序結(jié)構(gòu)程序設(shè)計1.表達式語句在一個表達式的后面加一個分號“;”就構(gòu)成表達式語句。例如:i=i+2是表達式,而不是語句。i=i+2
;
是語句。注:任何表達式都可以加上分號而成為語句2.函數(shù)調(diào)用語句在函數(shù)調(diào)用表達式后面加分號就構(gòu)成了函數(shù)調(diào)用語句。例如:
printf("thisisacstatement.");3.控制語句C語言中共有9種流程控制語句:if()….else、for() ……4.空語句只有1個分號的語句稱為空語句。如:;即是一個空語句,它什么也不做。5.復(fù)合語句由一對大括弧“{}”把若干語句括起來構(gòu)成的語句稱為復(fù)合語句。復(fù)合語句在語法上相當(dāng)于1個單一語句,在一對花括號內(nèi)的語句數(shù)量不限。例如:{t=a;a=b;b=t;
}3.1C語言語句類型復(fù)合賦值運算符種類:+=-=*=/=%=《=》=&=^=|=含義:變量op=表達式
變量=變量op表達式a+=3a=a+3x*=y+8x=x*(y+8)x%=3x=x%3運算符和表達式例a=10/*把常量10賦給變量a*/賦值運算符和表達式簡單賦值運算符符號:=格式:變量名=表達式作用:將一個數(shù)據(jù)(常量或表達式)賦給一個變量賦值表達式的值與變量值相等,且可嵌套說明:結(jié)合方向:自右向左左側(cè)必須是變量,不能是常量或表達式例inti;i=2.56;//結(jié)果i=2;運算符和表達式例3=x-2*y;a+b=3;賦值轉(zhuǎn)換規(guī)則:使賦值號右邊表達式值自動轉(zhuǎn)換成其左邊變量的類型例:a=b=c=5a=(b=5)a=5+(c=6)a=(b=4)+(c=6)a=(b=10)/(c=2)//表達式值為5,a,b,c值為5//b=5;a=5//表達式值11,c=6,a=11//表達式值10,a=10,b=4,c=6//表達式值5,a=5,b=10,c=2如果賦值運算符兩邊的數(shù)據(jù)類型不相同,系統(tǒng)將自動進行類型轉(zhuǎn)換,即把賦值號右邊的類型換成左邊的類型。具體規(guī)定如下:1.實型賦予整型,舍去小數(shù)部分。2.整型賦予實型,數(shù)值不變,但將以浮點形式存放,即增加小數(shù)部分(小數(shù)部分的值為0)3.字符型賦予整型,由于字符型為一個字節(jié),而整型為二個字節(jié),故將字符的ASCII碼值放到整型量的低八位中,高八位為0。4.整型賦予字符型,只把低八位賦予字符量。運算符和表達式#include"stdio.h"voidmain(){ inta,b=322; floatx,y=8.88; charc1='k',c2; a=y; x=b; a=c1; c2=b; printf("%d,%f,%d,%c",a,x,a,c2);}運算符和表達式運算符和表達式假設(shè)已有整型變量a,其值為3,試計算表達式:
a+=a-=a*a的值。main(){inta=3;printf("%d\n",a+=a-=a*a);}程序的運行結(jié)果是:-121.先計算“a*a”;2.計算“a-=9”; 3.計算“a+=-6”。
整型、單精度、雙精度及字符型數(shù)據(jù)可以進行混合運算。當(dāng)表達式中的數(shù)據(jù)類型不一致時,首先轉(zhuǎn)換為同一類型,然后再進行運算。C語言有兩種方法實現(xiàn)類型轉(zhuǎn)換:自動類型轉(zhuǎn)換強制類型轉(zhuǎn)換各類數(shù)值型數(shù)據(jù)間的混合運算說明:必定的轉(zhuǎn)換運算對象類型不同時轉(zhuǎn)換intintdoubledoubledoubledoubledoubledoublech/i+f*d-(f+i)charch;inti;floatf;doubled;C編譯系統(tǒng)自動完成,轉(zhuǎn)換方向見圖所示。自動類型轉(zhuǎn)換強制類型轉(zhuǎn)換強制類型轉(zhuǎn)換是指通過強制類型轉(zhuǎn)換運算符,將表達式的類型強制轉(zhuǎn)換為所指定的類型。強制類型轉(zhuǎn)換運算符:一般形式:(類型名)(表達式)
例(double)a(將a轉(zhuǎn)換成double類型)
(int)(x+y)(將x+y的值轉(zhuǎn)換成整型)
(float)(5%3)(將5%3的值轉(zhuǎn)換成float型)
說明:強制轉(zhuǎn)換得到所需類型的中間變量,
原變量類型不變。強制類型轉(zhuǎn)換。main(){floatx;inti;x=4.5;i=(int)x;/*強制類型轉(zhuǎn)換*/printf("x=%f,i=%d\n",x,i);}程序的運行結(jié)果是:
x=4.500000,i=4
類型轉(zhuǎn)換過程中,當(dāng)數(shù)據(jù)類型由低向高轉(zhuǎn)換時,數(shù)據(jù)精度不會受到損失;而數(shù)據(jù)類型由高到低的轉(zhuǎn)換,此時,數(shù)據(jù)精度會受到損失。C求字節(jié)運算符是sizeof,它用于計算變量或某種類型的量在內(nèi)存中所占的字節(jié)數(shù)。用法有兩種:
1.sizeof表達式功能是計算出表達式計算結(jié)果所占用內(nèi)存的字節(jié)數(shù)。2.sizeof(類型名)功能是計算出某種類型的量存儲時所占用內(nèi)存的字節(jié)數(shù)。
求字節(jié)運算符數(shù)據(jù)輸入輸出的概念及在C語言中的實現(xiàn)所謂輸入輸出是以計算機主機為主體而言的。從計算機向外部輸出設(shè)備(如顯示屏、打印機、磁盤等)輸出數(shù)據(jù)稱為“輸出”,從外部向輸入設(shè)備(如鍵盤、磁盤、光盤、掃描儀等)輸入數(shù)據(jù)稱為“輸入”。常用輸入輸出函數(shù)C語言本身不提供輸入輸出語句,輸入和輸出操作是由函數(shù)來實現(xiàn)的。在c標(biāo)準(zhǔn)函數(shù)庫中提供了一些輸入輸出函數(shù),例如,printf函數(shù)和scanf函數(shù)。C提供的函數(shù)以庫的形式存放在系統(tǒng)中,它們不是c語言文本中的組成部分。常用輸入輸出函數(shù)在使用c語言庫函數(shù)時,要用預(yù)編譯命令“#include”將有關(guān)的“頭文件”包括到用戶源文件中。在頭文件中包含了與用到的函數(shù)有關(guān)的信息。#include<stdio.h>或#include"stdio.h"stdio.h是standardinput&output的縮寫,它包含了與標(biāo)準(zhǔn)i/o庫有關(guān)的變量定義和宏定義。常用輸入輸出函數(shù)字符輸出函數(shù)putchar()字符輸入函數(shù)getchar()格式輸入函數(shù)printf()格式輸出函數(shù)scanf()只能輸入輸出一個字符而不能是字符串常用輸入輸出函數(shù)字符輸出函數(shù)putchar(),作用是向終端輸出一個字符。基本格式:putchar(ch);用法說明:參數(shù)ch使用比較靈活,可以是除字符串常量之外的字符常量、字符變量、整型常量、整型變量、實型常量、實型變量或各種表達式在程序中使用putchar()函數(shù)時,該程序的開頭必須用一條預(yù)編譯命令“#include<stdio.h>”。例:在putchar函數(shù)中使用不同參數(shù)輸出字符A。#include"stdio.h"main(){charch='A';inti=65;putchar(ch);/*輸出字符變量所代表的字符,得到運行結(jié)果中第一個A*/putchar(i);/*輸出以整型變量i的值為ASCⅡ碼的字符,得到運行結(jié)果中第二個A*/putchar('A');/*直接輸出字符常量'A',得到運行結(jié)果中第三個A*/putchar(65);/*輸出以十進制整型常量65為ASCⅡ碼的字符,得到運行結(jié)果中第四個A*/putchar('\n');/*輸出一個換行符*/}程序運行結(jié)果:AAAA常用輸入輸出函數(shù)字符輸入函數(shù)getchar(),接收從終端(或系統(tǒng)隱含指定的輸入設(shè)備)輸入的1個字符。它沒有參數(shù)。
基本格式:getchar();
例:輸入單個字符#include"stdio.h"main(){charch;ch=getchar();/*從鍵盤上接收一個字符*/putchar(ch);/*在屏幕上輸出該字符*/}運行過程:AA常用輸入輸出函數(shù)說明:getchar()函數(shù)
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國鉛白市場發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國鎢鐵行業(yè)發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國轎車懸架彈簧轎行業(yè)發(fā)展?fàn)顩r及前景趨勢分析報告
- 2025-2030年中國葡萄糖酸鈣市場競爭狀況及投資趨勢分析報告
- 2025-2030年中國色選機市場競爭格局及發(fā)展趨勢分析報告
- 2025-2030年中國紡織品直噴墨水行業(yè)發(fā)展趨勢與十三五規(guī)劃研究報告
- 2025-2030年中國立磨市場運行態(tài)勢及投資戰(zhàn)略研究報告
- 2025-2030年中國硫磺回收市場運行狀況及發(fā)展趨勢預(yù)測報告
- 2025-2030年中國石蠟行業(yè)市場運行狀況及發(fā)展策略分析報告
- 初中物理競賽及自主招生講義:第7講 密度、壓強與浮力(共5節(jié))含解析
- 2024-2025學(xué)年重慶市渝中區(qū)四年級(上)期末數(shù)學(xué)試卷
- 2025年人教版中考英語一輪復(fù)習(xí):七年級下冊考點測試卷(含答案)
- 三年級體育下冊全冊教案
- 2024年八年級語文下冊《經(jīng)典常談》第一章《說文解字》練習(xí)題卷附答案
- (研究生)商業(yè)倫理與會計職業(yè)道德ppt教學(xué)課件(完整版)
- 三年級數(shù)學(xué)下冊單元計劃【9個單元全】
- 火力發(fā)電廠水汽化學(xué)監(jiān)督導(dǎo)則
- 二年級科學(xué)上冊期末考試質(zhì)量分析
- 相聲《治病》
- 行動學(xué)習(xí)-組織能力提升新境界培訓(xùn)課件.ppt
評論
0/150
提交評論