《C语言程序设计》课件-项目11:结构体与共用体_第1页
《C语言程序设计》课件-项目11:结构体与共用体_第2页
《C语言程序设计》课件-项目11:结构体与共用体_第3页
《C语言程序设计》课件-项目11:结构体与共用体_第4页
《C语言程序设计》课件-项目11:结构体与共用体_第5页
已阅读5页,还剩20页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

C语言程序设计结构体的定义CONTENTS01结构体类型定义

02结构体变量的定义目录03结构体变量初始化04结构体变量的引用结构体类型定义

结构体是一种构造数据类型,是用户自定义的一种数据类型,是把不同类型的数据整合在一起,形成新的数据类型,其中的每一项数据都称为该结构体的成员。例如:将学号、姓名、年龄整合在一起,形成新的数据类型---学生类型结构体类型定义使用结构体时,首先要对结构体类型的进行定义,然后,再用结构体类型定义相关的变量。结构体类型的定义方法如下:

struct

结构体类型名称

{

数据类型成员名1;

数据类型成员名2; …

数据类型成员名n;

};

structStudent

{ intnum;charname[20];charsex;intage;};例如结构体变量的定义结构体类型,只相当于一个模型,系统不会为它分配实际的内存空间。只有在利用结构体类型定义变量时,系统才为结构体变量分配存储空间。可通过以下几个方式定义结构体变量

1.先定义结构体类型,再定义结构体变量

2.在定义结构体类型的同时定义结构体变量

3.直接定义结构体变量结构体变量的定义

1.先定义结构体类型,再定义结构体变量

structStudent

{intnum;charname[20];charsex;intage;};strutctStudents1,s2;结构体变量的定义

2.在定义结构体类型的同时定义结构体变量

structStudent

{intnum;charname[20];charsex;intage;}s1,s2;

结构体变量的定义

3.直接定义结构体变量

struct

{intnum;charname[20];charsex;intage;}s1,s2;

这种定义方式没有结构体名称,称为匿名结构体

结构体变量初始化由于结构体是把不同类型的数据整合在一起,对结构体变量初始化实际上就是对结构体中各个成员变量的初始化。根据结构体变量定义方式的不同,结构体变量初始化的方式可分为两种。

1.在定义结构体类型和结构体变量的同时,对结构体变量初始化

structStudent

{intnum;charname[20];charsex;intage;}s1={20200101,”zhang”,”M”,20};2.定义好结构体类型后,对结构体变量初始化

结构体变量初始化由于结构体是把不同类型的数据整合在一起,对结构体变量初始化实际上就是对结构体中各个成员变量的初始化。根据结构体变量定义方式的不同,结构体变量初始化的方式可分为两种。1.在定义结构体类型和结构体变量的同时,对结构体变量初始化2.定义好结构体类型后,对结构体变量初始化structStudent

{intnum;charname[20];charsex;intage;};structStudents1={20200101,”zhang”,”M”,20};

结构体变量的引用结构体是由多个成员变量整合在一起,引用结构体变量中一个成员的方法是:

结构体变量名.成员变量名如:structStudents1;使用s1中成员变量age的方法如下:intage1=s1.age;结构体变量的引用程序分析:#include<stdio.h>structStudent{intnum;charname[10];charsex;intage;}stu={20200101,"wang",'M',19};voidmain(){printf("num=%d\n",stu.num);printf("name=%s\n",);printf("sex=%c\n",stu.sex);printf("age=%d\n",stu.age);return0;}C语言程序设计结构体的使用CONTENTS01定义坐标类型

02定义两点距离的函数目录结构体类型定义:坐标类型

结构体是一种用户自定义的一种数据类型,是把不同类型的数据整合在一起,所形成新的数据类型。

structStudent

{ intnum;charname[20];charsex;intage;};structcoordinate{doublex;doubley;};坐标类型定义两点距离的函数可利用structcoordinate类型定义两点距离的函数,具体方法如下:doubledistant(structcoordinatep1,structcoordinatep2){doubled=0;……returnd;}定义两点距离的函数doubledistant(structcoordinatep1,structcoordinatep2){

doubled=0;d=sqrt(pow(p2.x-p1.x,2)+pow(p2.y-p1.y,2));returnd;}样例:输入两点坐标,输出两点的距离分析:定义坐标的结构体定义两点距离的函数编写主程序样例:输入两点坐标,输出两点的距离分析:定义坐标的结构体定义两点距离的函数编写主程序C语言程序设计共用体样例CONTENTS01共用体类型定义02共用体样例分析目录共用体类型定义共用体也是一种用户自定义的数据类型,它允许多个成员使用同一块内存。其定义方式、引用方法与结构体类似。下图为共用体的类型定义:union

共用体类型名称{数据类型

成员名1;数据类型

成员名2;……数据类型

成员名n;};共用体类型定义

共用体变量的引用方式与结构体类似,但两者是有区别的,在

温馨提示

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

最新文档

评论

0/150

提交评论