毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

binary文件形式并使用随机读写处理方式对自定义CStudent类的对象数据进行存储与读写处理

更新时间:2011-5-3:  来源:毕业论文

binary文件形式并使用随机读写处理方式对自定义CStudent类的对象数据进行存储与读写处理
需求分析:
学生的信息输出到屏幕上。要求成员函数完成以下功能:
(1) 从键盘输入一个学生的有关信息,并将它们存入到数据文件中(按编号来确定写出位置)。
(2) 按编号对学生信息进行检索并将检索结果显示在屏幕上。
(3) 按姓名对学生信息进行检索并将检索结果显示在屏幕上。
(4) 计算某编号学生的总成绩与平均成绩。
(5) 列出所有总成绩超过270分的男同学的有关信息。
8.2程序执行的结果:
8.3概要设计
本程设计思路: 设计数据结构student,将学生信息保存到该数据结构中,注意二进制文件的读写是以字节为单位的所以要将student的指针转化位char*来输入到文件中
程序流程图(如左图):
 8.3  详细设计与编码:
见上传程序。
8.4调试分析:
     本题要注意的地方是对文件指针的操作,对给定的编号要能将文件指针移动到相应的位置上。

8.5 用户使用说明:
      用户输入保存的文件路径后就可以录入学生的信息,然后指定学生编号读取相应学生的信息。

8.6设计心得:
本题加强了我对二进制文件操作的理解。
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
using namespace std;

struct student
{
 unsigned int ID;
 char  name[10];
 char  sex;
 unsigned int age;
 unsigned int mathScore;
 unsigned int computerScore;
 unsigned int englishScore;

 
};

ostream& operator <<(ostream& out,student& stu)
{
 out<<stu.ID<<std::endl;
 out<<stu.name<<std::endl;
 out<<stu.age<<std::endl;
 out<<stu.sex<<std::endl;
 out<<stu.mathScore<<std::endl;
 out<<stu.computerScore<<std::endl;
 out<<stu.englishScore<<std::endl;
 return out;
};

void main()
{
 char quite;
 static int num=0;
 char filename[20];
 cin>>filename;
 FILE* file=fopen(filename,"wb");
 if(!file)
  std::cout<<"error"<<std::endl;
 cin>>quite;
 std::cout<<"输入任意字符开始('Q'键退出)"<<std::endl;
 while(quite!='Q')
 {
  student stu;
  memset(&stu,0,sizeof(stu));
  std::cin>>stu.ID;
  std::cin>>stu.name;
  std::cin>>stu.age;
  std::cin>>stu.sex;
  std::cin>>stu.mathScore;
  std::cin>>stu.computerScore;
  std::cin>>stu.englishScore;
  std::cout<<"你输入的数据如下:"<<std::endl;
  std::cout<<stu;
原文请找腾讯752018766辣,文-论'文.网http://www.751com.cn  }
 fclose(file);
 std::cout<<"共输入"<<num<<"个数据,请择读第几个?"<<std::endl;
 int index=0;
 std::cin>>index;
 file=fopen(filename,"rb");
 student test;
 memset(&test,0,sizeof(test));
 fseek(file,(index-1)*sizeof(test),SEEK_SET);
 if(!fread((char*)&test,sizeof(test),1,file))
  std::cout<<"error"<<std::endl;
 std::cout<<test;1812

binary文件形式并使用随机读写处理方式对自定义CStudent类的对象数据进行存储与读写处理下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。