第十一章 C语言 文件 课件.ppt

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验指导 编写一个名为c15_3.c的程序,实现如下功能:有5个学生,每个学生有平时成绩、期末考试成绩和总评成绩(总评成绩=平时成绩*30%+期末考试成绩*70%),从键盘输入学生数据(包括学号、姓名、平时成绩和期末考试成绩),计算出总评成绩,将原有数据和计算出的总评成绩存放在磁盘文件“stud.dat”中。 提示: 可先定义一个用于存放学生数据的结构体类型: struct student { char num[6]; char name[8]; int score[3]; }stu[5]; 实验指导 键盘输入5个学生的数据: for(i=0;i5;i++) scanf(“%s%s%d%d”,stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1]); 在输入时,数据间用空格隔开 计算总评成绩 建立文件指针f,指向“stud.dat”,“wb”方式 用fwrite函数将数据写入二进制文件。 for(i=0;i5;i++) fwrite(stu[i],sizeof(struct student),1,f); (可以比较与用fprintf函数建立的文件有什么不同) 第15讲 位运算和文件 复习回顾 结构类型定义:struct date{ ……..}; 结构类型变量定义与使用 结构变量作为函数参数 结构数组 位运算 位运算是指对二进制位的运算。 运算时要转换成二进制 位运算符和位运算 位运算符 含义 规则 按位与 00=0,01=0,10=0,11=1 | 按位或 0|0=0,0|1=1,1|0=0,1|1=1 ^ 按位异或 0^0=0,0 ^ 1=1,1 ^ 0=1,1 ^ 1=0 ~ 取反 ~0=1,~1=0 左移 高位左移后溢出,舍弃 右移 移到右端低位的被舍弃 位运算实例 计算:35 =1 可以利用按位与运算取二进制的某些(个)位: 设计一个数,将需要保留的这些位上置1,其余位置0,进行按位与运算。 思考:有个84),想保留左起1、2、4位? 位运算实例 | 计算:3|5 =7 可以利用按位或运算使二进制的某些(个)位置1: 设计一个数,将需要置1的这些位上置1,其余位置0,进行按位或运算。 思考:有个将高4位保留,低4位全部置1? 位运算实例 ~ 计算:~3 = -4 思考:要使某个整数a的最低位为0,其余各位保留。怎么实现?(要保证算式对于2字节或4字节系统都正确) 对于2字节:a0177776 对于4字节:a037777777776 统一:a~1 位运算实例 ^ 计算:3^5 = 6 可以利用按位异或运算,使特定位翻转(1变0,0变1): 设计一个数,将需要翻转的位置1,其余置0,进行按位异或运算。 思考:4位翻转? 位运算实例 a=15,计算a2=?移2位答案为60。 左移1位运算相当于乘以2 a=64,计算a2=?移2位答案为16。 右移1位运算相当于除以2 文件---学习要求 掌握文件概念 熟练掌握文件类型指针 熟练掌握文件的打开、关闭 熟练掌握文件的读写 C文件概述 文件是存储在外存上的数据的集合。 操作系统是以文件为单位进行数据管理的。 操作系统将输入输出设备看作是文件(设备文件)。例如,scanf是从终端键盘输入数据,终端键盘就是输入文件; printf是向显示器或打印机输出数据,显示器或打印机就是输出文件。 程序运行时也可以从磁盘文件中输入数据,或向磁盘文件输出数据。 C文件概述 C语言把文件看成一个一个字符(字节)的序列,由一个一个字符(字节)的数据组成。 根据数据的组织形式,C数据文件分为ASCII文件和二进制文件。 ASCII文件又称为文本文件,每个字节放一个ASCII码,代表一个字符。 二进制文件是把数据按内存中的存储格式进行存放。 例:整数10000 ASCII文件占5个字节,分别存放31H,30H,30H,30H,30H 二进制文件占4个字节,分别是00H,00H,27H,10H C文件概述 C数据文件是“流式文件”,是一个字节流或二进制流。 C语言中对文件的读写是以字节为单位的。输入输出的数

文档评论(0)

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

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

1亿VIP精品文档

相关文档