C語(yǔ)言N02 C語(yǔ)言基本數(shù)據(jù)類型 2學(xué)時(shí)+2學(xué)時(shí)_第1頁(yè)
C語(yǔ)言N02 C語(yǔ)言基本數(shù)據(jù)類型 2學(xué)時(shí)+2學(xué)時(shí)_第2頁(yè)
C語(yǔ)言N02 C語(yǔ)言基本數(shù)據(jù)類型 2學(xué)時(shí)+2學(xué)時(shí)_第3頁(yè)
C語(yǔ)言N02 C語(yǔ)言基本數(shù)據(jù)類型 2學(xué)時(shí)+2學(xué)時(shí)_第4頁(yè)
C語(yǔ)言N02 C語(yǔ)言基本數(shù)據(jù)類型 2學(xué)時(shí)+2學(xué)時(shí)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第第頁(yè)C語(yǔ)言N02C語(yǔ)言基本數(shù)據(jù)類型2學(xué)時(shí)+2學(xué)時(shí)第二章基本數(shù)據(jù)類型

本章課程共2學(xué)時(shí)其中:授課2學(xué)時(shí),上機(jī)2學(xué)時(shí)

2.1基本數(shù)據(jù)類型類型符號(hào)關(guān)鍵字(signed)int(signed)short(signed)long所占位數(shù)161632數(shù)的范圍

P45-32768(-215)~32767(215-1)-32768(-215)~32767(215-1)-2147483648(-231)~2147483647(231-1)

有整型無

unsignedintunsignedshortunsignedlong

161632

0~65535(216-1)0~65535(216-1)0~4294967295(232-1)

有實(shí)型有有無

floatdoublecharunsignedchar

326488

3.4e-38~3.4e381.7e-308~1.7e308-128(-27)~127(27-1)0~255(28-1)2

字符型2022-6-27

2.2常量:程序運(yùn)行時(shí)值不能轉(zhuǎn)變的量P39符號(hào)常量:用標(biāo)識(shí)符代表的常量/*符號(hào)常量舉例E*02_01.c*/#definePRICE30main(){intnum,total;num=10;total=num*PRICE;printf(total=%d,total);}宏定義預(yù)處理指令,不是C語(yǔ)句

整型常量12,-22435,0313,0*121

實(shí)型常量3.14,1.2e-8,3.6E+9

字符常量A,‘E,‘+,‘\101,‘\*EF,‘\n

徑直常量:徑直用數(shù)值表示的常量2022-6-27

字符串常量“China”,“Hellow”,3“”

三種整型徑直常量的表示方式十進(jìn)制符號(hào):0~9,+,123,-456

八進(jìn)制十六進(jìn)制

以0開頭,后面跟符號(hào):0~7,以0*開頭,后面跟符號(hào):0~9,a~f,A~F

0123,0110*123,0*ff

整型徑直常量的類型的確定原那么:(1)依據(jù)其值所在范圍確定其數(shù)據(jù)類型(2)在整常量后加字母l或L,認(rèn)為它是longint型常量(2)在整常量后加字母u或U,認(rèn)為它是unsignedint型常量例:判定以下三個(gè)整型徑直常量的存儲(chǔ)方式和類型(1)12315(2)123L(3)-12345u2022-6-274

實(shí)型徑直常量的表示形式小數(shù)形式指數(shù)形式0.12,.34,-.56,123.12.3e3,123E2,1.23e4需要要有小數(shù)點(diǎn)E或e前需要有數(shù)字E或e后需要為整數(shù)

實(shí)型徑直常量的類型的確定原那么:(1)默認(rèn)為雙精度double型(2)在實(shí)型常量后加字母f或F,認(rèn)為它是浮點(diǎn)型(float)常量

2022-6-27

字符常量:用單引號(hào)括起來的單個(gè)一般字符或轉(zhuǎn)義字符

如:‘a(chǎn)A?\n\101字符常量的值:該字符的ASCII碼值如:‘A—65,‘a(chǎn)—97,‘0—48,\n—10轉(zhuǎn)義字符:反斜線后面跟一個(gè)字符或一個(gè)代碼值表示轉(zhuǎn)義字符\n

