以下程序企图把从键盘终端输入的字符输出到名为abc.txt的文件中,当从终端读到字符'#'时,结束输入和输出操作。但该程序有错。 #include <iostream> #include <fstream> using namespace std; int main() { ofstream ofile; char ch; ofile.open("d:\\abc.txt", 'W'); do{ cin>>ch; ofile.put(ch); }while(ch!='#'); ofile.close();

题目

以下程序企图把从键盘终端输入的字符输出到名为abc.txt的文件中,当从终端读到字符'#'时,结束输入和输出操作。但该程序有错。 #include <iostream> #include <fstream> using namespace std; int main() { ofstream ofile; char ch; ofile.open("d:\\abc.txt", 'W'); do{ cin>>ch; ofile.put(ch); }while(ch!='#'); ofile.close(); return 0; } 程序出错的原因是( )。

A.成员函数open调用形式错误

B.输入文件没有关闭

C.成员函数put调用形式错误

D.对象ofile定义错误


相似考题
更多“以下程序企图把从键盘终端输入的字符输出到名为abc.txt的文件中,当从终端读到字符'#'时,结束输入 ”相关问题
  • 第1题:

    以下程序试图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符串#号时结束输入和输出操作,但程序有错 #include<stdio.h> main() { FILE*fout; char ch; fout=fopen('abc.txt','w'); ch=fgetc(stdin); while(ch!='#') { fputc(ch,four); ch=fgetc(stdin); } fclose(fout); } 出错的原因是______。

    A.函数fopen调用形式错误

    B.输入文件没有关闭

    C.函数fgetc调用形式错误

    D.文件指针stdin没有定义


    正确答案:A
    解析:本题考查的是文件的打开函数fopen(),其调用方式通常为FLIE*fp;fp=fopen(文件名,使用文件方式);,如:fp=fopen("abc.txt","w");表示要打开名字为abc.txt的文件,使用文件方式写入。fopen函数带回指向abc.txt文件的指针并赋给fp,即fp指向文件abc.txt。

  • 第2题:

    以下程序统计从终端输入的字符中大写字母的个数。用号作为输入结束标志,请填空。


    正确答案:

  • 第3题:

    3、以下程序依次把从终端输入的字符存放到f文件中,用#作为结束输入的标志, #include <stdio.h> void main() { FILE *fp; char ch; fp=fopen("fname", "w" ); while((ch=getchar()) !=′#′ ) fputc(__________ ); fclose(fp); } 则在横线处应填入的选项是:()

    A.ch

    B.fp,ch

    C.ch,fp

    D.ch, "fname"


    ch, fp##%_YZPRLFH_%##ch fp##%_YZPRLFH_%##ch,fp##%_YZPRLFH_%##ch,fp##%_YZPRLFH_%##ch ,fp##%_YZPRLFH_%##ch, fp

  • 第4题:

    以下程序企图把从终端输入的字符输出到名为abc.txt 的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。 #include <stdio.h> main() { FILE *fout; char ch; fout=fopen('abc.txt','w'); ch=fgetc(stdin); while(ch!='#') { fputc(ch,fout); ch =fgetc(stdin); } fclose(fout); } 出错的原因是

    A.函数fopen调用形式有误

    B.输入文件没有关闭

    C.函数fgetc调用形式有误

    D.文件指针stdin没有定义


    正确答案:A
    解析:本题考核的知识点是文件的简单应用。stdin是标准输入设备的文件指针,不需定义直接可以使用,它随系统的启动而打开,随系统的关闭而关闭,fgetc()函数的作用是从某个文件中读取一个数据,其参数为要读取文件的文件指针,所以本题中的调用形式是正确的。fopen()函数有两个参数,第一个参数是打开的文件名,第二个参数是文件打开模式,两个参数都是字符串,本例中"fout=fopen('abc.txt','w’);”语句的fopen()函数参数是错误的,应该用双引号"""",正确的应改为fout=fopen(“abc.txt”,“w”);。所以,A选项为所选。

  • 第5题:

    以下程序企图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。 #include main(void) { FILE *fout; char ch; fout=fopen('abc.txt','w'); ch=fgetc(stdin); while(ch!='#') { fputc(ch,fout); ch=fgetc(stdin); } fclose(fout); return 0; } 出错的原因是()

    A.函数fopen调用形式错误

    B.输入文件没有关闭

    C.函数fgetc调用形式错误

    D.文件指针stdin没有定义


    文件指针stdin没有定义