freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

構(gòu)造數(shù)據(jù)類(lèi)型ppt課件-文庫(kù)吧資料

2024-11-09 23:07本頁(yè)面
  

【正文】 了圖形的幾何數(shù)據(jù)外,還需給出它為何種圖形。 Circle circle。 Line line。 }。 struct Circle { FigureShape place_holder。 double left,top,right,bottom。 }。 struct Line { FigureShape place_holder。 }。 Rectangle rect。 }。 }。 }。 ? 數(shù)組元素的類(lèi)型 Figure是一個(gè)聯(lián)合類(lèi)型。 ? 一組圖形數(shù)據(jù)可用一個(gè)一維數(shù)組表示: const int MAX_NUM_OF_FIGURES=100。 ... ... //使用數(shù)組 a ...... ... ... //使用數(shù)組 b ...... 例 13:從鍵盤(pán)輸入一組圖形數(shù)據(jù),然后輸出相應(yīng)的圖形。 }。例如: union AB { int a[100]。 cout 。 ? 當(dāng)給一個(gè)聯(lián)合類(lèi)型的變量賦了一個(gè)某種類(lèi)型的值之后,如果以另外一種類(lèi)型來(lái)使用這個(gè)值,將得不到原來(lái)的值。 //給變量 a賦一個(gè) double型的值 ...... //把 a當(dāng)作 double型來(lái)用。 //給變量 a賦一個(gè) char型的值 ...... //把 a當(dāng)作 char型來(lái)用。 //變量 a賦一個(gè) int型的值 ...... //把 a當(dāng)作 int型來(lái)用 = 39。 //輸出: 8 ? 作用 :在程序運(yùn)行的不同時(shí)刻中,可以給一個(gè)聯(lián)合類(lèi)型的變量賦予不同類(lèi)型的數(shù)據(jù),例如: A a。 ? A a。 ? 上面的聯(lián)合類(lèi)型 A既可以描述 int型數(shù)據(jù),也可以描述 char和 double類(lèi)型數(shù)據(jù)。 double d。例如: union A { int i。 } ...... Student st1=g()。 ...... f(st1)。例如 : ?Student st。 } a={1, }。 struct A { int i。 如: A a; =1。 //Error = double d=。 //Error 結(jié)構(gòu)類(lèi)型變量的初始化 ? 在定義結(jié)構(gòu)類(lèi)型的變量時(shí),依次給出成員的初始化 . 例: Student some_student={2,李四 , FEMALE, {1970,12,20},北京 , MATHEMATICS}。 ? Date today。 ? st1 = st2。 ... name ... //全局變量 name。 ... ... //結(jié)構(gòu)變量 a的成員變量 name。 //OK int main() { A a。 //OK ...... }。 //OK ...... }。 ? = MALE。 ? , ,.... ?每個(gè)成員都可以看作是一個(gè)獨(dú)立的變量 , 可以分別操作它們 , 例如: ? = 1。 例: struct {…… } st,st1; 注意與 enum的變量定義方式進(jìn)行比較記憶。 例: struct Student st; //c語(yǔ)言風(fēng)格 ( 3) struct 結(jié)構(gòu)類(lèi)型名 {成員表 } 結(jié)構(gòu)類(lèi)型 變量名 。 ? 結(jié)構(gòu)類(lèi)型變量的定義格式如下: ( 1) 結(jié)構(gòu)類(lèi)型名 結(jié)構(gòu)類(lèi)型 變量名 。 }。 enum Sex { MALE, FEMALE }。 Major major。 Date birth_date。 char name[20]。 } 報(bào)數(shù)一 報(bào)數(shù)二 報(bào)數(shù)三 報(bào)數(shù)四 結(jié)構(gòu) (struct)類(lèi)型 ? 結(jié)構(gòu)類(lèi)型 用于表示由固定多個(gè)類(lèi)型可以不同的元素所構(gòu)成的復(fù)合數(shù)據(jù),它是一種用戶(hù)自定義類(lèi)型。 cout The winner is No. index .\n。 indexN。 //圈中小孩數(shù)減 1。 //小孩離開(kāi)圈子。 //如果編號(hào)為 index的 //小孩在圈子中,該報(bào)數(shù)為成功的報(bào)數(shù)。 //計(jì)算要報(bào)數(shù)的小孩的編號(hào)。 while (count M) //對(duì)成功的報(bào)數(shù)進(jìn)行計(jì)數(shù),直到 M。 num_of_children_remained = N。 //開(kāi)始報(bào)數(shù) index = N1。 indexN。 //初始化數(shù)組 in_circle。 int main() { bool in_circle[N]。 //變量 num_of_children_remained表示圈中剩下的小孩數(shù)目,其初始值為 N //變量 count來(lái)對(duì)成功的報(bào)數(shù)進(jìn)行計(jì)數(shù) //變量 index表示要報(bào)數(shù)的小孩的位置 include iostream using namespace std。要使得報(bào)數(shù)成功,in_circle[index]應(yīng)為 true。 ?下一個(gè)要報(bào)數(shù)的小孩的下標(biāo)由:(index+1)%N 來(lái)計(jì)算。 ? in_circle[i]為 true表示編號(hào)為 i的小孩在圈子里。 例 :矩陣乘法 C=A*B ? 分析 :矩陣 A、 B、 C用數(shù)組表示,分別 A、B的數(shù)據(jù)由鍵盤(pán)輸入。 cout sum(b[0],20*5) endl。 } ...... int a[10][5],b[20][5], c[40][20]。 i++) s += x[i]。 for (int i=0。 ...... sum(c,40)。 cout b的元素之和為: sum(b,20) endl。例如: int a[10][5],b[20][5]。 return s。 j5。 ilin。例如: int sum(int x[][5], int lin) //接收 lin行、 5列的二維數(shù)組 { int s=0。例如: ?int a[10][5]。 ? a[0][0]、 a[0][1]、 a[1][0]和 a[1][1]分別初始化為1, 2, 3和 4,其它為 0 int a[][3]={{1,2,3},{4,5,6},{7,8,9}}。 int a[2][3]={1,2,3,4}。 } x x x x x x x x x x x x x x x 二維數(shù)組的初始化 int a[2][3]={{1,2,3},{4,5,6}}。 cout endl。 j++) cout a[i][j] 39。 i++) { for (j=0。 for (i=0。 a[j][i] = temp。 j++) { //交換 a[i][j]與 a[j][i]的值 int temp=a[i][j]。 i++) for (j=i+1。 //矩陣轉(zhuǎn)置: 交換 a[i][j]和 a[j][i]的值, i=0~N1,j=i+1~N1 for (i=0。 jN。 iN。 //輸入矩陣數(shù)據(jù) cout 請(qǐng)輸入 N N 矩陣: \n。 int a[N][N]。 例 57:從鍵盤(pán)輸入一個(gè) N N的矩陣,把它轉(zhuǎn)置后輸出 include iostream using namespace std。 j5。 i10。例如: int a[10][5],sum=0。 ? a[0][0]、 a[0][1]、 ...、 a[9][0]、 ...、 a[9][4] ? 以行為單位訪(fǎng)問(wèn),例如: ? int a[10][5]。 二維數(shù)組的操作 ? 訪(fǎng)問(wèn)二維數(shù)組元素,格式是: 二維數(shù)組變量名 [下標(biāo) 1][下標(biāo) 2] ? 下標(biāo) 1和 下標(biāo) 2為整型表達(dá)式,均從 0開(kāi)始。 或 ?typedef int B[5]。 ?A a。 或 ? 元素類(lèi)型 二維數(shù)組變量 [行數(shù) ][列數(shù) ]。 ? 元素類(lèi)型 為任意 C++類(lèi)型( void除外) ? 行數(shù) 和 列數(shù) 為 整型常量表達(dá)式 ? 例如: ? typedef int A[10][5]。 ? 二維數(shù)組的每個(gè)元素由其所在的行和列唯一確定。如矩陣等。 return 0。 str[j] = temp。 temp = str[i]。 ilen/2。 //? int len = strlen(str)。 char str[MAX_LEN]。 例 :從鍵盤(pán)輸入一個(gè)字符串,然后把字符串逆向輸出 include iostream include cstring using namespace std。 ? 字符串比較 ? int strcmp(const char s1[],const char s2[])。 ? 字符串拼接 ? char *strcat(char dst[],const char src[])。 ? 字符串復(fù)制 ? char *strcpy(char dst[],const char src[])。\039。\039。 char s[]=hello。 char s[10]={hello}。\039。o39。l39。l39。e39。h39。 return n。039。\039。 for (int i=0。 return n。039。\039。 for (int i=1。 int n=str[0]39。\039。 ?在定義一個(gè)字符數(shù)組時(shí),其元素個(gè)數(shù)應(yīng)比它實(shí)際能夠存儲(chǔ)的字符串最大長(zhǎng)度多一個(gè) . ?字符串作為函數(shù)參數(shù)傳遞時(shí),只要給出一維字符數(shù)組類(lèi)型的形參,不需要給出字符個(gè)數(shù)(長(zhǎng)度)。 //可表示長(zhǎng)度為 9的字符串 ?用字符數(shù)組存貯字符串時(shí),通常在最后一個(gè)字符的后面放置一個(gè)字符串結(jié)束標(biāo)記: 39。 ? 在 C++中,通常用元素類(lèi)型為 char的一維數(shù)組(字符數(shù)組)來(lái)表示字符串類(lèi)型。 ? 為了提高數(shù)組傳遞的效率,數(shù)組作為函數(shù)參數(shù)傳遞時(shí)實(shí)際傳遞的是 數(shù)組在內(nèi)存中的首地址 ,函數(shù)的形參數(shù)組不再分配內(nèi)存空間,它 共享 實(shí)參數(shù)組的內(nèi)存空間。 index_max = max(b,20)。 ...... index_max = max(a,10)。 } ? 調(diào)用者需要把一個(gè)一維數(shù)組變量的名以及數(shù)組元素的個(gè)數(shù)傳給被調(diào)用函數(shù)。 i++) if (x[i] x[j]) j = i。 //先假設(shè)第 0個(gè)元素最大 for (i=1。 ? 例:求一維數(shù)組中最大元素的位置 int max(int x[],int num) { int i,j。 //輸出數(shù)組 a所占的內(nèi)存字節(jié)數(shù)。例如: ? int a[10]。例如: int a[10]。 例如: ?int c[]={1,2,3}。例如 : ?int b[10]={1,2,3,4}。 例如: ?int a[10]={1,2,3,4,5,6,7,8,9,10}。 } 例 4:統(tǒng)計(jì)某地區(qū)某年中濕度最大和最小的月份 分析: 濕度數(shù)據(jù)有鍵盤(pán)輸入,把每月的濕度數(shù)據(jù)放在一個(gè)數(shù)組中,然后找出濕度最大和最小的月份。 i10。 a[j] = temp。 //保持 j為最大元素的下標(biāo) //交換 a[j]和 a[n1]的值 int temp=a[n1]。 in。 n) //n為元素個(gè)數(shù) { int j=0。 for (int n=10。 i10。 int i。 } 例 4:從鍵盤(pán)輸入 10個(gè)數(shù),把它們從小到大排序后輸出 從 n個(gè)數(shù)中找出最大者,與第 n個(gè)數(shù)交換位置;然后,從剩余的 n1個(gè)數(shù)中再找出最大者,與第 n1個(gè)數(shù)交換位置; … ,一直到剩下的數(shù)只有一個(gè)為止。 i++) if (a[i] max) max = a[i]。 //首先假設(shè)第 0個(gè)元素最大 for (i=1。 i++) cin a[i]。 for (int i=0。 return 0。 i++) //計(jì)算其它的費(fèi)波那契數(shù) fibs[i] = fibs[i1] + fibs[i2]。 //初始化第 2個(gè)費(fèi)波那契數(shù) for (i=2。 return 1。 cin n。 int n,i。 int main() { const int MAX_N=40。 i++) a[i] = b[i]。 //Error for (int i=0。 ? 不能對(duì)兩個(gè)數(shù)組進(jìn)行整體賦值, 需要通過(guò)元素來(lái)進(jìn)行: int a[10],b[10]。 i10。 int sum=0,i。程序員必須仔細(xì)處置這個(gè)問(wèn)題!如: a[i]中 i的取值 ? 可把數(shù)組的每個(gè)元素看成是獨(dú)立的變量 。 ? 訪(fǎng)問(wèn)一維數(shù)組元素 ?格式: 一維數(shù)組變量名 [下標(biāo) ] ? 下標(biāo) 為整型表達(dá)式 ? 第一個(gè)元素的下標(biāo)為: 0 ?例如:
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1