含義換行

轉(zhuǎn)義字符\t

含義制表符

例轉(zhuǎn)義字符舉例main(){printf(\101\*42C\n);printf(Isay:\Howareyou?\\n);printf(\\CProgram\\\n);printf(Turbo\'C\');}

\v\r\a

垂直制表符回車響鈴

\b\f\\

退格換頁(yè)反斜線

\\ddd

單引號(hào)3位8進(jìn)制數(shù)

\”\*hh

雙引號(hào)2位16進(jìn)制數(shù)

2022-6-27

運(yùn)行結(jié)果:(屏幕顯示)ABCIsay:”Howareyou?”\CProgram\TurboC

字符串常量:用雙引號(hào)(“”)括起來的字符序列每個(gè)字符串尾自動(dòng)加一個(gè)‘\0’作為字符串結(jié)束標(biāo)識(shí)hellow\0\0

字符常量與字符串常

量不同

a

a

“a”

a

\0

例:判斷以下常量所占內(nèi)存空間大小(1)'a'(2)China

答:(1)'a'為字符常量,所占空間為1字節(jié)(2)China為字符串常量,所占空間為字符數(shù)5+1=6字節(jié)2022-6-277

2.3變量:內(nèi)存中具有特定屬性的單元P41變量的理解aEFh23

–變量代表一個(gè)存儲(chǔ)單元–變量具有肯定的數(shù)據(jù)類型–變量有一個(gè)可以標(biāo)識(shí)的名字用于安排內(nèi)存

合法標(biāo)識(shí)符作為變量名稱

數(shù)據(jù)類型變量1[,變量2,…,變量n];

例:右側(cè)程序中有哪些錯(cuò)誤?main()

{inta,b=2;c=2.3;變量data應(yīng)在開始處定義floatdata;a=1;可以在定義的時(shí)候賦初值data=(a+b)*1.2;printf(“data=%f\n”,data);2022-6-27}變量c未定義

基本數(shù)據(jù)類型變量整型變量一般占2字節(jié)short≤int≤long用sizeof(類型標(biāo)識(shí)符)測(cè)量

實(shí)型變量

字符型變量

float:占4字節(jié),提供7字符變量存放字符位有效數(shù)字ASCII碼double:占8字節(jié),char與int數(shù)據(jù)間可進(jìn)15~16位有效數(shù)字行算術(shù)運(yùn)算

例:a=D;/*a=68;*/*=A+5;/**=65+5;*/s=!+G/*s=33+71;*/

沒有字符串變量,用字符數(shù)組存放2022-6-279

變量和常量定義的一個(gè)例子

例/*E*02_04.c*/#definePRICE12.5main(){intnum=3;floattotal;charch1,ch2=D;

宏定義變量定義

total=num*PRICE;輸出結(jié)果ch1=ch2-A+a;printf(“total=%f,ch1=%c\n”,total,ch1);}2022-6-27

運(yùn)行結(jié)果:total=37.500000,ch1=d

2.4基本數(shù)據(jù)類型的數(shù)據(jù)的輸入輸出P65留意:–C程序中沒有輸入輸出指令–C程序中的輸入輸出由特定的函數(shù)來實(shí)現(xiàn)字符輸出:putchar()

如何掌控這四個(gè)函數(shù)?(1)了解功能

數(shù)據(jù)輸出格式輸出:printf()字符輸入:getchar()格式輸入:scanf()

(2)了解應(yīng)用格式(3)了解輸入?yún)?shù)(4)知道返回值11

數(shù)據(jù)輸入

2022-6-27

例m.n例inta=1234;floatf=123.456;charch=a;printf(“%8d,%2d\n”,a,a);printf(“%f,%8f,%8.1f,%.2f,%.2e\n”,f,f,f,f,f);printf(“%3c\n”,ch);運(yùn)行1234,1234結(jié)果:123.456001,123.456001,123.5,123.46,1.2e+02a例staticchara[]=“Hello,world!”;printf(“%s\n%15s\n%10.5s\n%2.5s\n%.3s\n”,a,a,a,a,a);運(yùn)行結(jié)果:Hello,world!Hello,world!HelloHelloHel

2022-6-27

例-

例inta=1234;floatf=123.456;staticcharc[]=“Hello,world!”;printf(“%8d\n%-8d\n”,a,a);printf(“%10.2f\n%-10.1f\n”,f,f);printf(“%10.5s\n%-10.3s\n”,c,c);運(yùn)行結(jié)果:12341234123.46123.5HelloHel

2022-6-27

例0、+例inta=1234;floatf=123.456;printf(“%08d\n”,a);printf(“%010.2f\n”,f);printf(“%+08d\0+8d\n”,a);printf(“%+010.2f\0+10.2f\n”,f);

//00001234//0000123.46//000+1234//+0001234//000+123.56//+000123.56

例#例inta=123;printf(“%o,%#o,%

*,%#*\n”,a,a,a,a);//173,0173,7B,0*7B例l例longa=65536;printf(“%d,%8ld\n”,a,a);//0,6553600000000000000010000000000000000142022-6-27

格式化輸入的要點(diǎn)例字符串輸入的截取例scanf(“%3c%2c”,c1,c2);輸入abcde那么‘a(chǎn)c1,dc2數(shù)字輸入的截取scanf(“%4d%2d%2d”,yy,mm,dd);輸入19991015那么1999yy,10mm,15dd空格和回車作結(jié)束分隔scanf(“%2d%*3d%2d”,a,b);輸入1234567那么12a,67b

例屏蔽符*的應(yīng)用例scanf(“%3d%*4d%f”,k,f);輸入12345678765.43那么123k,8765.43f例其它字符原樣輸入scanf(“%d,%d”,a,b)輸入3,4那么3a,4b

例其它字符原樣輸入scanf(“a=%d,b=%d,c=%d”,a,b,c);輸入a=12,b=24,c=36那么12a,24b,36c其中空格對(duì)應(yīng)

2022-6-27

例其它字符原樣輸入scanf(“%d:%d:%d”,h,m,s);輸入12:30:45那么12h,30m,45s

留意:此處不可少!

2.5不同類型間的數(shù)據(jù)轉(zhuǎn)換隱式轉(zhuǎn)換轉(zhuǎn)換場(chǎng)合運(yùn)算轉(zhuǎn)換賦值轉(zhuǎn)換輸出轉(zhuǎn)換函數(shù)調(diào)用轉(zhuǎn)換

P54

intma*(int*,inty)inta;{floatf=1.2;}i=(int)*;例:charch;inti;floatf;doubled;longl;a=f;inta=65;charch='A';floatf=6.57;……printf(“*=%f,i=%d”,*,i);a的值為printf(a=%c,ch=%d,f=%d,a,ch,f);inta;?}-(f+i)+10+a+i*f-d/lch/I+f*d1輸出結(jié)果:a=A,ch=65,f=6a=ma*(3.14,'A');結(jié)果:*=3.600000,i=32022-6-27

