网站大量收购闲置独家精品文档,联系QQ:2885784924

C语言程序设计教程(第2版)-课件 第9章 结构体.pptx

C语言程序设计教程(第2版)-课件 第9章 结构体.pptx

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第九章结构体

结构体概念

定义结构体类型

定义和引用结构体类型变量

定义和引用结构体类型数组

结构体类型指针;概述;结构体:若干个数据类型不同(也可相同)的数据项的一个组合。

结构体是一种数据结构,它需要用户根据自己的需要,按某种规则定义,即定义结构体类型。

;定义结构体类型的一般形式:

struct结构体类型名

{成员列表};

;定义结构体类型变量的方法;二、在定义类型的同时定义变量

structstudent

{intnum;

charname[20];

charsex;

floatscore;

charaddr[30];

}student1,student2;;三、直接定义结构类型变量

struct

{intnum;

charname[20];

charsex;

floatscore;

charaddr[30];

}student1,student2;;说明:

1)类型与变量区别

定义时先定义结构体类型,然后定义变量。

类型不分配空间,变量分配空间。

2)结构体的嵌套定义

结构体成员也可以是结构体变量。;结构体类型变量的引用;2)如果是嵌套定义,用若干个成员运算符,一级一级地找到最低的一级成员。

如:student1.num;

student1.name;

student1.birthday.month;

student1.birthday.day;

3)结构体成员变量可以像普通变量一样使用、运算(但使用的形式不同)

如:student2.score=student1.score;

sum=student1.score+student2.score;

student1.age++;

4)可以引用成员的地址,也可以引用结构体变量的地址。

如:scanf(“%d”,student1.age);;例:结构体变量的初始化

structstudent

{longintnum;

charname[20];

charsex;

charaddr[20];

}a={89031L,”李林”,’M’,”123北京路”};

intmain()

{printf(“学号:%ld\n姓名:%s\n性别:%c\n住址:%s\n”,a.num,a.name,a.sex,a.addr);

};结构体数组(数组中每个元素都是一个结构体类型的数据);二、结构体数组的初始化

形式:在定义数组的后面加上:={初值表列};;结构体数组在内存中连续存放:;例:候选人得票的统计程序。设三个候选人,每次输入一个得票的候选人的名字,要求最后输出每个候选人的得票结果。;指向结构体类型数据的指针;intmain()

{structstudent

{longintnum;

charname[20];

charsex;

floatscore;

};

structstudentstu_1;

structstudent*p;

p=stu_1;

stu_1.num=89101L;

strcpy(stu_1.name,”李林”);

(*p).sex=‘M’;p-score=89.5;

printf(“学号:%ld\n姓名:%s\n成绩:%.1f\n”,stu_1.num,

p-name,(*p).score);

};二、指向结构体数组的指针

;三、用结构体变量和指向结构体的指针作函数参数

将一个结构体变量的值传递给另一个函数,有4个方法:

用结构体变量的成员作参数。

用结构体变量作实参。

用指向结构体变量(或数组)的指针作实参,将结构体变量(或数组)的地址传给形参。

用结构体变量的引用作参数。

;例:有一个结构体变量stu,内含学生学号、姓名和3门课程的成绩。要求在main函数中赋予值,在另一函数print中将它们输出。今用结构体变量作函数参数。

#includestdio.h

structstudent

{

intnum;

charname[20];

floatscore[3];

};

;#includestdio.h

#includestring.h

#defineFOR

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档