[英]How do you read values from a text file in c++?
基本上我必须从读取的文本文件中获取 2 个值(学生分数和总分)
97 127
并打印出学生百分比。
这是我的代码
#include <iostream>
#include <fstream>
#include <string>
#include <cmath>
using namespace std;
int main()
{
int student_score;
int total_points;
int final_score;
ifstream inFile;
inFile.open("myData.txt");
inFile >> student_score >> total_points;
final_score = (student_score / total_points) * 100;
cout << final_score;
inFile.close();
return 0;
}
我的问题是,当我运行程序时,结果是
3608900
当我只要求打印 student_score 值时,它会打印出一个完全不同的数字。
你的错误int total_points;
您只需将int
/ int
,实际上您尝试这样做: 97 / 127
所以输出为0
。
这里:
你应该写什么
int student_score = 0;
float total_points = 0.0;
int final_score = 0;
std::ifstream inFile;
inFile.open("myData.txt");
if( inFile ){
inFile >> student_score >> total_points;
} else {
std::cout << "your-error-code";
}
final_score = (student_score / total_points) * 100;
std::cout << final_score;
inFile.close();
return 0;
输出
76
笔记
始终将变量初始化为正确的相关类型
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.