- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1
6.1 结构体数据类型
2.在定义结构体类型的同时定义结构体变量。
例如:
struct student
{
long no;
char name[15];
char sex;
int age;
float score;
} stu1,stu2;
第1页/共12页
2
6.1 结构体数据类型
3.直接定义结构体类型的变量。
例如:
struct
{
long no;
char name[15];
char sex;
int age;
float score;
}stu1,stu2;
第2页/共12页
3
6.1 结构体数据类型
【例6-1】外部结构体变量初始化
#include stdio.h
struct student /*结构体定义*/
{
long no;
char name[15];
char sex;
int age;
float score;
}stu1;
struct student stu1=Zhang Jun,M,21,87.5};
void main()
{
printf(No.=%ld\nName=%s\n,stu1.no,stu1.name);
printf(Sex=%c\nAge=%d\nScore=%f\n,stu1.sex,stu1.age,stu1.score);
}
第3页/共12页
4
6.1 结构体数据类型
定义了结构体变量以后,就可以引用这个变量,在程序中使用结构变量时,往往不把它作为一个整体来使用。对结构变量的使用,包括赋值、输入、输出、运算等都是通过结构变量的成员来实现的。表示结构变量成员的一般形式是:
结构变量名.成员名
例如:
stu1.no /*学生的学号*/
stu1.name /*学生的姓名*/
其中‘.’是成员运算符,它在所有的运算符中优先级最高。
如果成员本身又是一个结构体类型,则应该用若干个‘.’一级一级地找到最低级的成员。
例如:
stu1.birthday.year
stu1.birthday.month
stu1.birthday.day
不能将一个结构体变量作为一个整体加以引用,例如已定义了结构体变量stu1,并且进行了初始化。
第4页/共12页
5
6.1 结构体数据类型
【例6-3】结构体变量的引用
#include stdio.h
void main()
{struct date
{int year; int month; int day;};
struct student
{long no; char name[15];char sex; int age;
struct date birthday;
float score;
}stu2,stu1=ZhangJun,M,21,1987,3,19,87.5};
stu2=stu1;
stu2.age++;
printf(No.=%ld\nName=%s\n,stu2.no,stu2.name);
printf(Birthday=%d-%d-%d\n,stu2.birthday.year,
stu2.birthday.month,stu2.birthday.day);
printf(Sex=%c\nAge=%d\nScore=%.2f\n,stu2.sex,
stu2.age,stu2.score);
}
第5页/共12页
6
6.2 结构体与数组
结构体数组的定义方法和结构体变量的定义方法相同,可以采用三种方法定义结构体数组,本节以第二种方法为例。
例如:
struct student
{
long no;
char name[15];
char sex;
int age;
float score;
char *address;
}stu[5];
定义了一个结构数组stu,数组中包含5个元素,stu[0]~stu[4]。每个数组元素都是一个结构体变量。
第6页/共12页
7
6.2 结构体与数组
【例6-4】计算学生的平均成绩
#include stdio.h
struct student
{
long no;
char name[15];
char sex;
int age;
float score;
char *address;
}stu[5]={Liu ping,F,20,85.0,Beijing},
原创力文档


文档评论(0)