我在使用Microsoft Visual 2015的Windows 10上。以下是我遇到的问题:
考虑以下不完整的C ++程序:
#include <iostream>
int main()
{
...
}
A) Write a statement that includes the header files fstream, string, and
iomanip in this program.
B) Write statements that declare inFile to be an ifstream variable and
outFile to be an ofstream variable.
C) The program will read data from the file inData.txt and write output
to the file outData.txt. Write statements to open both of these files,
associate inFile with inData.txt, and associate outFile with outData.txt.
D) Suppose that the file inData.txt contains the following data:
Giselle Robinson Accounting
5600 5 30
450 9
75 1.5
The first line contains a person's first name, last name, and the department
the person works in. In the second line, the first number represents the monthly
gross salary, the bonus (as a percent), and the taxes (as a percent). The third
line contains the distance traveled and the traveling time. The fourth line
contains the number of coffee cups sold and the cost of each coffee cup. Write
statements so that after the program executes, the contents of the file outData.txt
are shown as below. If necessary, declare additional variables. Your statements
should be general enough so that if the contents of the input file changes and the
program is run again (without editing and recompilin), it outputs the appropriate results.
Name : Giselle Robinson, Department : Accounting
Monthly Gross Salary: $5600.00, Monthly Bonus: 5.00%, Taxes: 30.00%
Paycheck: $4116.00
Distance Traveled: 450.00 miles, Traveling Time: 9.00 hours
Average Speed: 50.00 miles per hour
Number of Coffee Cups Sold: 75, Cost: $1.50 per cup
Sales Amount = $112.50
E) Write statements that close the input and output files.
F) Write C++ program that tests the statements in parts a through e.
以下是我的问题代码:
#include "stdafx.h"
#include <fstream>
#include <string>
#include <iomanip>
using namespace std;
int main()
{
ifstream inFile;
ofstream outFile;
inFile.open("inData.txt");
outFile.open("outData.txt");
string firstName, lastName, department;
double monthlySalary, gross, bonus, tax, distance, time, cost, salesAmount, speed;
int count;
inFile.open("inData.txt");
outFile.open("outData.txt");
inFile >> firstName >> lastName >> department;
outFile << "Name:" << firstName << "" << lastName
<< ", Department:" << department << endl;
inFile >> gross >> bonus >> tax;
outFile << "Monthly Gross Salary: $" << gross
<< ", Monthly Bonus: " << bonus << "%Taxes:" << tax << "%" << endl;
inFile >> distance >> time;
outFile << "Distance Travelled:" << distance
<< ", Traveling Time:" << time << "hours" << endl;
speed = distance / time;
outFile << "Average Speed:" << speed
<< ", miles per hour" << endl;
inFile >> count >> cost;
outFile << "Numbeer of Coffee Cups Sold:" << count
<< " Cost: $" << cost << "per cup" << endl;
monthlySalary = gross + ((gross*bonus) / 100);
monthlySalary = monthlySalary - (monthlySalary * 30) / 100;
salesAmount = count*cost;
return 0;
}
当我在MSVS中调试它时,CMD提示只会按任意键继续。 经过一些研究,我只能假设它与我的有关 印度文件,但我不确定。我创建了一个名为that的文件,并将其放在与我的outdata文件相同的文件中,但没有。我是在这个场地还是在球场的左侧场地?我应该看到这样的结果:
姓名:Giselle Robinson,部门:会计 每月总薪水:5600.00美元,每月奖金:5.00%,税金:30.00% 薪水:$ 4116.00
行驶距离:450.00英里,行程时间:9.00小时 平均速度:每小时50.00英里
已售咖啡杯数量:75,成本:每杯1.50美元 销售额= 112.50美元
答案 0 :(得分:1)
您没有看到任何结果,因为您没有打印任何内容。相反,您正在将所有内容写入outFile
。
outFile << "Name:" << firstName << "" << lastName
<< ", Department:" << department << endl;
如果您希望它显示在您的控制台中,请改为使用cout
:
cout << "Name:" << firstName << "" << lastName
<< ", Department:" << department << endl;