51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1863|回复: 1
打印 上一主题 下一主题

[求助] 求大神指点,如何读取文件中的数据

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-6-30 16:55:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <iostream>
#include <fstream>
#include <iomanip>
#include<string>
using namespace std;
class student {
private:
       long num;
       string name;
       float chin;
       float math;
       float Eng;
public:
        student() {}
        student(long a, string b, float c, float d, float e) {
        num = a;
        name = b;
        chin = c;
        math = d;
        Eng = e;
}
~student() {
}
void setstudent() {//设置学生信息
cout << "请输入学生考号:";
cin >> num;
cout<< "请输入学生姓名:";
cin >> name;
cout << "请输入学生语文成绩:";
cin >> chin;
cout<< "请输入学生数学成绩:";
cin >> math;
cout << "请输入学生英语成绩:";
cin >> Eng;
}
float grade();
friend void wenjian1(student stu[], int n);
friend void wenjian2(student stu[], int n);
};
float student::grade(){return chin+math+Eng;}
void wenjian1(student stu[], int n) {
ofstream myfile("f:\\student1.txt");
if (!myfile) {
cout << "Unable to open myfile!";
exit(1);
}
if (!myfile.eof()) {
myfile << setw(12) << setiosflags(ios::left) << "考号" << setw(8) << "姓名"
<< setw(8) << "语文" << setw(8) << "数学" << setw(8) << "英语"
<< endl;
for (int i = 0; i < n; i++) {
myfile << setw(12) << setiosflags(ios::left) << stu[i].num << setw(
8) << stu[i].name << setw(8) << stu[i].chin << setw(8)
<< stu[i].math << setw(8) << stu[i].Eng << endl;

}
}
myfile.close();
}
void wenjian2(student stu[], int n) {
ofstream myfile("f:\\student2.txt");
if (!myfile) {
cout << "Unable to open myfile!";
exit(1);
}
if (!myfile.eof()) {
myfile << setw(12) << setiosflags(ios::left) << "考号" << setw(8) << "姓名"
<< setw(8) << "语文" << setw(8) << "数学" << setw(8) << "英语"
<< endl;
for (int i = 0; i < n; i++) {
myfile << setw(12) << setiosflags(ios::left) << stu[i].num << setw(
8) << stu[i].name << setw(8) << stu[i].chin << setw(8)
<< stu[i].math << setw(8) << stu[i].Eng << endl;

}
}
myfile.close();
}




int main() {
student stu1[25];
for(int i=0;i<25;i++){
stu1[i].setstudent();
}
wenjian1(stu1,25);
student stu2[30];
for(int i=0;i<30;i++){
stu2[i].setstudent();
}
wenjian2(stu2,30);
怎样读取txt中的数据,及求3科总分和排序



return 0;
}
怎样读取文件,还有对3科总分计算及排序。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    2#
    发表于 2013-6-30 20:09:14 | 只看该作者
    一行一行的读出来,然后进行字符串处理,运算了
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-27 00:47 , Processed in 0.068973 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表