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

C语言程序设计教程-电子教案第2章电子教案:数据类型.ppt

C语言程序设计教程-电子教案第2章电子教案:数据类型.ppt

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

【例2-5】从键盘输入一个学生的学号、姓名、年龄、C语言成绩、数学成绩和英语成绩,计算总分和平均分后,输出表头及学生信息。【程序说明】(1)字符数组的格式控制字符是“%s”,并且输入时数组名前不需要加()。(2)输入学号“101”后,数组num的存储形式如下。(3)调用printf()函数输出学号时,将依次从内存中取出每个字符并输出,直至碰到字符串结束标志为止。(4)字符串常量2011110101的存储形式如下:A和A有何区别?A表示一个字符,在内存中占用一个字节的存储空间;而A表示一个字符串,在内存中占用两个字节的存储空间,分别存放字符A和转义字符\0。2.6案例中学生结构体的定义和使用在“学生信息管理系统”中,学生的学号、姓名、年龄等不是一个个孤立的数据,而是一个相互联系的整体,那么在编程时如何体现出他们之间的联系呢?2.6.1结构体类型的定义例如,学生结构体类型:structstu_type{ charnum[15]; charname[10]; intage; intc; intmath; inten; intsum; floatave;};struct结构体类型名{ 类型说明符成员名1; 类型说明符成员名2; … 类型说明符成员名n;};2.6.2结构体变量的定义和使用结构体变量的定义格式如下:struct结构体名变量列表;例如,定义3个“学生”结构体变量,方法如下:structstu_typestu1,stu2,stu3;类似于用int类型定义如下3个整型变量:inti,j,k;结构体变量的使用格式如下:结构体变量名.成员名例如:操作第一个学生的C语言成绩:stu1.c=80; //赋值scanf(%d,stu1.c); //从键盘输入printf(%d,stu1.c); //输出【例2-6】从键盘输入2个学生的学号、姓名、年龄、各科分数,求总分和平均分后,输出他们的所有信息。voidmain(){ structstu_type { charnum[15];//学号 charname[10];//姓名 intage; //年龄 intc; //C语言分数 intmath; //数学分数 inten; //英语分数 intsum; //总分 floatave; //平均分 }; structstu_typestu1,stu2; printf(请输入第1个学生的学号:); scanf(%s,stu1.num); printf(请输入第1个学生的姓名:); scanf(%s,stu1.name); printf(请输入第1个学生的年龄:); scanf(%d,stu1.age);printf(请输入第1个学生的C语言成绩:);scanf(%d,stu1.c);printf(请输入第1个学生的数学成绩:);scanf(%d,stu1.math);printf(请输入第1个学生的英语成绩:);scanf(%d,stu1.en);stu1.sum=stu1.c+stu1.math+stu1.en;stu1.ave=stu1.sum/3.0;printf(请输入第2个学生的学号:);…printf(学生学号\t姓名\t年龄\tC语言\t数学\t英语\t总分\t平均分\n);printf(%-16s%s\t%d\t%d\t%d\t%d\t%d\t%5.1f\n,stu1.num, stu1.name,stu1.age,stu1.c,stu1.math,stu1.en,stu1.sum,stu1.ave);printf(%-16s%s\t%d\t%d\t%d\t%d\t%d\t%5.1f\n,stu2.num, stu2.name,stu2.age,stu2.c,stu2.math,stu2.en,stu2.sum,stu2.ave);}【程序说明】(1)在printf()中,“%-16s”表示学号的输出宽度占16位,其中,“-”表示左对齐,默认是右对齐。(2)学生信息的输入和输出比较冗长,在学习结构体数组后将能有效解决这一问题。(3)同类型的结构体变量之间可以互相赋值。例如,stu2=stu1;2.7数据类型转换在例2-6中,计算平均分时采用的语句是: stu1.ave=stu1.sum/3.0;

文档评论(0)

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

计算机二级持证人

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

领域认证该用户于2024年11月02日上传了计算机二级

1亿VIP精品文档

相关文档