使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为:从键盘输入一个字符串,并将结果保存到文件modil.txt中。 注意:不要改动main函数,不能增行或删行,也不能更改程序的结

admin2020-10-21  37

问题 使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为:从键盘输入一个字符串,并将结果保存到文件modil.txt中。
    注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在∥********error********的下面。
#include
#include
∥********error********
using std;
void WriteFile(char*S)
{
    ofstream outl;
    ∥********error********
    outl.open(”modil.txt”,
binaryf app);
    for(int i=0;S!=0 ; i++)
{
    ∥********error********
    outl.puts(S);
}
outl.close();
)
void ClearFile()
{
    ofstream outl ;
    outl.open(”modil.txt”);
    outl.close();
}
int main()
{
    char S[1024];
    ClearFile();
    cout<<”please input a string:
”<    cin.getline(S,1024);
    WriteFile(S);
    return 0;
}

选项

答案(1)using namespace std; (2) out1.open(“modil.txt”, ios::binary |ios::app); (3)outl.put(s[i]);

解析 程序要求从键盘输入一个字符串,并将结果保存到文件modil.txt中。从已给定源程序的main主函数开始入手,main主函数首先调用ClearFile函数打开文件,然后调用WriteFile函数将字符串写入文件。
解题思路
(1)第1个标识下的“using std;”是在程序中引入标准命名空间std,对于C++中引入标准命名空间的格式,缺少namespace,所以第1个标识下的语句修改为“using namespace std;”。
(2)第2个标识下,调用成员函数open中,输入输出方式是在ios类中定义的,所以“outl.open(”modil.txt”,binarylapp);”语句缺少类ios,即第2个标识下的语句修改为“out1.open(”modil.txt”,ios::binarylios::app);”。
(3)第3个标识应该用流成员函数put输出字符,所以第3个标识下的语句修改为“outl.put(s);”。
转载请注明原文地址:https://jikaoti.com/ti/fwl0FFFM
0

最新回复(0)