




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1第2章基本數(shù)據(jù)類型2主要內(nèi)容一、數(shù)據(jù)類型概述二、基本數(shù)據(jù)類型——整型、實(shí)型、字符型三、標(biāo)識符、常量和變量四、數(shù)據(jù)的輸入與輸出3一、C的數(shù)據(jù)類型數(shù)據(jù)類型基本類型整型字符型實(shí)型(浮點(diǎn)型)枚舉類型構(gòu)造類型數(shù)組類型結(jié)構(gòu)體類型共用體類型指針類型空類型單精度型雙精度型在程序中對用到的所有數(shù)據(jù)都必須指定其數(shù)據(jù)類型.?不同類型的數(shù)據(jù),對其的存儲單元不同,操作也不相同4二、基本數(shù)據(jù)類型(一)整數(shù)類型(二)實(shí)數(shù)類型(三)字符類型5(一)、整數(shù)類型表示方法十進(jìn)制:123,-456,0八進(jìn)制:0123,-0456,十六進(jìn)制:0x123,-0X456以0開頭以0x或0X開頭存儲方式二進(jìn)制補(bǔ)碼形式(P19)分類及取值范圍類型比特?cái)?shù)范圍int[signed]int32
-2147483648~2147483647unsignedint320~4294967295short[int]
[signed]short[int]16-32768~32767(215-1)unsignedshort[int]160~65535long[int][signed]long[int]32-2147483648~2147483647unsignedlong[int]320~4294967295[]表示可以省略6(二)、實(shí)數(shù)類型(浮點(diǎn)型)表示方法十進(jìn)制小數(shù)形式:123.,.123,123.0,-0.0045,0.0指數(shù)形式:1.23e2,-4.5e-3數(shù)字和小數(shù)點(diǎn)組成規(guī)范化指數(shù)形式存儲方式指數(shù)形式(數(shù)符+小數(shù)部分+指數(shù)部分)(P21)分類及取值范圍
類型比特?cái)?shù)有效數(shù)字?jǐn)?shù)值范圍
float
326~7-3.4×10-38~3.4×1038
double
6415~16-1.7×10-308~1.7×10308longdouble12818~19-1.2×10-4932~1.2×104932小數(shù)部分占的位數(shù)越多,數(shù)的有效數(shù)字越多,精度越高.指數(shù)部分占的位數(shù)越多,表示的數(shù)值范圍越大.7(三)、字符類型表示方法用單引號括起來的一個字符.‘a(chǎn)’‘A’‘9’‘=’‘?’不同的兩個字符存儲方式以ASCII碼存儲,占一個字節(jié)(P22)類型及范圍char大小寫英文字母,數(shù)字,運(yùn)算符,標(biāo)點(diǎn)符號等轉(zhuǎn)義字符
字符形式含義(P23)
\n
換行,從當(dāng)前位置移到下一行開頭
\t水平制表(跳到下一個tab位置)\b退格,將當(dāng)前位置移到前一列
\r回車,將當(dāng)前位置移到本行開頭
…………將\后面的字符轉(zhuǎn)換為另外的意義.即是一種控制符號.8(三)、字符類型舉例#include<stdio.h>voidmain(){printf(“abc\bd\nxyz”);printf(“\rlmn\topq\n”);}結(jié)果:abdlmnopq字符串1、字符串常量:用“”引起來的字符序列。2、舉例:“China”,“Hello!”,“a”3、’a’是字符,”a”是字符串。4、不能把一個字符串賦給一個字符變量。c=“Hello!”5、C語言中沒有字符串變量,可以用字符數(shù)組來表示。實(shí)際中,不會這樣使用?。空埧唇滩?2、23頁9三、標(biāo)識符、常量與變量(一)標(biāo)識符(二)常量(三)變量10標(biāo)識符identifier(1)標(biāo)識符就是一個名字(如常量名、變量名、函數(shù)名……)。(2)組成:只能由字母、數(shù)字、下劃線組成。且第一個字符必須為字母或下劃線。(3)長度:標(biāo)識符的有效長度隨系統(tǒng)而異,如果超長,則超長部分被舍棄。VC++6.0中規(guī)定最大長度為255個字符。(4)標(biāo)識符大小寫是有區(qū)別的。
例如:SUM和sum是不同的標(biāo)識符(5)標(biāo)識符命名的良好習(xí)慣──見名知意
例如,name(姓名)、age(年齡)(一)標(biāo)識符11標(biāo)識符的分類根據(jù)不同的用處,標(biāo)識符分為:(1)關(guān)鍵字由程序員自己定義的變量名、符號常量名、數(shù)組名、函數(shù)名等。(2)預(yù)定義標(biāo)識符(3)用戶標(biāo)識符C語言中有特定含義的標(biāo)識符,主要用于描述庫函數(shù)名(如printf、scanf等)和編譯預(yù)處理命令名(如define、include等)。又叫保留字,是指C語言規(guī)定的、有特殊含義和專門用途的標(biāo)識符,主要用于描述數(shù)據(jù)類型、存儲類型、類型定義和語句控制。C語言中規(guī)定的關(guān)鍵字有32個。用戶標(biāo)識符不能使用關(guān)鍵字,盡量避免使用預(yù)定義標(biāo)識符。教材15頁12(二)常量概念在程序運(yùn)行過程中,其值不能被改變的量。分類字面常量(直接常量):12-44.6‘a(chǎn)’“Hello!”符號常量:用一個標(biāo)識符代表一個常量。
字符串常量符號常量的定義格式:#define常量名字面常量舉例:#definePRICE100
#definePI3.14#defineC1’a’習(xí)慣上常量名用大寫,變量名用小寫。意義1、含義清楚。2、在需要改變一個常量時,能夠做到“一改全改”。符號常量的定義放在函數(shù)外面。13常量——舉例(求某商品總價(jià))#include<stdio.h>#definePRICE100//定義符號常量voidmain(){ intsum; sum=PRICE*20; printf("%d\n",sum);}單價(jià)——符號常量數(shù)量——直接常量14概念其值可以改變的量稱為變量。(變量名和變量值)標(biāo)識符變量定義類型名變量名列表;說明1、變量說明應(yīng)出現(xiàn)在函數(shù)體的聲明部分。2、程序中用到的變量必須“先定義,后使用”。(三)變量15(三)變量例1inta1,a2;floatx1,x2;doubley1,y2;charc1,c2;習(xí)慣上,變量名用小寫字母。C語言中,大寫字母和小寫字母是不同的兩個字母。變量賦初值格式:變量名=數(shù)據(jù)方式:1、定義變量的同時賦初值。
2、通過一個賦值語句給變量賦初值。出現(xiàn)在函數(shù)體的聲明部分出現(xiàn)在函數(shù)體的執(zhí)行部分例2inta,b=3;inta,b;b=3;16說明1、給變量賦值時,正常情況下應(yīng)給變量賦相同類型的數(shù)據(jù)。2、若給變量賦與其類型不同的數(shù)據(jù)時,需進(jìn)行類型轉(zhuǎn)換。例3#include<stdio.h>voidmain(){inta1,a2;floatx1,x2;doubley1,y2;charc1,c2;……x1=75.4;y1=x1;a1=65;c1=‘a(chǎn)’;a2=c1;c2=a1;printf(“a2=%d,c2=%c”,a2,c2);……}結(jié)果:a2的值為97。c2的值為’A’.取小寫字母‘a(chǎn)’的ASCII碼將65作為ASCII碼轉(zhuǎn)化為相應(yīng)的字符。(三)變量17(一)、C的輸入與輸出(二)、單個字符的輸出(三)、單個字符的輸入(四)、格式輸出(五)、格式輸入四、數(shù)據(jù)的輸入與輸出18說明1、所謂輸入輸出是以計(jì)算機(jī)為主體而言的。2、輸入輸出操作是由函數(shù)實(shí)現(xiàn)的。標(biāo)準(zhǔn)輸入輸出函數(shù)putchar()getchar()puts()gets()printf()scanf()預(yù)編譯命令在使用C語言庫函數(shù)時,要用預(yù)編譯命令"#include"將有關(guān)的"頭文件"包括到用戶源文件中。舉例#include<stdio.h>voidmain(){printf("Hello!");}#include"stdio.h"注:在TC環(huán)境中,若使用printf()或scanf()函數(shù),則前面的預(yù)編譯命令可以省略!在VC++環(huán)境中不能省略!(一)C的輸入與輸出19作用向終端(或系統(tǒng)默認(rèn)的輸出設(shè)備)輸出一個字符。舉例#include<stdio.h>voidmain(){
charch1='B',ch2='O',ch3='Y';putchar('\"');/*輸出雙引號*/putchar(ch1);putchar(ch2);putchar(ch3);/*輸出BOY*/putchar('\"');/*輸出雙引號*/}(二)單個字符的輸出——putchar函數(shù)顯示器格式?A"BOY"輸出putchar(ch);注:
ch
可以是一個字符型(整型)變量、常量或表達(dá)式;
也可以是一個轉(zhuǎn)義字符,如putchar('\n')、putchar('\101')。putchar('B');p2320作用從終端(或系統(tǒng)默認(rèn)的輸入設(shè)備)輸入一個字符。舉例#include
<stdio.h>voidmain(){
charc1;c1=getchar();putchar(c1);putchar(getchar());}輸入:a鍵盤(三)、單個字符的輸入
——getchar函數(shù)輸出格式
注:getchar函數(shù)沒有參數(shù),所接受的字符可以賦給字符型或整型變量,也可以作為表達(dá)式的一部分。a_輸入:ab輸出ab_?getchar();21格式printf("格式控制字符串"
[,輸出列表]);說明1、"格式控制字符串"是用雙撇號引起來的字符串,包括三種信息:(1)格式說明:由%和格式字符組成。(如%d、%f)
(2)普通字符:需要按原樣輸出的字符。(3)轉(zhuǎn)義字符:(如\t、\n、\b、\r等)2、"輸出列表"是需要輸出的一些數(shù)據(jù),可以是表達(dá)式。將輸出的數(shù)據(jù)轉(zhuǎn)換為指定的格式輸出。(四)、格式輸出——printf函數(shù)作用向終端(或系統(tǒng)默認(rèn)的輸出設(shè)備)輸出若干個任意類型的數(shù)據(jù)。22例2#include<stdio.h>voidmain(){inta,b;a=3;b=4;printf("輸出結(jié)果為:");
printf("%d%d\n",a,b);printf("a=%d,b=%d\n",a,b);printf("a+b=%d",a+b);}輸出結(jié)果為:34a=3,b=4a+b=7_例1printf("sum=%d\n
%c",x,ch);普通字符格式說明轉(zhuǎn)義字符如果x=100,ch='A'
,那么下面的輸出語句將輸出什么結(jié)果?輸出列表輸出sum=100A_輸出23格式說明必須以%開始,以格式字符結(jié)束。一般形式如下:
%[標(biāo)志][寬度][.精度][l][格式字符]--nmd/f/c/e/s等長整型整數(shù)輸出數(shù)據(jù)向左靠攏輸出數(shù)據(jù)最小寬度對實(shí)數(shù):輸出小數(shù)點(diǎn)位數(shù);對字符串:截取字符的個數(shù)格式說明的一般形式24格式字符格式字符格式說明d,i以帶符號的十進(jìn)制數(shù)輸出整數(shù)(正數(shù)不輸出符號)c以字符形式輸出,只輸出一個字符f以小數(shù)形式輸出單、雙精度數(shù),隱含6位小數(shù)e,E以指數(shù)形式輸出實(shí)數(shù)o以八進(jìn)制無符號形式輸出整數(shù)(不輸出前導(dǎo)符0)x,X以十六進(jìn)制無符號形式輸出整數(shù)(不輸出前導(dǎo)符0x)…………附加格式說明字符字符說明l用于長整型數(shù)據(jù)輸出,可加在doxu前面m數(shù)據(jù)最小寬度n對實(shí)數(shù),表示輸出n位小數(shù);對字符串,表示截取的字符個數(shù)-輸出數(shù)據(jù)向左靠攏格式字符25#include<stdio.h>voidmain(){intnum1=123;longnum2=123456;
/*用3種不同格式,輸出int型數(shù)據(jù)num1的值*/printf("num1=%d,num1=%5d,num1=%-5d,num1=%2d\n",num1,num1,num1,num1);
/*用3種不同格式,輸出long型數(shù)據(jù)num2的值*/printf("num2=%ld,num2=%8ld,num2=%5ld\n",num2,num2,num2);printf("num1=%ld\n",num1);} 格式輸出舉例——d格式符P29,%md,%-md26綜合舉例floatx,y;x=111111.111;y=222222.222;printf("%f",x+y);333333.328125整數(shù)部分全部輸出,小數(shù)部分輸出6位因有效位數(shù)為7位,因此后面數(shù)字不準(zhǔn)確。p29floatx=123.456;printf("%f",x);printf("%10f",x);printf("%10.2f",x);printf("%.2f",x);printf("%-10.2f",x);123.456001123.456001123.46123.46123.46實(shí)數(shù)最常用的兩種輸出格式格式輸出舉例——f格式符27格式輸出舉例——c格式符#include<stdio.h>voidmain(){charc='A';inti=65;printf("c=%c,%5c,%d\n",c,c,c);printf("i=%d,%c",i,i);}輸出c=A,A,65i=65,A注意
在C語言中,整數(shù)可以用字符形式輸出,字符數(shù)據(jù)也可以用整數(shù)形式輸出。將整數(shù)用字符形式輸出時,系統(tǒng)首先求該數(shù)與256的余數(shù),然后將余數(shù)作為ASCII碼,轉(zhuǎn)換成相應(yīng)的字符輸出。28格式scanf("格式控制字符串"
[,地址列表]);說明1、"格式控制字符串"與printf函數(shù)類似。可以包含以下三種類型的信息:格式說明:與printf類似,以%開始,以一個格式字符結(jié)束;空白字符(空格、\t、\n):輸入多個數(shù)據(jù)時的缺省分隔符,可以省略,在輸入數(shù)據(jù)時可以以任一種空白字符分隔;普通字符(照原樣輸入)。2、"地址表列"是由若干個地址組成的列表,各地址之間用逗號分隔。如變量的地址表示為:&變量名。(五)、格式輸入——scanf函數(shù)作用從終端(或系統(tǒng)默認(rèn)的輸入設(shè)備)輸入若干個任意類型的數(shù)據(jù)。29inta,b;scanf(“%d%d”,&a,&b);printf(“%d,%d”,a,b);102010,20inta,b;scanf(“%d,%d”,&a,&b);printf(“%d,%d”,a,b);10,2010,20格式輸入舉例——d格式符注意舉例當(dāng)輸入多個數(shù)據(jù)時,若各個格式說明之間沒有其他字符,則系統(tǒng)默認(rèn)使用空格鍵、回車鍵和Tab鍵進(jìn)行間隔;若格式說明之間有其他字符,則必須照原樣輸入。102010,2030inta,b;printf(“Pleaseinput2integers:”);scanf(“%d%d”,&a,&b);printf(“%d,%d”,a,b);建議Pleaseinput2integers:在輸入語句之前配上一條printf語句,用來顯示輸入提示。舉例102010,2031floata;scanf(“%f”,&a);printf(“%f”,a);輸入:3.2floata;scanf(“%3.2f”,&a);pri
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑裝飾施工中的質(zhì)量保證措施考核試卷
- 中藥材種植的農(nóng)業(yè)生態(tài)環(huán)境保護(hù)法制建設(shè)考核試卷
- 批發(fā)業(yè)務(wù)會計(jì)與財(cái)務(wù)管理考核試卷
- 文化空間營造考核試卷
- 體育運(yùn)動訓(xùn)練中的運(yùn)動康復(fù)技術(shù)考核試卷
- 體育航空運(yùn)動飛行器空中交通管制操作考核試卷
- 寵物友好郵輪旅行船上寵物友好娛樂活動策劃分享考核試卷
- 走路的安全課件
- 勞動合同補(bǔ)充合同范本
- 綠化租賃合同范本
- 人工智能在軟件缺陷預(yù)測中的應(yīng)用
- 03D501-1 防雷與接地安裝
- IPQC入職崗位培訓(xùn)
- 牛津自然拼讀
- 2023年福建三明市沙縣區(qū)園區(qū)建設(shè)發(fā)展集團(tuán)有限公司招聘筆試題庫含答案解析
- 2023年醫(yī)學(xué)考研-同等學(xué)力考研西醫(yī)綜合歷年考試真題試卷摘選答案
- 王淑玲《做最好的自己》讀書分享
- TCADERM 5015-2023 救護(hù)直升機(jī)院際患者轉(zhuǎn)運(yùn)規(guī)范
- 肺動脈瓣狹窄的超聲演示
- 部編版-九年級下冊語文第一單元測試卷-含答案
- 分布式光伏電站施工
評論
0/150
提交評論