网站大量收购独家精品文档,联系QQ:2885784924

结构体变量(Struct variable).doc

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

结构体变量(Struct variable) 学生结构/结构不能省略 { int num; char名称[ 20 ]; 性别; 年龄; 浮动评分; 字符地址[ 30 ]; };//注意最后有一个分号 系统为结构体分配的内存为各成员类型所占内存之和 学生的的内存= 4 + 20 + 1 + 4 + 4 + 30 = 63 结构体类型的一般形式 结构结构体名(域表)(形如学生) { 成员表列/成员必须进行类型声明 }; 成员可以属于另外一个结构体类型,例 结构数据 { 月; 国际日; 国际年; }; 体类型 { int num; 性别; 字符地址[ 30 ]; 年龄; 结构/结构体类型也可以像普通结构类型一样使用生日日期; char名称[ 20 ]; }; 声明类型的同时定义变量 体类型 { int num; char名称[ 20 ]; 性别; 年龄; 浮动评分; 字符地址[ 30 ]; }啦,里; 结构体变量的初始化 #包括 stdio. h 国际main() { 体类型 { int num; char名称[ 20 ]; 性别; 字符地址[ 30 ]; } = { 10010,“林”,是“123”,北京路”}; printf(“号:%d \名称:%s nsex:% C naddr:%s \n”,a.num,a.name,a.sex,a.addr); 返回0; } 结构体变量中成员的值的引用 结构体变量。成员名 #包括 stdio. h 国际main() { 体类型 { int num; char名称[ 20 ]; 浮动评分; }啦,里; scanf(“%d %s F”,与学生。民,学生姓名、与学生的分数);/ /数组本身就代表地址,所以输入时不用加地址符 scanf(“%d %s F”,与学生二。民,里。名字,和学生二。评分); printf(“更高的得分是:\n”); 如果(啦里。评分。评分) printf(“%d %s 6.2f \n”啦。民,学生姓名、学生评分); 如果(10。评分<里。评分) printf(“%d %s 6.2 NF”里。民,学生姓名、学生评分); 其他的 { printf(“%d %s 6.2f \n”啦。民,学生姓名、学生评分); printf(“%d %s 6.2f \n”里。民,学生姓名、学生评分); } 返回0; } 使用结构体数组 1)定义结构体数组 投票程序 #包括字符串。” #包括 stdio. h 结构的人 { char名称[ 20 ]; 数组的个数; }领袖[ 3 ] =“李”,0,“张”,0,“王”,0 }; 国际main() { int i,j; 焦leader_name [ 20 ]; 对于(i = 1;i 10;i + +) { scanf(“%s”,leader_name); 对于(j=0;j<3;j + +) 如果(strcmp(leader_name,领袖[J]。名字)= = 0)领袖[J]。计数+ +; } printf(“该:\n”); 对于(i = 0;i 3;i +) printf(“% 5S:%d\n”,领导[我],[我]的名字,领袖。计数); 返回0; } 如何定义一个结构体数组 【1】结构结构体名 {成员列表}数组名[数组长度]; [ 2 ]先声明一个结构体类型(如),然后再用此类型定义结构体数组: 结构体类型数组名[数组长度]; 像:结构领袖(3); 结构结构体名 {成员列表}数组名[数组长度] = {初值表列}; 如:结构人称为领袖[ 3 ] =“李”,0,“张”,0,“王”,0 }; 对学生成绩进行排序 #包括 stdio. h (#定义n 5) 体类型 { int num; char名称[ 20 ]; 浮动评分; }; 国际main() { 学生结构10101,{ 5,“张”,78 },{ 10103,“王”,98 }, { 10106,“李”,86 },{ 10108,“灵”,73 },{ 10110,“太阳”,100 }; 学生t结构; (const int n = 5)(N换成N) int,j,k; printf(“顺序是:\n”); 为(i=0;i n-1;i + +) {我; 对于(j = i + 1;j n;j + +) 如果(学生)得分(学生)。 k = j; T =学生[ K ];学生[学生];学生; } 为(i = 0;i ;;+(+)) printf(“% 6d %8s % 6.2f \n”,斯图[我]。Num,斯图[我],[我]的名字,斯图。评分); printf(“\n”); 返回0; } 三种常见的排序方法 一、冒泡法(起泡法) 算法要求:用起泡法对10个整数按升序排序。 算法分析:如果有N个数,则要进行N-1

您可能关注的文档

文档评论(0)

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

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档