C语言程序设计实验9教案.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计实验9教案

第 9 次 课程名称 程序设计基础 课程性质 实验课 授课班级 计09-1班 计09-2班 授课地点 31303 31302 授课时间 2009年12月11日周五第7小节~第8小节—1班 2009年12月13日周日第3小节~第4小节—2班 课题: 实验九、 文件的应用——2学时 主要教学内容:与文件有关的概念;文件的打开与关闭,文件的读写;对文件 进行各种操作的函数的使用方法; 教学目标:1. 进一步掌握与文件有关的概念; 2. 熟悉对文件进行各种操作的函数的使用方法; 重 点:完成2个题目的设计。 难 点:第2题。 教学过程(组织与方法):首先,进行考勤并检查学生对实验的准备情况,做好 记录,之后指导学生完成实验指导书中规定的实验内容,最后,逐 个验收,并记录验收结果。 作 业:实验报告:将实验内容中的任意一题写入实验报告。 实验九、文件的应用——设计型 1. 有n个学生,每个学生数据包括学号、姓名、性别、3门成绩、总成绩、平均成绩。从键盘输入n和n个学生的数据(总成绩和平均成绩可通过3门成绩算出),输入的n个学生的数据放结构体数组a中。然后将学生数n和这n个学生的数据存储到名为stud.dat的二进制文件中。之后读入文件中数据放到变量n1和结构体数组b中,输出数组b中的学生数据。要求输出要有表头和分隔虚线。 解:参考程序和运行结果如下: #include stdio.h struct student { int num ; char name[16] ; char sex ; int s[3] ; int total ; float aver ; } ; void main ( ) { void input ( struct student *p , int *pn ) ; void savef ( struct student a[] , int n ) ; void readf ( struct student b[] , int *pn ) ; void print ( struct student *p , int n ) ; struct student a[100] , b[100]; int n , n1 ; input ( a , n ) ; savef ( a , n ) ; readf ( b , n1 ) ; print ( a , n1 ) ; } void input ( struct student *p , int *pn ) { int i ; char c ; printf ( Please input student numbers: ) ; scanf ( %d , pn ) ; for( i = 0 ; i *pn ; i++ ) { printf ( input %dth number,name,sex,3 scores:\n , i + 1 ) ; scanf ( %d%s , p[i].num , p[i].name ) ; while( c = getchar ( ) , c != f c != m ) ; p[i].sex = c ; scanf ( %d%d%d , p[i].s[0] , p[i].s[1] , p[i].s[2] ) ; p[i].total = p[i].s[0] + p[i].s[1] + p[i].s[2] ; p[i].aver = p[i].total / 3.0 ; } } void savef ( struct student a[] , int n ) { FILE *fp ; int i ; fp = fopen( stud.dat , wb ) ; fwrite ( n , 2 , 1 , fp ) ; for ( i = 0 ; i n ; i++ ) { fwrite ( a[i] , sizeof ( struct student ) , 1 , fp ) ; fflush ( fp ) ; } fclose ( fp ) ; } void readf ( struct student b[] , int *pn1 ) { FILE *fp ; int i ; fp = fopen ( stud.dat , rb ) ; fread ( pn1 ,

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档