![《C語言與程序設(shè)計》第三講-清華李宛洲_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/16/d84e01f8-444e-49e9-9d77-563133cff5ca/d84e01f8-444e-49e9-9d77-563133cff5ca1.gif)
![《C語言與程序設(shè)計》第三講-清華李宛洲_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/16/d84e01f8-444e-49e9-9d77-563133cff5ca/d84e01f8-444e-49e9-9d77-563133cff5ca2.gif)
![《C語言與程序設(shè)計》第三講-清華李宛洲_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/16/d84e01f8-444e-49e9-9d77-563133cff5ca/d84e01f8-444e-49e9-9d77-563133cff5ca3.gif)
![《C語言與程序設(shè)計》第三講-清華李宛洲_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/16/d84e01f8-444e-49e9-9d77-563133cff5ca/d84e01f8-444e-49e9-9d77-563133cff5ca4.gif)
![《C語言與程序設(shè)計》第三講-清華李宛洲_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/16/d84e01f8-444e-49e9-9d77-563133cff5ca/d84e01f8-444e-49e9-9d77-563133cff5ca5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、8位是一個字節(jié)2個字節(jié)組成一個字高8位字節(jié)低8位字節(jié)字節(jié)是構(gòu)成各種數(shù)據(jù)類型的基本單元非零即一,只有兩種狀態(tài)三種常用類型變量用它描述大于int數(shù)據(jù)范圍的整型變量用它描述大于float數(shù)據(jù)范圍的浮點變量#include#include#include#define PI 3.1415926int main(void)char ch_a; /定義字符變量int i_pi; /定義整數(shù)變量float f_pi;/定義實數(shù)變量ch_a=A;i_pi=PI;f_pi=PI;coutan example of outputendl;/提示coutch_a;i_pi; f_pi;endl;getch();re
2、turn(0);說明了一個圓周率常數(shù)分別定義了一個字符變量、整數(shù)變量和實數(shù)變量.字符數(shù)據(jù)用 描述取圓周率的整數(shù).取圓周率的實數(shù).分別輸出三個變量的數(shù)值.變量名字含義要清晰,見名知意。大小寫代表不同名字的變量。如果是8位十進制數(shù),它能表示多大的數(shù)值范圍?999999990數(shù)值108那么8位二進制數(shù)能表示數(shù)值范圍是多少?111111110數(shù)值282021222324252627位的權(quán)重如何表示正負數(shù)?前面加前面用0/1表示整型變量的范圍是多少?1 1 1 0, 0 1 0 12726252220+它是十進制的多少?=22955它是二進制的多少?2271131 60 31 111x20 x21x22
3、x23x24x251 1, 0 1 1 1十進制的55選擇它可以轉(zhuǎn)換成二進制的55二進制的558位是一個字節(jié),char類型2個字節(jié)組成一個字,即int類型高8位字節(jié)低8位字節(jié)char是單字節(jié)、int是2字節(jié)類型變量非零即一,只有兩種狀態(tài)同類型的變量、聚集在一起,稱為串它是載體2000A B CD sp E n200120022006內(nèi)存是數(shù)據(jù)的載體多個相關(guān)聯(lián)的字符類型的數(shù)據(jù)連續(xù)的在內(nèi)存中排列稱為字符串用結(jié)尾符表示字符串結(jié)束字符串的第一個字符所在的地址,叫字符串地址這個字符串表述為:”ABCD E”;該字符串變量聲明為:char ch_s20;其中:ch_s是字符串變量名;起始地址在2000單元
4、;連續(xù)可用20個字節(jié);實際占用了 字節(jié)。ch_s7char ch_a= A; char ch_s10=ABCD EFGH;定義字符變量,初始化為字符A.定義字符型數(shù)組,最多允許9個字符,初始化為ABCD EFGH.空格也是一個字符(1)通過聲明時的初始化操作給字符串賦值(2)通過函數(shù)操作給字符串賦值(3)通過鍵盤操作給字符串賦值#include#include#include#include int main(void)char s120=;char s220,s320;strcpy(s2,lwz);coutinput of s3:s3;couts1=s1endl;couts2=s2endl;
5、couts3=s3endl;getch();return(0);字符串在初始化時置入s1運行時用庫函數(shù)strcpy(),將字符串”lwz”送入數(shù)組s2運行時從鍵盤輸入字符串到s3分別輸出各個字符串輸入字符串中,如果有空格怎么辦?屏幕上不回顯input緩沖型cin非緩沖型混合型:scanf()字符型getchar()gets()getche()getch()既可輸入字符也可輸入數(shù)值輸入一個字符輸入一個字符串,可以有空格回顯在屏幕上輸入字符串中不能有空格2027262021427222215指數(shù)是1字節(jié)尾數(shù)有3個字節(jié)假想的小數(shù)點位置尾數(shù)的符號位float的取值范圍與精度?223=8106:精度是7
6、位數(shù)2127=23023023023027=1038float的有效位數(shù)與精度: 12345671038230=109,27102#include#include#include#includeint main(void) float a; double b; coutthe example of float and double:endl; a=12345678.1234567; b=12345678.1234567; couta=setiosflags(ios:fixed)aendl; coutb=setiosflags(ios:fixed)bendl; getch(); return(0
7、);cout和cin的格式說明文件定義單精度和雙精度變量給a、b賦的值是8位數(shù),小數(shù)點后保留7位設(shè)定cout的輸出格式,分別以定點小數(shù)方式輸出a、b的值double有13位有效數(shù)故float精度是8位有效數(shù)Float在8位數(shù)以后的數(shù)值無法保存Printf()是標準c的輸出函數(shù)#include#includeint main(void)float a;double b;printf(the example of float and double:n);a=12345678.1234567;b=12345678.1234567; printf(a=%fn b=%fn,a,b);getch();re
8、turn(0);定義單精度和雙精度變量直接輸出 里的內(nèi)容輸出格式符號n表示換行給a、b賦的值是8位數(shù),小數(shù)點后保留7位輸出格式符號%f表示輸出浮點數(shù)輸出格式符號n表示在屏幕上換行a,b輸出變量,個數(shù)必須和格式描述符的個數(shù)相等printf()輸出格式可以查閱格式說明表“ ”內(nèi)是格式控制符double有13位有效數(shù)float有8位有效數(shù)排序是計算機最普通的一種運算方式。假設(shè)從鍵盤輸入三個整數(shù),將這三個數(shù)按遞減的順序輸出。cinijk;i=j?i=k?cout=j?coutkj; coutj=k?cout=i?coutkil;coutik;yycoutkji;coutki,=k?否則,去檢查j=k?
9、if(條件判別)else 否則,結(jié)果為假,則執(zhí)行else復合語句如果i=j運算結(jié)果為真,執(zhí)行復合語句內(nèi)容關(guān)系運算: i大于等于j?int main(void)int i,j,k;cout請輸入三個整數(shù):ijk;if(i=j) if(i=k) cout=j)coutkjendl; else coutjkendl; elsecoutk; coutij=k) cout=i)coutkiendl; else coutikendl; else coutk; coutjixgrade ;grade =1?yx=x+20;mark=x;等于的關(guān)系運算: =C語言中,用=表示 等于的意思是少數(shù)民族,加20分否
10、則,x就是最終錄取分數(shù)C語言中,=表示賦值,將等式右邊的值賦給等式左邊,如x=10;=表示把x的值賦給mark輸入x和grade初始化為0#include#include#includeint main(void) int x,grade=0,mark; coutinput value of x and grade:xgrade; if(grade=1)x=x+20; mark=x; coutmark=markendl; getch(); return(0);C語言中用=表示等于的意思x=x+20?X等于自身加上20 xy+內(nèi)存控制器運算結(jié)果送回到內(nèi)存表2.1 學生屬性字符類型字符類型短整數(shù)類
11、型字符類型字符類型字符類型字符類型表2.2 一條學生記錄就是屬性集合的取值表2.2的學生對象,是由多個基本類型的數(shù)據(jù)變量描述的;假定在程序中處理100個學生數(shù)據(jù),因為不能直接將學生定義成一個變量,所以,我們需要在程序中將學生的各個屬性變量分別寫出來,程序非常臃腫。 我們可以直接定義一個學生變量嗎?int student;-有意義嗎int main(void)int main(void) char num20;char num20;char name20;char name20;char sex;char sex;char birthday20;char birthday20;input(num
12、,name,&sex,birthday); input(num,name,&sex,birthday); printf(“ %s %s %d %s n”,printf(“ %s %s %d %s n”,num , name , sex , birthday); ); return(0); return(0); 定義學號變量定義名字變量定義性別變量定義出生年月變量調(diào)用輸入函數(shù)字符串輸出格式整數(shù)輸出格式換行符在輸出學生屬性值比較煩,程序也很凌亂構(gòu)造一個學生數(shù)據(jù)類型?一個客觀個體有多種屬性性別: char sex;姓名:char name40;身份證號:char paper40;身高
13、:int high;職業(yè):char metier40;c語言中的多種數(shù)據(jù)類型用來描述一個客觀物體的多種屬性本例是教師個體具有的多個屬性char sex;年齡:int age;int age;int high;char name40;char metier40;char paper 40;把教師個體抽象成一新的變量類型抽象說明:struct類型: teacher該類型包含的基本數(shù)據(jù): structteacher新定義的組和變量類型C C語言支持的數(shù)據(jù)結(jié)構(gòu)定義能力,你可以將所需要的基本型語言支持的數(shù)據(jù)結(jié)構(gòu)定義能力,你可以將所需要的基本型數(shù)據(jù)匯集到一起,作為一個新的數(shù)據(jù)類型來使用;數(shù)據(jù)匯集到一起,作
14、為一個新的數(shù)據(jù)類型來使用;我們稱之為結(jié)構(gòu);我們稱之為結(jié)構(gòu);這個新數(shù)據(jù)類型定義之后,可以直接在程序中如同使用基本這個新數(shù)據(jù)類型定義之后,可以直接在程序中如同使用基本數(shù)據(jù)類型一樣的進行引用。數(shù)據(jù)類型一樣的進行引用。 如果把程序理解成一個書包,結(jié)構(gòu)則好像書包里的文具盒;各種基本數(shù)據(jù)類型封裝在結(jié)構(gòu)體里,好像學習用品放在文具盒中;結(jié)構(gòu)體讓程序能直接存儲、操作一個客觀實體;書包里還可以有化妝盒、飯盒;程序中可以定義各種不同的結(jié)構(gòu)體。struct stdstruct stdchar num20;char name20;char sex;char birthday20; 結(jié)構(gòu)體關(guān)鍵字結(jié)構(gòu)類型名該結(jié)構(gòu)類型內(nèi)封裝
15、的基本數(shù)據(jù)結(jié)構(gòu)體起止定義了一個學生結(jié)構(gòu)類型;把std看成一個數(shù)據(jù)類型,進而可以定義是該類型的變量。struct std a;a是 std 結(jié)構(gòu)類型的變量struct stdchar num20;char name20;char sex;char birthday;int main(void)int main(void) struct std a;struct std a;input(&a); input(&a); printf(“ %s %s %d %s n”,printf(“ %s %s %d %s n”,a.num , ,a.sex , a.birthday);
16、 ); return(0); return(0); 學生結(jié)構(gòu)類型內(nèi)封裝的各分量名稱學生變量a讀入變量a數(shù)據(jù)訪問a“.”后面說明了a的分量通過結(jié)構(gòu),清晰了變量與程序的關(guān)系#include #include struct stdstruct stdchar num20;char num20;char name20;char name20;void input(struct std void input(struct std * *);/);/函數(shù)聲明函數(shù)聲明int main(void)int main(void) struct std a;struct std a;/定義變量定義變量input(&a);input(&a);/調(diào)用參數(shù)輸入函數(shù)調(diào)用參數(shù)輸入函數(shù)printf(n n);printf(n n);printf(printf(輸入的學號、名字是:輸入的學號、名字是:n);n);printf(%s %sn,a.num,);printf(%s %sn,a.num,);/輸出學生數(shù)據(jù)輸出學生數(shù)據(jù)return(0); return(0); void input(struct std void in
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 木工支模內(nèi)排架工程勞務分包合同-4
- 二零二五年度辦事處影視作品推廣合同
- 二零二五年度辦事處設(shè)計、施工、品牌授權(quán)合同
- 裝修合同清單模板(茶樓)
- 二零二五年度寶寶日間托管與營養(yǎng)膳食合同
- 建筑工程施工合同終止協(xié)議年
- 數(shù)據(jù)分析與決策實戰(zhàn)指南
- 信息科技安全保障體系構(gòu)建
- 企業(yè)融資流程詳解和步驟說明
- 酒店行業(yè)智能化客房智能控制系統(tǒng)方案
- AQ/T 2059-2016 磷石膏庫安全技術(shù)規(guī)程(正式版)
- 四川省宜賓市中學2025屆九上數(shù)學期末統(tǒng)考模擬試題含解析
- 2024年包頭市水務(集團)有限公司招聘筆試沖刺題(帶答案解析)
- 知識庫管理規(guī)范大全
- 2024年贛州民晟城市運營服務有限公司招聘筆試參考題庫附帶答案詳解
- 領(lǐng)導干部報告?zhèn)€人事項
- 9這點挫折算什么(課件)-五年級上冊生命與健康
- 價格監(jiān)督檢查知識培訓課件
- 駐場保潔方案
- 中國心理衛(wèi)生協(xié)會家庭教育指導師參考試題庫及答案
- 智能廣告投放技術(shù)方案
評論
0/150
提交評論