当前位置:首页 >> 理化生 >>

实验四(2)答案


上 海 电 力 学 院

实 验 报 告
课程名称 姓名 同组人姓名
一、实验目的
? ? ? 理解流及流类库的作用 掌握流类库中常用的类及其成员函数的使用方法 掌握文件流的打开、关闭及使用的使用方法

高级程序设计 C++(2) 学号 无 班级 指导教师姓名

实验项目 专业 卢芳芳

实验 4

输入输出流应用

实验日期 2014 年 5 月 14 日

二、实验内容和步骤
1.从文件 indata.txt 中读取 n 个整型数据,计算其平均值,并将计算的平均值输出到文件 outdata.txt 中。 ? 程序源代码(注意添加注释) #include<iostream> #include<fstream> using namespace std; int main() { ifstream in; ofstream out; int n=0,a=0,average=0; int sum=0; cout<<"请输入计算的个数 n:"<<endl; cin>>n; in.open("indata.txt",ios::in); out.open("outdata.txt",ios::out); if(in.fail()) { cout<<"文件 indata.txt 打开失败"; exit(1); } else { cout<<"文件 indata.txt 打开成功,并计算其 n 个整型数据的平均值:"<<endl;
1 注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。

for(int i=0;i<=n;i++) { in>>a; sum+=a; } average=sum/n; cout<<"average="<<average<<endl; if(out.fail()) { cout<<"文件 outdata.txt 写入失败"; exit(1); } else { out<<average; cout<<"文件 outdata.txt 写入成功"; } } in.close(); out.close(); return 0; }

?

运行结果(直接截取结果图)

2. 运行课件 68-72 页程序,并在 student 类中添加成绩数组,分别存放 C++,高等数学、物理等成绩信息,编 写主函数求取 n 个不同学生的各门课程的平均成绩值。 (二进制文件读写方式) 。 student.h #ifndef STUDENT_H #define STUDENT_H class Student{ public: Student(); Student(Student&); void input(); char * getName();
2 注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。

int getAge(); double * getScores(); private: char name[20]; int age; double scores[3]; }; #endif student.cpp #include<iostream> #include"student.h" #include<cstring> using namespace std; Student::Student() { strcpy(name, "no name"); age=20; for(int i=0; i<3; i++) { scores[i]=0; } } Student::Student(Student& stu) { strcpy(name, stu.name); age=stu.age; for(int i=0; i<3; i++) { scores[i]=stu.scores[i]; } } void Student::input() { cout<<"请输入你的姓名:"; cin>>name; cout<<"请输入你的年龄:"; cin>>age; cout<<"请输入你的 C++成绩:"; cin>>scores[0]; cout<<"请输入你的高等数学成绩:"; cin>>scores[1]; cout<<"请输入你的物理成绩:"; cin>>scores[2];
3 注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。

} char * Student::getName() { return name; } int Student::getAge() { return age; } double * Student::getScores() { return scores; } mainstu.cpp #include<iostream> #include<fstream> #include<cstring> using namespace std; #include"student.h" int main() { Student stu; double stuscores[5][3]; int i; static char name[20]; //存放姓名 fstream inout; inout.open("inout.txt", ios::out|ios::in|ios::binary); if(!inout) { cout<<"文件创建失败,请重新创建"<<endl; exit(1); } int n=5; for(i=0; i<n; i++) { cout<<"请输入第"<<i+1<<"个学生的信息并存放文件:"<<endl; stu.input(); inout.seekp(i*sizeof(stu), ios::beg); inout.write((char*)&stu, sizeof(stu));
4 注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。

} inout.close(); inout.open("inout.txt", ios::out|ios::in|ios::binary); cout<<"将学生的各门课成绩依次读取到数组 stuscores 中:"<<endl; for(i=0; i<n; i++) { inout.seekg((i*sizeof(stu)+sizeof(name)+sizeof(int)), ios::beg); inout.read((char*)&stuscores[i], sizeof(stuscores[i])); } inout.close(); double sum[3]={0,0,0}; for(i=0; i<n; i++) { sum[0] +=stuscores[i][0]; sum[1] +=stuscores[i][1]; sum[2] +=stuscores[i][2]; } cout<<"各门课的 sum="<<sum[0]<<' '<<sum[1]<<' '<<sum[2]<<endl; double average[3]; average[0]= sum[0]/n; average[1]= sum[1]/n; average[2]= sum[2]/n; cout<<"学生各门课的平均成绩的分别如下:"<<endl; cout<<"C++平均成绩:"<<average[0]<<endl; cout<<"高等数学平均成绩:"<<average[1]<<endl; cout<<"物理平均成绩:"<<average[2]<<endl; return 0; }

三、实验中遇到的问题以及解决方法

5 注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。

四、实验结论与体会
1、 结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。 2、 添加适当注释,注意书写的层次结构。 3、 整理上机步骤,总结经验和体会。 4、 上交实验报告

6 注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。


相关文章:
Visual-Basic程序设计教程(第4版)实验答案[2]
Visual-Basic程序设计教程(第4)实验答案[2]_理学_高等教育_教育专区。※声明: 1. 实验所属课本原件为 《Visual Basic 程序设计教程 (第 4) (□主编 ...
实验四答案2
3页 2财富值如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 实验四答案2 隐藏>> 数据库技术与应用实验 1. 定义基本表...
C语言上机实验(第四版)参考答案
(2)了解在该系统上 C 语言程序设计 上机实验指导与习题 参考答案(第四版)(学生改编) 实验 1 C 语言程序初步 一、实验目的 (1)了解所用的计算机系统的基本...
实验四 - 参考答案
实验四 - 参考答案_工学_高等教育_教育专区。一、实验目的 ??掌握继承与派生...、实验内容和步骤 1)程序填空:填入相应的内容,使得程序可以正常运行。 1. #...
数据库实验四作业及答案
26页 2财富值如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 数据库实验四作业及答案 隐藏>> 实验4 一、 1. 2. 3...
实验四 (2)
四球实验(2) 3页 免费 2实验四 暂无评价 38页 1下载券 实验四答案2 7页...以下为具体的测试用例:实际测试结 数组 a null {1,2,3} {1,2,3} {1,...
实验答案(四-五-六)参考答案
实验答案(四-五-六)参考答案_工学_高等教育_教育专区。实验四 简单查询和连接...cname='离散数学')); (2) 查询 0101 课程的成绩高于张林的学生学号和成绩。...
实验四答案
实验准备 实验准备 (1)登陆毕博教学网站(http://210.35.204.159/)(2)选择“数据库应用”课程; ;(3)选择“按周编 制的教学安排”后,再选择“第四周”(4...
实验4数据查询答案
实验4数据查询答案_经济学_高等教育_教育专区。上机_4_:DML 的数据查询 上机学...上机_4_:DML 的数据查询 上机学时:2 上机类型: (验证) 上机要求: (必修)...
计算机组成原理_实验报告四(含答案)
计算机组成原理_实验报告四(答案)_理学_高等教育_教育专区。湖南科技学院电子...3. 机器指令 LDA R1, [R0] ADD R1, R2 OUT R1 STP 机器代码(二进制表示...
更多相关标签: