歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

12高級程序語言

  • 資源ID:248175846       資源大?。?span id="a5zmadk" class="font-tahoma">134KB        全文頁數(shù):11頁
  • 資源格式: PPT        下載積分:15積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要15積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

12高級程序語言

單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,第十二章 其他數(shù)據(jù)類型,1,枚舉,在實際問題中,有些變量的取值被限定在一個有限的范圍內(nèi)。例如,一個星期內(nèi)只有七天,一年只有十二個月,一個班每周有六門課程等等。如果把這些量說明為整型,字符型或其它類型顯然是不妥當(dāng)?shù)摹?“枚舉”類型:在“枚舉”類型的定義中列舉出所有可能的取值,被說明為該“枚舉”類型的變量取值不能超過定義的范圍。,枚舉類型是一種基本數(shù)據(jù)類型。,枚舉類型定義,枚舉類型定義的一般形式為:,enum,枚舉名,枚舉值表,;,在枚舉值表中應(yīng)羅列出所有可用值。這些值也稱為枚舉元素。,例如:,enum,weekday,sun,mou,tue,wed,thu,fri,sat,;,該枚舉名為,weekday,,枚舉值共有,7,個,即一周中的七天。凡被說明為,weekday,類型變量的取值只能是七天中的某一天。,enum,colorred,green,blue,yellow,white,;,enum,枚舉類型的關(guān)鍵字,,color,枚舉類型名。,枚舉類型變量的賦值和使用,例,enum,colorred,green,blue,yellow,white,;,enum,color,select,change,*cp;,例,enum,colorred,green,blue,yellow,white,select,change,*cp;,例,enum,red,green,blue,yellow,white,select,change,*cp;,select=red;,枚舉變量取值范圍限定在對應(yīng)枚舉類型表中的元素,枚舉變量的取值,枚舉元素是整常量,不是變量。,例如,red=3 (,),編譯程序把第一個枚舉元素賦值為,0,,以后依次賦值,為,1,、,2,例,enum,colorred,green,blue,yellow,whiteselect,;,red,的值為,0,,,green,、,blue,、,yellow,和,white,取值分別為,1,、,2,、,3,、,4,。,select=red;,select,被賦值為,0,。,當(dāng)變量取值范圍限定在規(guī)定的整常數(shù)范圍內(nèi)時,可采用枚舉類型。,枚舉類型變量不能直接使用,printf,、,scanf,等庫函數(shù)輸出、輸入,例,7.1,編寫一個程序,輸入今天是星期幾,計算若干天后是星期幾。,#include,char,weekstring,10=“Sun(,日,)”,”Mon(,一,)”,”Tue(,二,)”,”Wed(,三,)”,”Thu(,四,)”,”Fri(,五,)”,”Sat(,六,)”;,enum,week Sun=0,Mon,Tue,Wed,Thu,Fri,Sat;,void main(void),int,d;,enum,week,today,w,;,printf,(“,今天是星期:”,);,scanf(“%d”,&today,);,printf,(“,輸入天數(shù):”,);,scanf(“%d”,&d,);,printf,(“,今天是星期,%,sn”,weekstringtoday,);,w=(,enum,week)(today+d)%7);,printf(“%d,天后是星期,%,sn”,d,weekstringw,);,例,7.2,現(xiàn)有紅、黃、藍、黑和白色球個,1,只,從中依次取出,3,個球,編程輸出所有可能的取法。,#include,enum,color,red,yellow,blue,white,black,;,void,main(void,),enum,color i,j,k,temp;,int,n,loop;,n=0;,for(i,=red;i=black;i+),for(j,=red;j=black;j+),if(i,!=j),for(k,=red;k=black;k+),if(k!=,i)&(k,!=j),n+;,printf(“%-5d”,n);,for(loop,=1;loop=3;loop+),switch(loop),case 1:temp=,i;break,;,case 2:temp=,j;break,;,case 3:temp=,k;break,;,switch(temp,),case red:printf(“%-10s”,”red”);break;,case yellow:printf(“%-10s”,”yellow”);break;,case blue:printf(“%-10s”,”blue”);break;,case white:printf(“%-10s”,”white”);break;,case black:printf(“%-10s”,”black”);break;,printf(“n,”):,printf(“total:%dn”,n,);,2,位段,位段的概念與定義,位段類型,:,是一種特殊的結(jié)構(gòu)類型,其所有成員均以二進制位為單位定義長 度,并稱成員為位段。,例如,,CPU,的狀態(tài)寄存器,按位段類型定義如下:,struct,status,unsigned sign:1;/*,符號標(biāo)志*,/,unsigned zero:1;/*,零標(biāo)志*,/,unsigned carry:1;/*,進位標(biāo)志*,/,unsigned parity:1;/*,奇偶,/,溢出標(biāo)志*,/,unsigned,half_carry,:1;/*,半進位標(biāo)志*,/,unsigned negative:1;/*,減標(biāo)志*,/,flags;,優(yōu)點,:,節(jié)約存儲空間,2.,說明,(,1,)因為位段類型是一種結(jié)構(gòu)類型,所以位段類型和位段變量的定義,以及對位段(即位段類型中的成員)的引用,均與結(jié)構(gòu)類型和結(jié)構(gòu)變量一樣。,(,2,)對位段賦值時,要注意取值范圍。一般地說,長度為,n,的位段,其取值范圍是:,0,(,2,n,-1,)。,(,3,)使用長度為,0,的無名位段,可使其后續(xù)位段從下,1,個字節(jié)開始存儲。,例如,,struct,status,unsigned sign:1;/*,符號標(biāo)志*,/,unsigned zero:1;/*,零標(biāo)志*,/,unsigned carry:1;/*,進位標(biāo)志*,/,unsigned:0;/*,長度為,0,的無名位段*,/,unsigned parity:1;/*,奇偶,/,溢出標(biāo)志*,/,unsigned,half_carry,:1;/*,半進位標(biāo)志*,/,unsigned negative:1;/*,減標(biāo)志*,/,flags;,(,4,),1,個位段必須存儲在,1,個存儲單元(通常為,1,字節(jié))中,不能跨,2,個。如果本單元不夠容納某位段,則從下,1,個單元開始存儲該位段。,(,5,)可以用,%d,、,%x,、,%u,和,%o,等格式字符,以整數(shù)形式輸出位段。,(,6,)在數(shù)值表達式中引用位段時,系統(tǒng)自動將位段轉(zhuǎn)換為整型數(shù)。,3,用,typedef,定義類型,功能,:用自定義名字為,已有,數(shù)據(jù)類型命名,類型定義,簡單形式:,typedef,type,name,;,例,typedef,int,INTEGER;,類型定義語句關(guān)鍵字,已有數(shù)據(jù)類型名,用戶定義的類型名,例,typedef,float REAL;,類型定義后,與已有類型一樣使用,例,INTEGER a,b,c;,REAL f1,f2;,int,a,b,c;,float f1,f2;,說明,:,1.typedef,沒有創(chuàng)造,新數(shù)據(jù)類型,2.,typedef,是定義類型,不能定義變量,3.typedef,與,define,不同,define,typedef,預(yù)編譯時處理,編譯時處理,簡單字符置換,為已有類型命名,typedef,定義類型步驟,按定義變量方法先寫出定義體 如,int,i;,將變量名換成新類型名 如,int,INTEGER,;,最前面加,typedef,如,typedef,int,INTEGER,;,用新類型名定義變量 如,INTEGER,i,j;,例 定義數(shù)組類型,int,a100;,int,ARRAY100;,typedef,int,ARRAY100;,ARRAY a,b,c;,int,a100,b100,c100;,例 定義指針類型,char *,str,;,char *STRING;,typedef,char *STRING;,STRING p,s10;,char *p;,char *s10;,例 定義函數(shù)指針類型,int,(*p)();,int,(*POWER)();,typedef,int,(*POWER)();,POWER p1,p2;,int,(*p1)(),(*p2)();,例 定義結(jié)構(gòu)體類型,struct,date,int,month;,int,day;,int,year;,d;,例 定義結(jié)構(gòu)體類型,struct,date,int,month;,int,day;,int,year;,DATE;,例 定義結(jié)構(gòu)體類型,typedef,struct,date,int,month;,int,day;,int,year;,DATE;,例 定義結(jié)構(gòu)體類型,DATE birthday,*p;,struct,date,int,month;,int,day;,int,year;,birthday,*p;,類型定義可嵌套,例,typedef,struct,club,char name20;,int,size;,int,year;,GROUP;,typedef,GROUP *PG;,PG,pclub,;,GROUP *,pclub,;,struct,club *,pclub,;,GROUP,為結(jié)構(gòu)體類型,PG,為指向,GROUP,的指針類型,

注意事項

本文(12高級程序語言)為本站會員(dfg****19)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!