2018全国计算机二级C语言操作题集-覆盖修改数据示例
本资源是一份2018年全国计算机等级考试操作题题库,主要针对的是C语言上机考试部分。题目涉及到了结构体与文件操作的相关知识,具体为编程技能考察,包括定义和使用结构体、文件的读写以及函数的调用。 首先,题目描述了`STU`结构体,用于表示一个学生,包含了学号`sno`、姓名`name`以及三门课程的成绩`score`。学生数据以二进制方式存储在文件`student.dat`中。给出的代码片段定义了一个名为`fun`的函数,其目标是更新文件中最后一个学生的信息,即将新的学生数据覆盖原数据。 1. 函数`fun`的实现中: - `fp=fopen(__1__,"rb+")`: 此行是打开文件句柄,使用二进制模式的读写(`rb+`),其中`__1__`是需要填写的参数,应为文件名(可能是"student.dat")。正确填写后,`fp`将指向文件进行操作。 - `fseek(__2__,-(long)sizeof(STU),SEEK_END);`: 这行代码表示移动文件指针到文件末尾,`__2__`同样需要填写为`fp`,因为`SEEK_END`指定从文件末尾开始计算偏移量,`-sizeof(STU)`表示从文件末尾向后移动一个结构体的大小,以便找到最后一个学生的数据。 - `fwrite(&n,sizeof(STU),1,__3__);`: 在找到最后一个学生的位置后,写入新的`STU`结构体,`__3__`应填`fp`,即文件指针。这里的`n`可能是一个临时变量,用于临时保存最后一个学生的位置,实际代码中未给出,但通常会使用`ftell(fp)`获取当前位置。 2. 在`main`函数中: - 初始化了包含五个学生的`t`数组,并将其写入`student.dat`文件中,`fwrite(t,sizeof(STU),N,fp)`中`N`表示数组长度,`fp`同样需要填写。 - 然后再次打开文件进行读取,为新的数据准备接收。 通过这些代码,考生需要掌握C语言中文件操作(如`fopen`、`fseek`、`fwrite`等)以及结构体的定义和使用,特别是如何定位文件中特定位置并进行数据替换。此题目的目的是测试考生在实际编程环境下处理文件操作的能力,同时考察对数据结构的理解和运用。理解并完成这个函数是通过计算机二级C语言考试的关键一步。
![](https://csdnimg.cn/release/download_crawler_static/12817197/bg10.jpg)
![](https://csdnimg.cn/release/download_crawler_static/12817197/bg11.jpg)
![](https://csdnimg.cn/release/download_crawler_static/12817197/bg12.jpg)
![](https://csdnimg.cn/release/download_crawler_static/12817197/bg13.jpg)
![](https://csdnimg.cn/release/download_crawler_static/12817197/bg14.jpg)
剩余406页未读,继续阅读
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/e416113c05204d92a12215724ba98731_qq_45693193.jpg!1)
- 粉丝: 1
- 资源: 6
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Vue实现iOS原生Picker组件:详细解析与实现思路
- Arduino蓝牙小车:参数调试与功能控制
- 百度Java面试精华:200页精选资源涵盖核心知识点
- Swift使用CoreData填坑指南:CoreData在Swift 3.0的变化
- 微距离无线充电器创新设计及其实验探索
- MTK Android平台开发全攻略:44步详解流程
- RecyclerView全面解析:替代ListView的新选择
- Android开发:自动适配中英文键盘解决方案
- Android调用WebService接口教程
- Android开发:BitmapUtil图片处理全解析与实例
- Android多线程断点续传实现详解
- PCA算法在人脸识别会议签到系统中的应用
- EventBus 3.0:Android事件总线详解与实战应用
- Android FileUtil:全面解析文件操作实用技巧与实例
- RecyclerView添加头部和尾部实战教程
- Android实现微博滑动固定顶部栏实战与优化
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)