C语言程序设计教程CJ_07结构体类型概述_潭浩强第3版.ppt

C语言程序设计教程CJ_07结构体类型概述_潭浩强第3版.ppt

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

《程序设计》-2005秋 辽宁师范大学 计算机与信息技术学院 蔡静 目 录 第十一章 用户定制数据类型 11.1 结构体类型基础及位段 11.2 结构体数组 11.3 指向结构体的指针 11.4 链表 11.5 结构体与函数 11.6 共用体类型数据 11.7 枚举类型数据 11.8 用 typedef 定义类型 数据类型概述 11.1 结构体类型概述 定制结构体类型: 11.2 结构体类型变量的定义和引用 1. 结构体变量的定义 方1:定义结构体类型后,再定义变量为此类型。 struct 结构体名 { 成员表列; }; struct 结构体名 结构体变量名; 如: struct student st1,st2; 或在程序开头用符号变量 #define STUD struct student STUD st1,st2; 方2:定义某结构体类型的同时,定义变量为此类型。 struct 结构体名 { 成员表列; }结构体变量名; 方3:直接定义变量为某结构体类型. struct { 成员表列; }结构体变量名; 说明: 结构体类型 与 结构体变量 不等价; 成员名可以与程序中的变量名相同,互不干扰. 2. 结构体变量的初始化 例: 外部变量 ...... struct date d1 = {4,23,00}; ...... main() { ...... } 3. 结构体变量的引用 (1).单个成员引用 结构体变量名.成员名 s1.name date1.year 对于嵌套定义的,用多个成员运算符,一级一级找到最低一级的成员。 s1.birth.month 对成员变量可以象普通变量一样进行各种运算。 s1.birth.year = 1978; s3.num = s1.num + 2; (2).整体引用 可以将一个结构体变量作为一个整体赋给另一个同类型的变量,但不允许把一组常量赋给一个结构体变量(虽然定义时赋初值可以)。 例: d1 = d2; Y d1 = {7,21,1978}; N 例CJ_Struct_01.C: 例CJ_Struct_02.C: 4. 结构体的输入输出 针对单个成员进行I/O,不能整体I/O 例CJ_Struct_02.C: scanf(%ld %s , s1.num, s1.name); Y printf(%ld,%s,s1.num,s1.name); Y scanf(%ld,%s,s1); N printf(%ld,%s, s1); N 11.5 结构体数组 11.5.1 结构体数组的定义 方1:定义结构体类型后,再定义数组为此类型。 Struct 结构体名 { 成员表列; }; struct 结构体名 结构体数组名; 如: struct student st1,st[50]; 或在程序开头用符号变量 #define STUD struct student STUD st1,st[50]; 结构体数组的定义(续) 11.5.2 结构体数组的初始化 11.5.3 对结构体数组元素的操作及应用 引用某一元素的某成员,则数组名[i].成员 某元素可赋值给同一结构体类型的数组中另一元素,或同类型的变量 不能把结构体数组元素作为一个整体直接进行输入输出。 例CJ_Struct_array_01.C:计算全班每个学生的三门课的平均成绩,并显示学号、姓名和平均成绩. 例CJ_Struct_array_02.C:输入N个学生的信息并输出。 11.6 指向结构体的指针 11.6.1 指向结构体变量的指针 指针变量的值为结构体变量的起始地址。 说明: 结构体变量.成员名 (*结构体指针).成员名 结构体指针-成员名 三者等价 -优先于++。 p-num++ 即 (p-num)++ ++p-num 即 ++(p-num) 例CJ_Struct_Point_01.C: 11.6.2 指向结构体数组的指针 指针变量的值为结构体数组的首地址,以元素(结构体)

文档评论(0)

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

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

1亿VIP精品文档

相关文档