版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第八用戶自定義數(shù)據(jù)譯預(yù)1結(jié)構(gòu)類型及其變量的如果需要把一個學(xué)生的學(xué)號、、、23結(jié)構(gòu)類型的例例struct{intnumber;charname[9];intage;charstruct結(jié)構(gòu)類型類型成員1;類型成員類型成員例struct{intnumber;charname[9];structBirthday{intyear;intmonth;intday;
sizeof(struct的值是charsex;
三種方
結(jié)構(gòu)變量的(1)先定struct{intnumber;charname[9];intage;char
structStudent應(yīng)應(yīng)區(qū)分結(jié)構(gòu)類型名與結(jié)6結(jié)構(gòu)變量的struct{intnumber;charname[9];intage;char}(3同時{intnumber;charname[9];intage;char}無結(jié)體7結(jié)構(gòu)變量的初如:struct{intnumber;charname[9];{intyear;intmonth;intday;}birthday;charsex;}student1={1101,"lilin",1985,8,1,'M‘8結(jié)構(gòu)成員結(jié)構(gòu)成員成員成員struct{intnumber;charname[9];intage;char}各成員
功能: 結(jié)構(gòu)體變量Student.number9結(jié)構(gòu)變 注意事如student2=student1;student1、student2student2={1101,"lilin1985,8,1M'};如:printfstudent1);錯誤結(jié)構(gòu)變 注意事 如: age舉例 結(jié)構(gòu)類型及變量定義、成例8.4職工數(shù)據(jù)包括職工編號、、工資、地址、,定義職工類型并用它來職工變量,然后其各個成員。結(jié)構(gòu)類型定struct longcode;charname[20];floatsalary;charaddress[50];charphone[11];用2個結(jié)構(gòu)變量存放2個職工#include<stdio.h>voidmain(){structEmployee "},/*以下給結(jié)構(gòu)變量ps2各成員輸入值或賦值printf("code:scanfprintf("name:scanf("%s",printf("phone:scanf("%s",ps2.phone);strcpy(ps2.address,ps1.address);
getchar()用來 gets函數(shù)可含空格 。printf("\ncode:%ld\n",ps1.code);printf("name:%s=n",);printf("salary:%6.2f\n",ps1.salary);printf("address:%s\n",ps1.address);printf("phone:%s\n",ps1.phone);printf("\ncode:%ld\n",ps2.code);printf("name:%s\n",);printf("salary:%6.2f\n",ps2.salary);printf("phone:%s\n",ps2.phone);}#includevoid#includevoid{struct{intnumber;charname[9];structBirthday{intyear;intmonth;intday;charsex;scanf("%s",scanf("printf("%d,%s,%d-%d-%d,%c\n",s.number,,s.birthday.day,s.sex);} s結(jié)構(gòu)結(jié)構(gòu)數(shù)組的定義
如:方式struct{int
charstruct{intyear;intmonth;intday;}char
結(jié)構(gòu)數(shù)組初始}student[2]={{1101,"lilin",1985,8,1,{1102,"wangjing",1985,7,1,'F'}結(jié)構(gòu)數(shù)組應(yīng)用例8.5計算學(xué)生的平#includestruct
定義結(jié)構(gòu){intnumber;charname[20];intage;}stu[4];voidmain(){inti;floatave,s=0;for(i=0;i<4;i++)for(i=0;i<4;printf("average 結(jié)構(gòu)和指一、結(jié)構(gòu)指針變量的structStudent{intnumber;charname[20];intstructStudent表示p1、p2均是指向結(jié)構(gòu)變量的指針變量,可向任何structStudent類型的結(jié)構(gòu)變量。structStudentp1=&b;p2=stu;二、通過指 結(jié)構(gòu)變量成用指 結(jié)構(gòu)成員的方式(*結(jié)構(gòu)指針名).成員或成員名指向++pman->name等同++(pman 等同*(pman舉例用結(jié)構(gòu)指針間 結(jié)構(gòu)變量成#include<stdio.h>#include<string.h>structStudent{longnum;charname[20];intage;};voidmain(){structStudentstudent,*p=&student;strcpy(p->name,"WangLi");
類例printf("name:(*p).name,(*p).num,(*p).age 舉例結(jié)構(gòu)指針間接結(jié)構(gòu)數(shù)組元素的成員類例8.9學(xué)生類型結(jié)構(gòu)數(shù)組中存放若干學(xué)生的數(shù)#include<stdio.h>structStudent{intnumber;charname[20];intage;};voidmain(){structStudentstu[2]={{10101,"li{10102,"zhangstructStudent for(p=stu;p<stu+2;p++)
p->number,p->name,p->age);了三、指針變量作為結(jié)構(gòu)了例#include<stdio.h>structStudent{intnumber;char*name;void
structStudentstu={1101,"lili"};puts(); 四、結(jié)構(gòu)指針作為函數(shù)最好的辦法是使用結(jié)構(gòu)指針變量作函數(shù)參例:給出年月日計算它是該年的第幾天。structDate{intyear;intmonth;intday;#include#includevoid{intdays(structDate*);/*函數(shù)原 structDateprintf("Enterprintf("是第%d天",days(&d1)); }結(jié)構(gòu)指針作函數(shù)參數(shù)intdays(structDate{intinti,day_sum=day_sum+=monthtable[i];
月份大于2判斷是否為閏if(i>2&&day_sum+=1;day_sum+=sp->day;returnday_sum;}聯(lián)合類度的數(shù)據(jù)共享同一塊空間。也稱為“共用體”一、聯(lián)合類型的聯(lián)合類型的定義union{charch;inti;floatunion{charch;inti;floatf;…員名i fi聯(lián)合類型的struct{charstruct{charunionuniontypeunion{int i; union{union{intstructstructtype{shorts; 二、聯(lián)合變量的union{int unionuniontypeunion{inta;longd;
{inta;longd;
聯(lián)合類型和聯(lián)合變量的定義狀{charname[20];charsex;intage;{intsingle;
性 別
未婚已 離狀配 標(biāo)偶女年月名數(shù){charspouseName[20];intstructDate{intyear;intmonth;intint 三、聯(lián)合變量成員 union inti;charc;}unionuniontype*p;p=&my_data;下 都是合法的my_data.i,my_data.c,p->i,p-四、使用聯(lián)合變量應(yīng)注意的聯(lián)合變量{inti;charch;floatb;} 不對枚舉枚舉的概枚舉類型也是一種數(shù)據(jù)類型。對那些只可星期一、星期二、……星期日又如 的取值,月份的取一、枚舉類型的枚舉類型定義的常量例如enum/*該枚舉類型只準(zhǔn)許取7種值enummonth{Jan,Feb,Mar,Apr,May,Jun,/*該枚舉類型只準(zhǔn)許取12種值請注列在枚舉類型定中的是枚舉常量名,例如enumweekday{Sun,Mon,Tue,Wed,Fri,Sat}例如:enumweekday{Sun=7,Mon=1Thu,Fri,Sat}枚常值7123456又如:enumweekday{Sun=7,Mon,Tue=5Wed,Thu=6,Fri,Sat};枚常值7856678二、枚舉型變量的枚舉型變量的定義也有三種方enumweekday{Sun,Mon,Tueenumweekdayenumweekday{Sun,Mon,Tue}enum{Sun,Mon,Tue}三、枚舉型變量的如enumweekday{Sun,Mon,Tue,Wed,Thu,Fri,Sat}workday;
正確語法上錯workday=(enumweekday)6;正確枚舉型變量的enumflag{true,false}…if(my_flag==枚枚舉常量利用4)、5),可用枚舉變量控制for循環(huán)類習(xí)題8.2:三種顏色取兩色,輸出各種組合情#includevoid{enumcolor{red,yellow,blue}i,結(jié)果結(jié)果 23456for{for(j=red;j<=blue;j++){n=n+1;printf("%-4d",n);{casered: caseyellow:printf("%-10s","yellow");break;caseblue: {casered: caseyellow:printf("%-10s","yellow");break;caseblue: 用typedef定義類型的用typedef給已存在的數(shù)據(jù)類一般形式typedef名例如typedefintINTEGER;于是,inta,b;INTEGERa,b;注:用typedef定義的類型名習(xí)慣用大寫字母表 2)定義STU代表結(jié)構(gòu)類型structStudent:typedefstructStudent{intchar}STU /*定義stu1為結(jié)構(gòu)體變量定義COUNT代表有10typedefintCOUNT /*定義n為整型數(shù)組變量定義STRINGtypedefchar
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024燃?xì)廨斉渚W(wǎng)絡(luò)建設(shè)項目代建合同書3篇
- 2024年車展場地租賃協(xié)議
- 2025年度信息安全保密管理合同3篇
- 教育之光:塑造未來
- 2025年度特色餐廳與旅行社文化體驗合作框架協(xié)議3篇
- 專業(yè)化汽車配件供應(yīng)及服務(wù)采購協(xié)議書版
- 2025年度智慧社區(qū)物業(yè)管理系統(tǒng)開發(fā)合同示范2篇
- 綠色金融產(chǎn)品開發(fā)協(xié)議
- 2024版人工智能語音助手開發(fā)合同(標(biāo)的:語音識別技術(shù))
- 2024新版房貸合同:個人住房貸款合同速覽版
- 硬質(zhì)合金燒-結(jié)工藝課件
- 貴州省貴陽市2021-2022學(xué)年蘇教版四年級上冊期末數(shù)學(xué)試卷(含答案)
- 新教材高中歷史選擇性必修一全冊知識點總結(jié)
- 2017英語專業(yè)八級改錯真題及答案持續(xù)更新部分詳解文字答案校對版
- 室內(nèi)蒸汽供熱系統(tǒng)
- 小型塑料注射成型機液壓系統(tǒng)設(shè)計
- 《干部廉政檔案》2022年最新模板
- 高支模方案(專家論證定稿)
- 城投集團年度安全管理工作計劃
- 美術(shù)課教案《線造型》
- 人民網(wǎng)刪除稿件帖文申請登記表
評論
0/150
提交評論