C语言结构体变量与链表知识程序.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
结构体与链表 11.1 结构体类型的定义 结构体是由C语言中的基本数据类型构成的、并用一个标识符来命名的各种变量的组合,其中可以使用不同的数据类型。 结构体类型的定义 Struct结构体名 { 类型标识符1 成员名1; 类型标识符2 成员名2; …… 类型标识符n 成员名n; }; Struct结构体名——结构体类型名 关于结构体类型的说明: “struct 结构体名”是一个类型名,它和int、float等作用一样可以用来定义变量。 结构体名是结构体的标识符不是变量名,也不是类型名。 构成结构体的每一个类型变量称为结构体成员,它像数组的元素一样,单数组中元素以下标来访问,而结构体是按结构体变量名来访问成员的。 结构体中的各成员既可以属于不同的类型,也可以属于相同的类型。 成员也可以是一个结构体类型,如: Struct date { Int month; Int day; Int year; }; Struct person { Float num; Char name[20]; Char sex; Int age; Struct date birthday; Char address[10]; }; 11.2 结构体类型变量 11.2.1 结构体类型变量的定义 先定义结构体类型,再定义结构体变量 形式: Struct 结构体名 {类型标识符1 成员名1; 类型标识符2 成员名2; …… 类型标识符n 成员名n; }; Struct 结构体名 变量名表; 例如: Struct student {char name[20]; Char sex; Int age; Float score; }; Struct student stu1,stu2; 在定义结构体类型的同时定义变量 形式: Struct 结构体名 { 类型标识符1 成员名1; 类型标识符2 成员名2; …… 类型标识符n 成员名n; }变量名表; 例如: Struct student { Char name[20]; Char sex; Int age; Float score; }stu1,stu2; 用匿名形式直接定义结构体类型变量 形式: Struct { 类型标识符1 成员名1; 类型标识符2 成员名2; …… 类型标识符n 成员名n; }变量名表; 例如: Struct { Char naem[20]; Char sex; Int age; Float score; }stu1,stu2; 11.2.2 结构体变量的使用 结构体是一种新的数据类型,因此结构体变量也可以像其它类型的变量一样赋值、运算,不同的是结构体变量以成员作为基本变量。 结构体成员的表示方式为:结构体变量名.成员名 其中的圆点运算符称为成员运算符,它的运算级别最高。 如果将“结构体变量名.成员名”看成一个整体,则这个整体的数据类型与结构体中该成员的数据类型相同,这样就可以像前面所讲的变量那样使用,但应遵循以下规则: 不能将一个结构体变量作为一个整体进行输入和输出,而只能对结构体变量中的各个成员分别进行输入和输出。 Struct date { Int month; Int day; Itn year; }day; Scanf(“%d%d%d”,day);(错误) Scanf(“%d%d%d”,day.year,day.month,day.day);(正确) Printf(“%d%d%d”,day);(错误) Printf(“%d%d%d”,day.year,day.month,day.day);(正确) 如果成员本身又属于一个结构体类型,则要用若干个成员运算符,一级一级地找到最底的一级的成员,只能对最底级的成员进行赋值或存取运算。 Struct date { Int month; Int day; Int year; }; Struct student { Long num; Char naem[20]; Char sex; Int age; Struct date birthday; Char depart[10]; }stu1; 如:stu1.birthday.year=2004; Stu1.birthday.month=12; 对结构体变量的成员可以像同类型普通变量一样进行各种运算。 11.2.3 结构体变量的初始化与存储 结构体变量的初始化:在定义结构体变量的同时给它赋以初值。 Struct student { Char name[20]; Char sex; Int age; Float score; }stu1,stu2={“wangwu”,’m’,20,88.5}; 结构体变量所占内存的字节数

文档评论(0)

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

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

1亿VIP精品文档

相关文档