2012年计算机二级C语言上机题库:覆盖更新学生数据方法
5星 · 超过95%的资源 需积分: 3 119 浏览量
更新于2024-07-28
5
收藏 1.52MB DOC 举报
本题是关于全国计算机二级C语言的上机参考题库中的一个编程练习,涉及到了结构体、文件操作以及指针的使用。题目背景是设计一个名为`fun`的函数,该函数的目标是读取一个名为`student.dat`的文件,找到最后一个已存储的学生数据,然后用一个新的学生数据`STUn`替换该数据,同时保持其他学生数据不变。整个过程包括了文件的读写操作。
1. 定义结构体`STU`:首先,我们定义了一个结构体`STU`,用于表示学生信息,包含学号`sno`(long类型)、姓名`name`(字符数组,最大长度为10)和三门课程的成绩`scores`(浮点型数组,长度为3)。
2. 文件操作:
- `fun`函数中,通过`fopen`打开文件`filename`(在这个例子中是`"student.dat"`),模式为`"rb+"`,这意味着文件以二进制模式打开,并允许读写。`__1__`处应填入`filename`。
- 使用`fseek`函数定位到文件末尾,这里的参数是`(long)sizeof(STU)`,表示从文件末尾向前移动`STU`的大小个字节。`__2__`处应填入`fp`(文件指针)。
- `fwrite`函数用于将`STUn`中的数据写回文件,第一个参数是需要写入的地址(&n,这里假设`n`是指向`STUn`的指针),第二个参数是每个元素的大小(`sizeof(STU)`),第三个参数是写入的元素个数(1,因为只写入一个`STU`),第四个参数是目标文件指针`__3__`,即`fp`。
3. `main`函数中的操作:
- 初始化`STU`数组`t`,存储了5个学生的信息。
- 将`t`数组的内容写入到`student.dat`文件中。
- 再次打开文件,读取数据到`ss`数组。
- 使用循环打印原始数据,显示每个学生的学号、姓名和成绩。
通过这个题目,考生需要掌握如何使用结构体、文件操作以及指针来处理和更新二进制文件中的数据。理解并正确填写`fun`函数中的代码片段是解题的关键,特别是文件指针的使用和文件定位。同时,需要理解文件操作的基本流程,如打开、读写和关闭文件。在实际考试中,这类题目考察了对C语言基础操作的理解和实践能力。
点击了解资源详情
2021-10-01 上传
2021-11-06 上传
2021-10-20 上传
2021-11-01 上传
最骚的就是你
- 粉丝: 1090
- 资源: 193
最新资源
- 探索AVL树算法:以Faculdade Senac Porto Alegre实践为例
- 小学语文教学新工具:创新黑板设计解析
- Minecraft服务器管理新插件ServerForms发布
- MATLAB基因网络模型代码实现及开源分享
- 全方位技术项目源码合集:***报名系统
- Phalcon框架实战案例分析
- MATLAB与Python结合实现短期电力负荷预测的DAT300项目解析
- 市场营销教学专用查询装置设计方案
- 随身WiFi高通210 MS8909设备的Root引导文件破解攻略
- 实现服务器端级联:modella与leveldb适配器的应用
- Oracle Linux安装必备依赖包清单与步骤
- Shyer项目:寻找喜欢的聊天伙伴
- MEAN堆栈入门项目: postings-app
- 在线WPS办公功能全接触及应用示例
- 新型带储订盒订书机设计文档
- VB多媒体教学演示系统源代码及技术项目资源大全