C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt

C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt

ID:50084591

大小:59.00 KB

页数:12页

时间:2020-03-08

C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt_第1页
C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt_第2页
C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt_第3页
C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt_第4页
C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt_第5页
资源描述:

《C语言程序设计教程教学课件李淑华 第15讲 结构体与共用体.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第十五讲结构体与共用体10.1结构体的定义10.2定义结构体类型的变量10.3结构体类型变量的引用10.4结构体变量的初始化10.1结构体的定义格式:struct结构体名{类型名成员名表};功能:定义一个结构体类型。说明:(1)struct是关键字,是结构体类型必不可少的标识符。(2)结构体名是用户自己定义的标识符,与变量类型名相同。(3)花括号“{}”中是组成该结构体类型的成员数据项,或称为结构体中的分量。(4)结构体成员的数据类型可以是简单类型、数组、指针或已定义过的结构等。(5)整个定义以分号结束。numnamesexagescoreAdd

2、r99001wanglim2090shanghai例如:一个学生的学号、姓名、性别、年龄、成绩、家庭住址把上述各项组织成一个组合项,在一个组合项中包含若干个类型不同的数据项,这一组合项的数据结构称为结构体。Structstudent{intnum;Charnam[20];Charsex;Intage;Floatscore;Charaddr[30];};注意此处有分号10.2定义结构体类型变量10.2.1先定义结构体类型再定义变量名语句:Structstudentstudent1,student2;结构体类型名结构体变量名10001zhangxin

3、m1990.5shanghai10002wanglif2090beijingstudent1student210.2.2在定义类型的同时定义变量格式:struct结构体名{成员表列}变量名表列;如:structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}student1,student2;10.2.3直接定义结构类型变量格式:struct{成员表列}变量名表列;不出现结构体名说明:(1)类型与变量是不同的概念,不要混同。只能对变量赋值、存取或运算,而不能对

4、一个类型赋值、存取或运算。在编译时,对类型是不分配空间的,只对变量分配空间。(2)对结构体中的成员,可以单独使用,它的作用与地位相当于普通变量。(3)成员也可以是一个结构体变量。(4)成员名可以与程序中的变量名相同,二者不代表同一对象。例如:structdate{intmonth;intday;intyear;};structstudent{intnum;charname[20];charsex;intage;structdatebirthday;charaddr[30];}student1,student2;numnamesexagebirth

5、dayaddrmonthdayyear10.3结构体类型变量的引用10.3.1结构体类型变量的引用格式对结构体变量的引用,是通过对每个成员的引用实现的,其一般形式如下:结构体变量名.成员名如:结构体变量birthday中的三个成员可分别表示为birthday.monthbirthday.daybirthday.year如果成员本身又属于结构体类型,则要用若干个成员运算符,一级一级地找到最低一级成员。只能对最低一级成员赋值、存取或运算。如:student1.numstudent1.birthday.monthstudent1.birthday.da

6、ystudent1.birthday.year10.3.2结构体变量的引用规则(1)不能将一个结构体变量作为一个整体进行输入和输出(2)对结构体变量中的成员都可以像同类型的普通变量一样进行各种运算。如:Student1.num=9901;Student1.age=20;Student1.age++;等(3)可以引用成员的地址,也可以引用结构体变量的地址。但不能整体输入或输出结构体变量。如:Scanf(“%d”,&student1.num);Printf(“%o,&student1);Scanf(“%d,%s,%c,%d,%f,%s”,&stude

7、nt1);合理的形式不合理的形式例10.1建立一个学生的简单信息表,其中包括:学号、年龄、性别及一门课的成绩。要求从键盘上为此学生信息表输入数据,并显示出来。#include”stdio.h”main(){structst{intnum;intage;charsex;floatscore;};structstaa;printf(“inputnumber:”);scanf(“%d”,&aa.num);printf(“inputage:”);scanf(“%d”,&aa.age);printf(“inputsex:”);scanf(“%c”,&aa.

8、sex);printf(“inputscore:”);scanf(“%f”,&aa.score);printf(“number=%d

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。