当前位置:编程学习 > C/C++ >>

文件的读取与储备

[cpp]  
/* 
【项目2-读取数据到结构体数组】score.txt(从本文后粘贴自建)中是一些同学的学号、姓名、C++、高数、英语成绩,定义一个学生成绩的结构体数组,其中的成员包括学号(char num[12])、姓名(name)、三门课的成绩(grade)、总分(score))。 
程序的版权和版本声明部分  
* Copyright (c)2013, 烟台大学计算机学院学生  
* All rightsreserved.  
* 文件名称:score.cpp                             
* 作    者:蛋蛋                              
* 完成日期:2013  年3  月13  日  
* 版本号: v1.0        
* 输入描述:  
* 问题描述:(1)从文件中读出数据,存放到你定义的结构体数组中; 
(2)输出结构体数组中所有同学的记录。 
* 输出:读取后的的学生成绩单  
* 操作感悟:读取失败,完全不懂呢,5555 
*/  
#include <iostream>  
#include <fstream>  
using namespace std;  
struct Student  
{  
    char num[12];   
    char name[12];   
    int cpp;  
    int math;  
    int english;  
    int score;  
};  
const int N=200;  
int main( )  
{  
    int i, stuNum=0;  
    Student stu[N];  
    ifstream infile("score.txt",ios::in);   //以输入的方式打开文件  
    if(!infile)                 //测试是否成功打开  
    {  
        cerr<<"open error!"<<endl;  
        exit(1);  
    }  
    i=0;  
    while(!infile.eof())  
    {  
        infile>>stu[i].num>>stu[i].name>>stu[i].cpp>>stu[i].math>>stu[i].english;  
        stu[i].score=stu[i].cpp+stu[i].math+stu[i].english;  
        ++stuNum;  
        ++i;  
    }  
    infile.close();  
    for(i=0; i<stuNum; ++i)  
    {  
        cout<<stu[i].num<<"\t"<<stu[i].name<<"\t"<<stu[i].cpp<<"\t"<<stu[i].math<<"\t"<<stu[i].english<<"\t"<<stu[i].score<<endl;  
    }  
    return 0;  
      
}  

补充:软件开发 , C++ ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,