《高级语言程序设计》课件分析.ppt

  1. 1、本文档共471页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
? 字符型数据和整型数据可以相互赋值并进行混合运算,但要注意这两种数据的取值范围是不同的(即要注意变量的类型和赋值的合法性)。 6.2.4 结构体变量的引用 结构体变量一经定义,系统为其分配空间,便可进行引用。对结构体变量的引用是通过对其成员的引用来实现的,一般情况下不能引用变量名本身。(除了作为函数参数和同类型的结构体变量相互赋值两种情况) 引用的一般形式是:结构体变量名. 成员名 引用说明: 引用说明: (1)类型和变量是不同的概念,不能混淆。在引用时,可以对变量进行赋值、存取或运算,但不能对类型进行;在编译时,对类型不分配内存空间,只对变量分配。 (2)结构体中的成员相当于普通变量,可以按引用形式单独使用,即可作为表达式中的运算对象。 例:x=5; wu.age=18; li.age=wu.age+x; (3)结构体的成员也可以是一个结构体类型数据,在引用这种成员时,需要用多个成员运算符逐级找到最低一级的成员,只能对最低一级的成员进行引用; 例:若定义 struct dade struct st { int year; { char name[20]; int month; char sex; int day; struct date birthday; }; }wu; 则: wu . birthday . year =1989; wu . birthday . month = 9; (4)成员名可以与程序中的变量名相同,两者代表不同的对象,由于引用方法不同,使用时不会有冲突。 (5)结构体变量整体引用的条件(作为函数参数、两个同类型的结构体变量相互赋值)。 例:计算某学生5门课的平均成绩、最高分和最低分。 #include stdio.h struct score { float grade[5]; float ave,max,min; }; main( ) { int i; struct score m; printf(“input the grade of five course:\n”); for(i=0;i5;i++) scanf(“%f”,m.grade[i]); m.ave=m.grade[0]; m.max=m.grade[0]; m.min=m.grade[0]; for(i=1;i5;i++) { m.ave+=m.grade[i]; m.max =(m. grade[i]m.max) ? m.grade[i] : m.max; m.min =(m. grade[i]m.min) ? m.grade[i] : m.min; } m.ave/=5; printf(“ave=%5.1f,max=%5.1f,min=%5.1f\n” , m.ave , m.max , m.min); } 6.3 结构体数组 结构体数组即为数组中的每一个元素均为结构体类型的数据,它们都分别包括各个成员项。 6.3.1 结构体数组的定义和初始化 6.3.2 结构体数组元素的引用 引用说明: (1)在引用结构体数组元素时,下标从0开始; (2)数组的各个元素在内存中是连续存放的; (3)对结构体数组元素的引用只能引用其成员,即将一个数组元素作为一个结构体变量名。 例1:教材P236 (数组初始化) 例2:输入30个学生的数据资料,包括学号、姓名及四门课的成绩,找出总成绩最好和最差的学生,并输出他们的总分。 #include stsio.h #define SIZE 30 main() { struct student {

文档评论(0)

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

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

1亿VIP精品文档

相关文档