问题 填空题

请补充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")) 【1】 (fp2
=fopen ("B. dat", "r") ) )

while ( (ch=fgetc (fp2)) !=EOF)
【2】 ;

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] );

【3】 ;

答案

参考答案:[A] && [B] fputc (ch,fpA) [C] fclose (fp)

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

单项选择题 A1型题
单项选择题