工学C语言结构体与课件_第1页
工学C语言结构体与课件_第2页
工学C语言结构体与课件_第3页
工学C语言结构体与课件_第4页
工学C语言结构体与课件_第5页
已阅读5页,还剩167页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

l畾崿畾闆岀畾畾鵰啞岀畾鵰第1一章结构体与共用体11.1概述11.2定义结构体类型和定义结构体变量11.3结构体变量的引用114结构体变量的初始化11.5结构体数组11.6指针与结构体11.7用指针处理链表*118共用体11.9枚举类型11,10用typedef定义类型C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun工学C语言结构体与共用体复习l畾崿畾闆岀畾畾鵰啞岀畾鵰第1一章结构体与共用体11.1概述11.2定义结构体类型和定义结构体变量11.3结构体变量的引用114结构体变量的初始化11.5结构体数组11.6指针与结构体11.7用指针处理链表*118共用体11.9枚举类型11,10用typedef定义类型C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun11.1概述数组:同类型数据的集合;C构造类型结构体:不同类型数据的集合共用体:不同类型的量共用存储单元。若:表示学生多门课成绩,各门课成绩数据类型致,适合用数组表示若:对一系列整数排序,适合用数组表示。C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴嵽嵽闆畾畾畾鵰若:编程处理若干学生的基本情况;其中每个学生的基本情况由若干项组成,而各项的类型可能相同或不同项目:学号姓名性别出生日期成绩电话号码数据:210510LiFengM1988.54680029-8482500类型:长整/字串字串字符字串整型字串该例构成每个学生基本情况的数据类型不同,可采用结构体这种数据类型实现。教工基本情况:工号学院姓名性别工作时间基本工资8305110WangLiM198378980C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl畾崿畾闆岀畾畾鵰啞岀畾鵰工学C语言结构体与共用体复习l畾崿111.1概述数组:同类型数据的集合;C构造类型结构体:不同类型数据的集合共用体:不同类型的量共用存储单元。若:表示学生多门课成绩,各门课成绩数据类型致,适合用数组表示若:对一系列整数排序,适合用数组表示。C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun11.1概述2l鹴嵽嵽闆畾畾畾鵰若:编程处理若干学生的基本情况;其中每个学生的基本情况由若干项组成,而各项的类型可能相同或不同项目:学号姓名性别出生日期成绩电话号码数据:210510LiFengM1988.54680029-8482500类型:长整/字串字串字符字串整型字串该例构成每个学生基本情况的数据类型不同,可采用结构体这种数据类型实现。教工基本情况:工号学院姓名性别工作时间基本工资8305110WangLiM198378980C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴嵽嵽闆畾畾畾鵰3l鹴甌闆闆畾煕畾11.2定义结构体类型和定义结构体变量定义结构体类型定义一般形式:struct结构体名{类型标识符成员名1类型标识符成员名2;类型标识符成员名n其中1)struct结构体名组成具体的结构体类型标识符,可用这个结构体类型标识符去定义变量等对象2)结构体名、成员名应符合标识符命名规则3)类型标识符确定各成员类型C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴甌闆闆畾煕畾4【例】定义可表示学生基本情况的结构体类型项目:学号姓名性别出生日期成绩电话号码数据:040510engM1986.54680029-8482500类型:长整/字串字串字符字串整型字串structstudent/*特定结构体类型标识*dlongnumcharname[20]charsexcharbirthday[12floatscorechartel[15]/*该类型共有6个成员C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun【例】定义可表示学生基本情况的结构体类型5l畾畾畾畾ξ鵰说明1)结构体不可能有统一的结构,因此一个结构体的成员数目、各成员的类型必须依据具体情况由用户自己定义2)一个C程序可定义多个结构体类型;定义的位置可在函数之内,也可在函数之外;位置决定其有效范围如:结构体类型1定义voidmain(结构体类型2定义;类型2有效类型1有效C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl畾畾畾畾ξ鵰6l鹴嵽嵽闆畾畾畾鵰3)成员名可与程序中其它量同名,且互不干扰4)成员的类型也可是已定义过的结构体类型如:structdate*该结构体有3个成员*/dintm/*或ntm,d,y米inyy:istructstudent/*该结构体有6个成员tlongnumcharname[20]charsex.structdatebirthday;/*成员类型:结构体*floatscoreichartel[15];]C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴嵽嵽闆畾畾畾鵰75)定义结构体类型仅仅声明了一种数据结构,编译系统是不会为类型分配存储空间的;此时在有效范围内,可用已定义的结构体类型去定义结构体变量或数组,编译系统将为结构体变量或数组分配存储空间;C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun5)定义结构体类型仅仅声明了一种数据结构,编译82.定义结构体类型的变量三种定义方法1)先定义结构体类型,再用类型标识去定义变量structstudentstu1stu2

structstudent是已定义的结构体类型标识符;

stu1、stu2是所定义的结构体变量;编译时将为结构体变量分配各自的存储空间;2)定义类型的同时定义变量structstudent/各成员的定义*/3stul,stu2C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun2.定义结构体类型的变量93)不使用结构体名,定义类型的同时定义变量struct/*无结构体名*sstul,stu2i说明:

结构体变量可以是局部的或全局的。

结构体变量存储空间大小为各成员长度之和;如变量stu1存储字节数(sizeof(stu1)TC下:4+20+1+6+4+15=50VC下:4+20+1+12+4+15=56C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun3)不使用结构体名,定义类型的同时定义变量10工学C语言结构体与课件11工学C语言结构体与课件12工学C语言结构体与课件13工学C语言结构体与课件14工学C语言结构体与课件15工学C语言结构体与课件16工学C语言结构体与课件17工学C语言结构体与课件18工学C语言结构体与课件19工学C语言结构体与课件20工学C语言结构体与课件21工学C语言结构体与课件22工学C语言结构体与课件23工学C语言结构体与课件24工学C语言结构体与课件25工学C语言结构体与课件26工学C语言结构体与课件27工学C语言结构体与课件28工学C语言结构体与课件29工学C语言结构体与课件30工学C语言结构体与课件31工学C语言结构体与课件32工学C语言结构体与课件33工学C语言结构体与课件34工学C语言结构体与课件35工学C语言结构体与课件36工学C语言结构体与课件37工学C语言结构体与课件38工学C语言结构体与课件39工学C语言结构体与课件40工学C语言结构体与课件41工学C语言结构体与课件42工学C语言结构体与课件43工学C语言结构体与课件44工学C语言结构体与课件45工学C语言结构体与课件46工学C语言结构体与课件47工学C语言结构体与课件48工学C语言结构体与课件49工学C语言结构体与课件50工学C语言结构体与课件51工学C语言结构体与课件52工学C语言结构体与课件53工学C语言结构体与课件54工学C语言结构体与课件55工学C语言结构体与课件56工学C语言结构体与课件57工学C语言结构体与课件58工学C语言结构体与课件59工学C语言结构体与课件60工学C语言结构体与课件61工学C语言结构体与课件62工学C语言结构体与课件63工学C语言结构体与课件64工学C语言结构体与课件65工学C语言结构体与课件66工学C语言结构体与课件67工学C语言结构体与课件68工学C语言结构体与课件69工学C语言结构体与课件70工学C语言结构体与课件71工学C语言结构体与课件72工学C语言结构体与课件73工学C语言结构体与课件74工学C语言结构体与课件75工学C语言结构体与课件76工学C语言结构体与课件77工学C语言结构体与课件78工学C语言结构体与课件79工学C语言结构体与课件80工学C语言结构体与课件81工学C语言结构体与课件82工学C语言结构体与课件83工学C语言结构体与课件84工学C语言结构体与课件85工学C语言结构体与课件86l畾崿畾闆岀畾畾鵰啞岀畾鵰第1一章结构体与共用体11.1概述11.2定义结构体类型和定义结构体变量11.3结构体变量的引用114结构体变量的初始化11.5结构体数组11.6指针与结构体11.7用指针处理链表*118共用体11.9枚举类型11,10用typedef定义类型C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun工学C语言结构体与共用体复习l畾崿畾闆岀畾畾鵰啞岀畾鵰第1一章结构体与共用体11.1概述11.2定义结构体类型和定义结构体变量11.3结构体变量的引用114结构体变量的初始化11.5结构体数组11.6指针与结构体11.7用指针处理链表*118共用体11.9枚举类型11,10用typedef定义类型C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun11.1概述数组:同类型数据的集合;C构造类型结构体:不同类型数据的集合共用体:不同类型的量共用存储单元。若:表示学生多门课成绩,各门课成绩数据类型致,适合用数组表示若:对一系列整数排序,适合用数组表示。C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴嵽嵽闆畾畾畾鵰若:编程处理若干学生的基本情况;其中每个学生的基本情况由若干项组成,而各项的类型可能相同或不同项目:学号姓名性别出生日期成绩电话号码数据:210510LiFengM1988.54680029-8482500类型:长整/字串字串字符字串整型字串该例构成每个学生基本情况的数据类型不同,可采用结构体这种数据类型实现。教工基本情况:工号学院姓名性别工作时间基本工资8305110WangLiM198378980C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl畾崿畾闆岀畾畾鵰啞岀畾鵰工学C语言结构体与共用体复习l畾崿8711.1概述数组:同类型数据的集合;C构造类型结构体:不同类型数据的集合共用体:不同类型的量共用存储单元。若:表示学生多门课成绩,各门课成绩数据类型致,适合用数组表示若:对一系列整数排序,适合用数组表示。C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun11.1概述88l鹴嵽嵽闆畾畾畾鵰若:编程处理若干学生的基本情况;其中每个学生的基本情况由若干项组成,而各项的类型可能相同或不同项目:学号姓名性别出生日期成绩电话号码数据:210510LiFengM1988.54680029-8482500类型:长整/字串字串字符字串整型字串该例构成每个学生基本情况的数据类型不同,可采用结构体这种数据类型实现。教工基本情况:工号学院姓名性别工作时间基本工资8305110WangLiM198378980C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴嵽嵽闆畾畾畾鵰89l鹴甌闆闆畾煕畾11.2定义结构体类型和定义结构体变量定义结构体类型定义一般形式:struct结构体名{类型标识符成员名1类型标识符成员名2;类型标识符成员名n其中1)struct结构体名组成具体的结构体类型标识符,可用这个结构体类型标识符去定义变量等对象2)结构体名、成员名应符合标识符命名规则3)类型标识符确定各成员类型C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴甌闆闆畾煕畾90【例】定义可表示学生基本情况的结构体类型项目:学号姓名性别出生日期成绩电话号码数据:040510engM1986.54680029-8482500类型:长整/字串字串字符字串整型字串structstudent/*特定结构体类型标识*dlongnumcharname[20]charsexcharbirthday[12floatscorechartel[15]/*该类型共有6个成员C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun【例】定义可表示学生基本情况的结构体类型91l畾畾畾畾ξ鵰说明1)结构体不可能有统一的结构,因此一个结构体的成员数目、各成员的类型必须依据具体情况由用户自己定义2)一个C程序可定义多个结构体类型;定义的位置可在函数之内,也可在函数之外;位置决定其有效范围如:结构体类型1定义voidmain(结构体类型2定义;类型2有效类型1有效C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl畾畾畾畾ξ鵰92l鹴嵽嵽闆畾畾畾鵰3)成员名可与程序中其它量同名,且互不干扰4)成员的类型也可是已定义过的结构体类型如:structdate*该结构体有3个成员*/dintm/*或ntm,d,y米inyy:istructstudent/*该结构体有6个成员tlongnumcharname[20]charsex.structdatebirthday;/*成员类型:结构体*floatscoreichartel[15];]C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchunl鹴嵽嵽闆畾畾畾鵰935)定义结构体类型仅仅声明了一种数据结构,编译系统是不会为类型分配存储空间的;此时在有效范围内,可用已定义的结构体类型去定义结构体变量或数组,编译系统将为结构体变量或数组分配存储空间;C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun5)定义结构体类型仅仅声明了一种数据结构,编译942.定义结构体类型的变量三种定义方法1)先定义结构体类型,再用类型标识去定义变量structstudentstu1stu2

structstudent是已定义的结构体类型标识符;

stu1、stu2是所定义的结构体变量;编译时将为结构体变量分配各自的存储空间;2)定义类型的同时定义变量structstudent/各成员的定义*/3stul,stu2C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun2.定义结构体类型的变量953)不使用结构体名,定义类型的同时定义变量struct/*无结构体名*sstul,stu2i说明:

结构体变量可以是局部的或全局的。

结构体变量存储空间大小为各成员长度之和;如变量stu1存储字节数(sizeof(stu1)TC下:4+20+1+6+4+15=50VC下:4+20+1+12+4+15=56C程序设计第十一章结构体与共用体NWPU-CC-ZhangYanchun3)不使用结构体名,定义类型的同时定义变量96工学C语言结构体与课件97工学C语言结构体与课件98工学C语言结构体与课件99工学C语言结构体与课件100工学C语言结构体与课件101工学C语言结构体与课件102工学C语言结构体与课件103工学C语言结构体与课件104工学C语言结构体与课件105工学C语言结构体与课件106工学C语言结构体与课件107工学C语言结构体与课件108工学C语言结构体与课件109工学C语言结构体与课件110工学C语言结构体与课件111工学C语言结构体与课件112工学C语言结构体与课件113工学C语言结构体与课件114工学C语言结构体与课件115工学C语言结构体与课件116工学C语言结构体与课件117工学C语言结构体与课件118工学C语言结构体与课件119工学C语言结构体与课件120工学C语言结构体与课件1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论