如何在c++中声明一个文本文件,并通过读取文件中的数据来显示学生的平均分数
How to declare a text file in c++ and display the average score of a student by reading the data from the file.?
我已经创建了一个名为(student.txt)的文件,并将以下信息放入文件中
Will Smith 99
Sarah Johnson 100
Tim Howard 70
Francesco Totti 95
Michael Jackson 92
我想让用户输入文件名,一旦他们输入了文件名,我想通过从文件中读取数据来显示平均分数。
注意:文件中的每一行都包含学生的名字、姓氏和考试成绩
这是我到目前为止所做的,这只能显示文件中的内容请帮我申报文件名并显示学生的平均分数
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
int main() {
string studentFile;
ifstream file("student.txt");
if (file.is_open()) {
while (getline(file,studentFile))
{
cout << studentFile << 'n';
}
file.close();
}
system("pause");
return 0:
}
假设所有条目都将按照您指定的格式进行格式化,您可以实现它的某个版本(这并不是完美编写的,但它给出了大致的想法):
string line;
float total_grade = 0;
int num_grades = 0;
while (getline(file, line)) {
//ignore everything up to score
int number_position = line.find_last_of(" ") + 1;
string grade_string = line.substr(number_position, line.length() - number_position);
//turn string of score into number
float grade = stof(grade_string);
total_grade += grade;
num_grades++;
}
float average_grade = total_grade / num_grades;
要在开始时从用户那里获得文件名,请使用
string studentfilename;
cout << "Enter student file name: ";
cin >> studentfilename;
祝你好运!
相关文章:
- 从 bmp 文件数据创建 MFC CBitmap
- 从存储为 Windows 资源 (c++) 的 png 中获取 png 文件数据
- 如何在 Gnuplot 中分别绘制 2 个文件数据?我有一个文件"sin.txt",另一个文件"cos.txt",我想将它们分别绘制在一个图表上
- 获取文件数据预处理器宏
- 错误的值是使用c++从CSV文件数据写入数组
- 无法在可视C++中检索资源文件数据
- 将文本文件数据读入字符数组时提取运算符的歧义
- 如何使用curl c ++源代码发布wav文件数据,如何使用c ++使用--data-binary?
- 如何在C++中读取 UTF-8 文件数据
- 如何在结构中存储二进制文件数据
- 无法从 turbo c 程序中的文件检索文件数据
- 使用 fstream 将文件数据从当前位置保存到文件末尾
- 通过Google Protobuf发送二进制文件数据
- 在通过套接字向服务器发送文件数据时,我得到了一些垃圾值?为什么
- 如何使用dlang读取二进制文件数据
- 程序使用FSCANF读取文件数据后崩溃
- 检测二进制文件数据的端性
- C++ 从文本文件数据类型读取为结构,并将数据存储在列表的向量中
- 将 FFT 应用于 WAV 文件数据的 C++
- C++内存映射的文件数据预取