文本文件是可以迭代的,可以使用for line in fp类似的语句遍历文件对象fp中的每一行。

题目

文本文件是可以迭代的,可以使用for line in fp类似的语句遍历文件对象fp中的每一行。


相似考题
更多“文本文件是可以迭代的,可以使用for line in fp类似的语句遍历文件对象fp中的每一行。”相关问题
  • 第1题:

    如果将主文件型指针fp指向的文件内部指针置于文件尾,正确的语句是( )。A.feof(fp);B.rewind(fp);C.fseek(fp,OL,0);D.fseek(fp,OL,2);


    正确答案:D
    文件操作;主文件型指针fp指向的文件内部指针置于文件尾的操作;

  • 第2题:

    请补充main 函数,该函数的功能是:把文本文件B中的内容追加到文本文件A的内容之后。

    例如,文佃的内容为“I’m ten.”,文件A的内容为“I’ m a student!”,追加之后文件A的内容为“I’m a student !I’m ten.”

    注意:部分源程序给出如下。

    请勿改动主函数main 和其他函数中的任何内容,仅在函数main 的横线上填入所编写的若干表达式或语句。

    试题程序:

    include<stdio, h>

    include<conio. h>

    define N 80

    main()

    {

    FILE *fp, * fp1, *fp2;

    int i;

    char c[N] ,t, ch;

    clrscr ();

    if ((fp=fopen ("A. dat ", "r") ) == NULL)

    {

    printf ("file A cannot be opened\n");

    exit (0);

    }

    printf("\n A contents are : \n\n");

    for (i=0; (ch=fgetc (fp)) !=EOF; i++)

    {

    C [i]=ch;

    putchar (c [i]);

    fclose (fp);

    if((fp=fopen ("B. dat", "r") )==NULL)

    {

    printf ("file B cannot be opened\n");

    exit (0);

    }

    printf("\n\n\nB contents are : \n\n");

    for (i=0; (ch=fgetc (fp)) !=EOF; i++)

    {

    c [i] =ch;

    putchar (c [i]);

    }

    fclose (fp);

    if ( (fp1=fopen ("A.dat" ,"a"))【 】(fp2

    =fopen ("B. dat", "r") ) )

    {

    while ( (ch=fgetc (fp2)) !=EOF)

    【 】;

    }

    else

    {

    printf("Can not open A B !\n");

    }

    fclose (fp2);

    fclose (fp1);

    printf ("\n***new A contents***\n\n");

    if ( ( fp=fopen ("A. dar", "r") )==NULL)

    {

    printf ("file A cannot be opened\n");

    exit (0);

    }

    for (i=0; (ch=fgetc (fp)) !=EOF;i++)

    {

    c [i] =ch;

    putchar (c [i] );

    }

    【 】;

    }


    正确答案:&& fputc (chfp1) fclose (fp)
    && fputc (ch,fp1) fclose (fp) 解析:第一空:当两个文件都被成功打开时,才能将文件B中的内容追加到文件A中,所以应该用“与”运算符——“&&”。第三空:fputc()函数用于将一个字符写到磁盘文件上去,调用形式为:fputc (要输出的字符,文件指针);。第三空:对一个文件进行操作后,应该关闭它,以防它再被误用。调用形式为:fclose(文件指针);。

  • 第3题:

    有如下程序:include main(){ FILE*fp1;fp1=fopen("f1.txt","w");fprintf(fp1, "abc");

    有如下程序: #include <stdio.h> main() { FILE *fp1; fp1=fopen("f1.txt","w"); fprintf(fp1, "abc"); fclose(fp1); } 若文本文件f1.txt中原有内容为good,则运行以上程序后文件f1.txt中的内容为( )。

    A.goodabc

    B.abcd

    C.abc

    D.abcgood


    正确答案:C
    解析:主函数中定义了一个文件指针fp1,然后通过fopen()函数,以写的方式打开文件f1.txt,并让指针fp1指向它,接着调用fprimf()函数将abc写到文件fp1所指的文件里,由于印1指向文件f1.txt的开始位置,因此abc将把文件f1.txt里原来的内容good覆盖掉,故文件f1.txt里最后的内容为abc,所以,4个选项中选项C符合题意。

  • 第4题:

    设fp已定义,执行语句“fp=fopen("file","w");”后,以下针对文本文件file操作叙述的选项中正确的是( )。

    A.写操作结束后可以从头开始读

    B.只能写不能读

    C.可以在原有内容后追加写

    D.可以随意读和写


    正确答案:B
    考查基础知识,fp=fopen("file","w");指的是写操作之后只可以读。所以答案为B。

  • 第5题:

    以下程序的功能是从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上。请填空。

    majn()

    { FILE *fp; char ch;

    fp=fopen(______);

    ch=fgetc(fp);

    whle(!feof(fp)) { putchar(ch); ch=f8etc(fp); }

    putchar('\n'); fclose(fp);

    }


    正确答案:

  • 第6题:

    有如下程序#include <stdio.h>main(){ FILE *fp1; fp1=fopen("f1.txt","w"); fprintf(fp1,"abc"); fclose(fp1);}若文本文件f1.txt中原有内容为good,则运行以上程序后,文件f1.txt中的内容为A.goodabc B.abcd C.abc D.abcgood


    正确答案:C
    fp1=fopen("f1.txt","w")表示打开名为f1.txt 的文件,使用文件方式为向该文件写数据,如果原来不存在该文件,则在打开时新建一个以指定的名字命名的文件;如果原来已存在一个以该文件命名的文件,则在打开时将该文件删去,然后重新建立一个新文件,所以本题f1.txt中原有内容good被删去了,fopen函数带回指向fp1文件的指针并赋给fp1。fprintf(fp1,"abc")的作用是将字符串abc输出到fp1指向的文件上。故本题答案为C。

  • 第7题:

    若文件指针fp已正确指向文件,ch为字符型变量,以下不能把字符输出到文件中的语句是( )。

    A.fget(f0,ch);

    B.foutc(ch,fo);

    C.fprinff(fp,”%c”,ch);

    D.fwrite(&ch,sizeof(ch),1,fp);


    正确答案:A
    函数fgete()从文件读入一个字符到指定变量。函数fputc()将指定字符写入审文件中,函数fprinff(),fwrite()均是写入文件操作函数。因此选项B,c。D错误。答案为A选项。

  • 第8题:

    设文件指针fp已定义,执行语句后,以下针对文本文件file操作叙述的选项中正确的是 ( )。

    A.只能写不能读

    B.写操作结束后可以从头开始读

    C.可以在原有内容后追加写

    D.可以随意读和写


    正确答案:A
    “w”表示只写,并且从头开始写,所以答案选择A)。

  • 第9题:

    有如下程序: include main ( ){FILE* fpl;fp1 = fopen("ftxt" ,"w");fpfinff( fp1 ,"

    有如下程序: #include <stdio.h> main ( ) { FILE* fpl; fp1 = fopen("ftxt" ,"w"); fpfinff( fp1 ," abc" ); fclose ( fp1 ); 若文本文件f1.txt中原有内容为:good,则运行以上程序后文件f1.txt中的内容为( )。

    A.goodabc

    B.abcd

    C.abc

    D.abegood


    正确答案:C
    解析:执行语句fp1=fopen("f1.txt","w");以“只写”方式打开了一个名为f1.txt的文件,执行语句fPrintf(fp1,"abc",);向该文件写数据时,如果文件f1.txt不存在,则新建一个f1.txt文件;如果f1.txt已存在,则在打开该文件时重写文件内容。所以执行fprintf(fp1,"abc");时,f1.txt中原有内容good被删除,而字符中”abc”被输出到fpl指向的文件f1.txt中。

  • 第10题:

    (40)设fp已定义,执行语句fp=fopen("file","w");后,以下针对文本文件file操作叙述的选项中正确的是

    A)写操作结束后可以从头开始读

    B)只能写不能读

    C)可以在原有内容后追加写

    D)可以随意读和写


    正确答案:B

  • 第11题:

    若需要打开一个已经存在的非空文件“file”并进行修改,则正确的打开语句是()。

    • A、fp=fopen(“file”,“r”);
    • B、fp=fopen(“file”,“ab+”);
    • C、fp=fopen(“file”,“w+”);
    • D、fp=fopen(“file”,“r+”);

    正确答案:D

  • 第12题:

    判断题
    文本文件是可以迭代的,可以使用for line in fp类似的语句遍历文件对象fp中的每一行。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第13题:

    以下叙述中错误的是( )。A.C语言中对二进制文件的访问速度比文本文件快B.C语言中,随机文件以二进制代码形式存储数据C.语句FILE fp;定义了一个名为fp的文件指针D.C语言中的文本文件以ASCII码形式存储数据


    正确答案:C
    C选项中不是定义了一个文件指针,如果是文件指针的话,应该是FILE *fp;所以C选项错误

  • 第14题:

    以下程序的作用是:从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上。请填空。

    include <stdio.h>

    main()

    {FILE *fp; char ch;

    fp=fopen(【 】);

    ch=fgetc(fp);

    while(!feof(fp)) { putchar(ch); ch=fgetc(fp); }

    putchar('\n');fclose(fp);

    }


    正确答案:“filea.dat”“r”
    “filea.dat”,“r” 解析:fopen函数的调用方式通常为 fopen(文件名,使用文件方式)。本题中要求程序可以打开filea.dat文件,并且是要读取文件中的内容,所以空白处应当填入 "filea.dat","r"。

  • 第15题:

    有如下程序

    #include〈stdio.h〉

    main()

    {FILE *fp1;

    fp1=fopen("f1.txt","w");

    fprintf(fp1,"abc");

    fclose(fp1);

    }

    若文本文件f1.txt中原有内容为:good,则运行以上程序后文件f1.txt中的内容为

    A.goodabc

    B.abcd

    C.abc

    D.abcgood


    正确答案:A
    解析:本题中对文件fl.txt打开,进行写操作,此文件原有内容被覆盖。

  • 第16题:

    下列程序从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上。请填空。 include mai

    下列程序从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上。请填空。

    include <stdio.h>

    main()

    { FILE *fp; char ch;

    fp = fopen(【 】);

    ch = fgetc(fp);

    while(!feof(fp)) { putchar(ch); ch=fgetc(fp); }

    putchar("\n"); fclose(fp);

    }


    正确答案:filea.dat"r"
    filea.dat,"r" 解析:本目要求从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上,首先打开filea.dat文件再读取字符,所以空白处应为以读的方式打开文件,所以其内容应该为"filea.dat","r"。

  • 第17题:

    打开一个已经存在的非空文本文件,若文件名为stu,则正确的打开语句为( )

    A.FILE*fp; fp=fopen("stu.txt","r")

    B.FILE * fp; fp=fopen(stu.txt,r)

    C.FILE *fp; fP=fopen("stu,txt","wb")

    D.FILE *fp; fp=fopen("stu.txt",wb)


    正确答案:A

  • 第18题:

    设文件指针fp已定义,执行语句fp=fopen(”61e”,”W”);后,以下针对文本文件file操作叙述的选项中正确的是( )。

    A.只能写不能读

    B.写操作结束后可以从头开始读

    C.可以在原有内容后追加写

    D.可以随意读和写


    正确答案:A
    考查文件操作函数fopen的基础知识,以”W”方式打开文件,只能写不能读。选项A正确。

  • 第19题:

    如果需要打开一个已经存在的非空文件“FILE”并进行修改,正确的语句是( )。

    A.fp=fopen("FILE","r");

    B.fp=fopen("FILE","a+");

    C.fp=fopen("FILE","w+");

    D.fp=fopen("FILE","r+");


    正确答案:D
    解析:本题考查打开文件函数fopen(),打开文件函数fopen()的调用形式为:fp=fopen(文件名,文件使用方式)。“文件使用方式”说明:方式“r”为以输入方式打开一个文本文件;方式“a+”为以读/写方式打开一个文本文件,保留文件中原有的数据;方式“w+”为以读/写方式建立一个新的文本文件:方式“r+”为以读/写方式打开一个文本文件。

  • 第20题:

    有如下程序:include<stdio.h>main{ FILE*fp1;fp1=fopen("f1.txt","w"

    有如下程序:

    #include<stdio.h>

    main

    { FILE*fp1;

    fp1=fopen("f1.txt","w");

    fprintf(fp1,"abe");

    fclose(fp1);

    }

    若文本文件f1.txt中原有内容为:good。则运行以上程序后文件f1.txt中的内容为( )。

    A.goodabc

    B.bcd

    C.abc

    D.abcgood


    正确答案:C
    当用“w”打开时,已存在一个以该文件名命名的文件,则在打开时将该文件删除,再重新建立一个新文件,因此当输入时原来的内容已被覆盖,所以只有后输入的内容,故选择C选项。

  • 第21题:

    能正确定义一个用来指向打开文件的文件型指针变量fp的语句是( )

    A.file fp;

    B.file *fp;

    C.FILE fp;

    D.FILE *fp;


    正确答案:D
    "file”是在头函数“stdio.h"冲定义的文件结构型的用户自定义数据类型符,这个用户自定义的数据类型符是大写字母组成的,所以备选答案A山是错误的。文件型指针变量在定义时,变量名的前面必须有“*”,所以备选答案C也是错误的,本题应选答案D。

  • 第22题:

    下列叙述中错误的是( )

    A)在C语言中,对二进制文件的访问速度比文本文件快

    B)在C语言中,随机文件以二进制代码形式存储数据

    C)语句FILE fp;定义了一个名为fp的文件指针

    D)C语言中的文本文件以ASCII码形式存储数据


    正确答案:C

  • 第23题:

    单选题
    设文件指针fp已定义,执行语句fp=fopen(file,w);后,以下针对文本文件file操作叙述的选项中正确的是(  )。
    A

    写操作结束后可以从头开始读

    B

    只能写不能读

    C

    可以在原有内容后追加写

    D

    可以随意读和写


    正确答案: B
    解析:
    用“w”方式打开的文件只能用于向该文件写数据,而不能用于向计算机输入。如果指定的文件不存在,系统将用在fopen调用中指定的文件名建立一个新文件;如果指定的文件已存在,则将从文件的起始位置开始写,文件中原有的内容将全部消失。答案选择B选项。