全套电子课件:编程语言基础—C语言(第5版).ppt

全套电子课件:编程语言基础—C语言(第5版).ppt

  1. 1、本文档共271页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7.2.1 先定义类型,后定义变量; 格式: (1)先定义类型 struct 结构体名 { 类型标识符1:域标识符1; 类型标识符2:域标识符2; …… 类型标识符n:域标识符n; }; (2)在使用结构体变量之前的适当位置,定义变量 struct 结构体名 变量名表 ; 注意: 1. 此处struct不能省,只有 “结构体名 变量名表;”是错误的。 2. 紧接在定义的右花括号后的分号是不能省略的,因为一个结构体定义就是一条语句。 例7-1 main ( ) { struct date { int year, month, day; } ; // 右括号后不能缺少分号 struct date today; scanf ( %d %d %d , today.year, today.month, today.day ); printf ( %d 年%d月%d日 \n , today.year, today.month, today.day ); } 7.2.2 类型和变量同时定义 格式: struct 结构体名 { 类型标识符1:域标识符1; 类型标识符2:域标识符2; …… 类型标识符n:域标识符n; }变量名表; 例如,可以用下面的方法定义一个日期变量 workday。 struct date { int year, month, day; } workday; 7.2.3 直接定义变量 格式: struct { 类型标识符1:域标识符1; 类型标识符2:域标识符2; … 类型标识符n:域标识符n; }变量名表; 说明: 直接定义变量只适合于该结构体类型只出现一次。 7.3 结构体变量的引用 7.3.1 结构体变量的引用 结构体变量名.域名 例7-2:定义一个结构体变量t,从键盘上输入3 个域的值,并在屏幕上输出。 main( ) { static struct { int m, d, y; }t; scanf(%d, %d, %d, t.m, t.d, t.y ); printf(%d, %d, %d \n, t.m, t.d, t.y ); } 7.3.2 结构体变量的初始化 可以在定义结构体变量的同时,对结构体变量进行初始化。例如: struct xyz { int a; char c; }d1={1, a}; struct date d2={2, b}; 例7-3: main( ) { int i; static struct { char no[ 9 ] ; // 学号 char kc[16 ] ; // 课程 int cj ; // 成绩 } cjb1 = ENGLISH, 85}; printf (\n学号 :%s\n, cjb1.no); printf ( 课程 : %s\n , cjb1.kc); printf ( 成绩 : %d\n , cjb1.cj); } 7.3.3 同类型结构体变量间的赋值 格式是: 结构体变量1 = 结构体变量2 ; 例7-4:定义两个同属于类型struct date 的变量 d1和d2,先对变量d1赋值,再将d1赋给变量d2。 struct date { int mm , dd , yy ; }; main( ) { struct date d1, d2; d1.mm=9; d1.dd=1; d1.yy=2004; d2=d1; printf (%d-%d-%d \n, d2.mm, d2.dd, d2.yy ); } 语句d2=d1;等价于执行下列3条语句: d2.mm=d1.mm; d2.dd=d1.dd; d2.yy=d1.yy; 7.4 结构体数组 在实际应用中,可以把结构体定义为数组,数组的元素类型是结构体类型。 例如: typedef struct student { char no [ 10 ] ; char name [ 8 ] ; char sex [ 2 ] ; struct date birthday; int score ; } STUD; STUD s[50]; 这样可以存放50 个学生的课情况。 7.5 结构体应用实例 例7-5:用结构描

文档评论(0)

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

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

版权声明书
用户编号:7201060146000004

1亿VIP精品文档

相关文档