例unsigned(int)(*+y)例main(){float*;(int)*+y(double)(3/2)inti;低intchar,short(int)3.6*=3.6;

高doublefloat顯式轉(zhuǎn)換(強(qiáng)制轉(zhuǎn)換)形式:(類型名)(表達(dá)式)得到所需類型的中間變量,long原變量類型不變

2.6算術(shù)運(yùn)算符與算術(shù)表達(dá)式包括符號(hào)–基本算術(shù)運(yùn)算符:+-*/%–自增和自減運(yùn)算符:++-例例5/2=2-5/2.0=-2.5例5%2-5%21%105%15.5%2=1=-1=1=0()j=3;j=3;j=3;j=3;a=3;a=3;

P52

學(xué)習(xí)運(yùn)算符時(shí)掌控什么?1.目:運(yùn)算對(duì)象的個(gè)數(shù)2.功能3.優(yōu)先級(jí)

4.結(jié)合方向(難點(diǎn))k=++j;k=j++;printf(“%d”,++j);printf(“%d”,j++);b=5;c=(++a)*b;b=5;c=(a++)*b;//j=4,k=4//j=4,k=3//4//3//a=4,c=20//a=4,c=15

例-i++-(i++)i=3;printf(“%d”,-i++);//-32022-6-27

例j+++k;(j++)+k;17

2.7賦值運(yùn)算符和賦值表達(dá)式包括符號(hào)

P59

例3=*-2*y;()a+b=3;()

–基本運(yùn)算符:=–復(fù)合運(yùn)算符:+=-=*=/=%====^=|=例a=3;d=func();c=d+2;a+=3a=a+3**=y+8*=**(y+8)*%=3*=*%3例那么

floatf;inti;i=10;f=i;f=10.0例inti;i=2.56;//結(jié)果i=2;

例:a=12;a+=a-=a*a;//a=-264等價(jià)于a=a+(a=a-(a*a))

例inta=2;a%=4-1;a+=a*=a-=a*=3;//a=0等價(jià)于a=a+(a=a*(a=a-(a=a*3)))例:a=b=c=5a=(b=5)a=5+(c=6)a=(b=4)+(c=6)a=(b=10)/(c=2)//表達(dá)式值為5,

a,b,c值為5//b=5,a=11//表達(dá)式值為11,c=6,a=11//表達(dá)式值10,a=10,b=4,c=6//表達(dá)式值5,a=5,b=10,c=2

2022-6-27

2.8逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式例a=3*5,a*4//a=15,表達(dá)式值60a=3*5,a*4,a+5//a=15,表達(dá)式值20*=(a=3,6*3)//賦值表達(dá)式,表達(dá)式值18,*=18*=a=3,6*a//逗號(hào)表達(dá)式,表達(dá)式值18,*=3a=1;b=2;c=3;printf(“%d,%d,%d”,a,b,c);//1,2,3printf(“%d,%d,%d”,(a,b,c),b,c);//3,2,3

例:/*E*02_05.c*/#includestdio.hmain(){int*,y=7;floatz=4;*=(y=y+6,y/z);printf(*=%d\n,y=%d,*,y);}2022-6-27

運(yùn)行結(jié)果:*=3,y=1319

第二章基本數(shù)據(jù)類型

本章課程共2學(xué)時(shí)其中:授課2學(xué)時(shí),上機(jī)2學(xué)時(shí)

2.1基本數(shù)據(jù)類型類型符號(hào)關(guān)鍵字(signed)int(signed)short(signed)long所占位數(shù)161632數(shù)的范圍

P45-32768(-215)~32767(215-1)-32768(-215)~32767(215-1)-2147483648(-231)~2147483647(231-1)

有整型無

unsignedintunsignedshortunsignedlong

161632

0~65535(216-1)0~65535(216-1)0~4294967295(232-1)

有實(shí)型有有無

floatdoublecharunsignedchar

326488

3.4e-38~3.4e381.7e-308~1.7e308-128(-27)~127(27-1)0~255(28-1)2

字符型2022-6-27

2.2常量:程序運(yùn)行時(shí)值不能轉(zhuǎn)變的量P39符號(hào)常量:用標(biāo)識(shí)符代表的常量/*符號(hào)常量舉例E*02_01.c*/#definePRICE30main(){intnum,total;num=10;total=num*PRICE;printf(total=%d,total);}宏定義預(yù)處理指令,不是C語(yǔ)句

整型常量12,-22435,0313,0*121

實(shí)型常量3.14,1.2e-8,3.6E+9

字符常量A,‘E,‘+,‘\101,‘\*EF,‘\n

徑直常量:徑直用數(shù)值表示的常量2022-6-27

字符串常量“China”,“Hellow”,3“”

三種整型徑直常量的表示方式十進(jìn)制符號(hào):0~9,+,123,-456

八進(jìn)制十六進(jìn)制

以0開頭,后面跟符號(hào):0~7,以0*開頭,后面跟符號(hào):0~9,a~f,A~F

0123,0110*123,0*ff

整型徑直常量的類型的確定原那么:(1)依據(jù)其值所在范圍確定其數(shù)據(jù)類型(2)在整常量后加字母l或L,認(rèn)為它是longint型常量(2)在整常量后加字母u或U,認(rèn)為它是unsignedint型常量例:判定以下三個(gè)整型徑直常量的存儲(chǔ)方式和類型(1)12315(2)123L(3)-12345u2022-6-274

實(shí)型徑直常量的表示形式小數(shù)形式指數(shù)形式0.12,.34,-.56,123.12.3e3,123E2,1.23e4需要要有小數(shù)點(diǎn)E或e前需要有數(shù)字E或e后需要為整數(shù)

實(shí)型徑直常量的類型的確定原那么:(1)默認(rèn)為雙精度double型(2)在實(shí)型常量后加字母f或F,認(rèn)為它是浮點(diǎn)型(float)常量

2022-6-27

字符常量:用單引號(hào)括起來的單個(gè)一般字符或轉(zhuǎn)義字符

如:‘a(chǎn)A?\n\101字符常量的值:該字符的ASCII碼值如:‘A—65,‘a(chǎn)—97,‘0—48,\n—10轉(zhuǎn)義字符:反斜線后面跟一個(gè)字符或一個(gè)代碼值表示轉(zhuǎn)義字符\n

含義換行

轉(zhuǎn)義字符\t

含義制表符

例轉(zhuǎn)義字符舉例main(){printf(\101\*42C\n);printf(Isay:\Howareyou?\\n);printf(\\CProgram\\\n);printf(Turbo\'C\');}

\v\r\a

垂直制表符回車響鈴

\b\f\\

退格換頁(yè)反斜線

\\ddd

單引號(hào)3位8進(jìn)制數(shù)

\”\*hh

雙引號(hào)2位16進(jìn)制數(shù)

2022-6-27

運(yùn)行結(jié)果:(屏幕顯示)ABCIsay:”Howareyou?”\CProgram\TurboC

字符串常量:用雙引號(hào)(“”)括起來的字符序列每個(gè)字符串尾自動(dòng)加一個(gè)‘\0’作為字符串結(jié)束標(biāo)識(shí)hellow\0\0

字符常量與字符串常

量不同

a

a

“a”

a

\0

例:判斷以下常量所占內(nèi)存空間大小(1)'a'(2)China

答:(1)'a'為字符常量,所占空間為1字節(jié)(2)China為字符串常量,所占空間為字符數(shù)5+1=6字節(jié)2022-6-277

2.3變量:內(nèi)存中具有特定屬性的單元P41變量的理解aEFh23

–變量代表一個(gè)存儲(chǔ)單元–變量具有肯定的數(shù)據(jù)類型–變量有一個(gè)可以標(biāo)識(shí)的名字用于安排內(nèi)存

合法標(biāo)識(shí)符作為變量名稱

數(shù)據(jù)類型變量1[,變量2,…,變量n];

例:右側(cè)程序中有哪些錯(cuò)誤?main()

{inta,b=2;c=2.3;變量data應(yīng)在開始處定義floatdata;a=1;可以在定義的時(shí)候賦初值data=(a+b)*1.2;printf(“data=%f\n”,data);2022-6-27}變量c未定義

基本數(shù)據(jù)類型變量整型變量一般占2字節(jié)short≤int≤long用sizeof(類型標(biāo)識(shí)符)測(cè)量

實(shí)型變量

字符型變量

float:占4字節(jié),提供7字符變量存放字符位有效數(shù)字ASCII碼double:占8字節(jié),char與int數(shù)據(jù)間可進(jìn)15~16位有效數(shù)字行算術(shù)運(yùn)算

例:a=D;/*a=68;*/*=A+5;/**=65+5;*/s=!+G/*s=33+71;*/

沒有字符串變量,用字符數(shù)組存放2022-6-279

變量和常量定義的一個(gè)例子

例/*E*02_04.c*/#definePRICE12.5main(){intnum=3;floattotal;charch1,ch2=D;

宏定義變量定義

total=num*PRICE;輸出結(jié)果ch1=ch2-A+a;printf(“total=%f,ch1=%c\n”,total,ch1);}2022-6-27

運(yùn)行結(jié)果:total=37.500000,ch1=d

溫馨提示

  • 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)論