有以下程序#include main() {FILE *fp; int k,n,a[6]={1,2,3,4,5,6}; fp=fopen(“d2.dat”,”w”); fprintf(fp,”%d%d\n”,a[0],a[1],a[2]); fprintf(fp, “%d%d%d \n”,a[3],a[4],a[5]); fclose(fp); fp=fopen(“d2.dat”,”r”); fscanf(fp, “%d%d”,&k,&n); printf(“%d%d\n”,k,n); fclose(fp

题目

有以下程序

#include main() {FILE *fp; int k,n,a[6]={1,2,3,4,5,6}; fp=fopen(“d2.dat”,”w”); fprintf(fp,”%d%d\n”,a[0],a[1],a[2]); fprintf(fp, “%d%d%d \n”,a[3],a[4],a[5]); fclose(fp); fp=fopen(“d2.dat”,”r”); fscanf(fp, “%d%d”,&k,&n); printf(“%d%d\n”,k,n); fclose(fp); } 程序运行后的输出结果是( )。

A.1 2

B.1 4

C.123 4

D.123 456


相似考题
更多“有以下程序 #includemain(){FILE*fp;intk,n,a[6]={1,2,3,4,5,6};fp=fopen(“d2.dat”,”w”) ”相关问题
  • 第1题:

    有以下程序: #include<stdiO.h> main( ) { FILE*fp; int k,n,i,a[6]={1,2,3,4,5,6}; fp=fopen("d2.dat","w"); for(i=0;i<6;i++) fprintf(fp,"%d\n",a[i]); fclose(fp); fp(i=0;i<3;i++) fscanf(fp,"%d%d",&k,&n); fclose(fp); printf("%d\n,%d\n,k,n); } 程序运行后的输出结果是( )。

    A.1, 2

    B.3,4

    C.5,6

    D.123,456


    正确答案:C
    此题是考查fprintf和fscanf,其中fprintf是向文件输出,文件为da2.dat文件,fscanf是向文件输入,所以根据程序循环写入和写出.可知答案为C。

  • 第2题:

    有以下程序

    #include<stdio.h>

    main()

    {FILE *fp;int k,n,a[6]={1,2,3,4,5,6};

    fp=fopen("d2.dat","w");

    fprintf(fp,"%d%d%d\n",a[0],a[1],a[2]);

    fprintf(fp,"%d%d%d\n",a[3],a[4],a[5]);

    fclose(fp);

    fp=fopen("d2.dat","r");

    fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);

    fclose(fp);

    }

    程序运行后的输出结果是

    A.1 2

    B.1 4

    C.123 4

    D.123 456


    正确答案:D
    解析:将有6个元素的整型数组分两行输出到一个文件中,因为输出的都是数字并且每行都没有分隔符,所以当再对其进行读取操作时,每一行都会被认为是一个完整的数,而换行符则作为它们的分隔符。

  • 第3题:

    试题40

    有以下程序

    #include <stdio.h>

    main()

    {FILE *fp;

    int k, n, i, a[6]={1,2,3,4,5,6};

    fp=fopen(“d2.dat”, “w”);

    for(i=0; i<6; i++) fprintf(fp, “%d\n“,a[i]);

    fclose(fp);

    for(i=0; i<3; i++) fscanf(fp, “%d%d”, &k,&n);

    fclose(fp);

    printf(“%d,%d\n”, k, n);

    }

    程序运行后的输出结果是()

    A.1,2

    B.3,4

    C.5,6

    D.123,456


    正确答案:C
    试题40分析
    for(i=0; i<6; i++)   fprintf(fp, “%d\n“,a[i]);将123456输出到d2.dat文件中;
    for(i=0; i<3; i++)   fscanf(fp, “%d%d”, &k,&n);将12,34,56分三次赋给k和n,其值为最后一次的赋值。即5,6。
    试题40答案
    C

  • 第4题:

    有以下程序

    #include<stdio.h>

    main()

    { FILE,*fp;

    int k,n,i,a[6]={1,2,3,4,5,6};

    fp=fopen("d2.dat","W");

    for(i=0;i<6;i++) fprintf(fp,"%d\n",a[i]);

    fclose(fp);

    fp=fopen("d2.dat","r");

    for(i=0;i<3;i++) fscanf(fp,"%d%d",&k,&n);

    fclose(fp);

    printf("%d,%d\n",k,n);

    }

    程序运行后的输出结果是

    A.1,2

    B.3,4

    C.5,6

    D.123,456


    正确答案:C
    解析:考察文件的相关操作,本题中,依次向d2.dat文件中写入数字1、2、3、4、5、6,然后关闭后打开,每次读两个数出来,循环执行完后,k为5,n为6,所以结果为5,6。

  • 第5题:

    有以下程序includemain(){FILE *fP;int k,n,a[6]={1,2,3,4,5,6}; fp=fopen ("d2.dat",

    有以下程序 #include<stdio.h> main() {FILE *fP;int k,n,a[6]={1,2,3,4,5,6}; fp=fopen ("d2.dat","w"); fprintf(fp,"%d%d%d\n",a[0],a[1],a[2]); fprintf(fp,"%d%d%d\n",a[3],a[4],a[5]); fclose (fp); fp=fopen("d2.dat","r"); fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n); fclose(fp); } 程序运行后的输出结果是。

    A.1 2

    B.1 4

    C.123 4

    D.123 456


    正确答案:D
    解析:将有6个元素的整型数组分两行输出到一个文件中,因为输出的都是数字并且每行都没有分隔符,所以当再对其进行读取操作时,每一行都会被认为是一个完整的数,而换行符则作为它们的分隔符。