C语言程序设计(第2版)李学刚 课堂实践答案 (45)[12页]

时间:2022-06-02 14:31:00 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
同步训练9-2答案

一、单项选择题

1.已知函数的调用形式:fread(buf,size,count,fp);其中buf代表的是( C

A.一个整形变量,代表要读入的数据项总数 B.一个文件指针,指向要读的文件 C.一个指针,指向要读入数据的存放地址 D.一个存储区,存放要读的数据项 2.若有以下定义和说明: #include struct std {

char num[6]; char name[8]; float mark[4];

} a[30]; FILE *fp;

设文件中以二进制形式存有10个班的学生数据,且已正确打开,文件位置指针定位于文件开头。若要从文件中读出30个学生的数据放入a数组中,以下不能实现此功能的语句是( D









Afor (i=0;i<30;i++)



fread(&a[i],sizeof(struct std),1L,fp); fread(a+i,sizeof(struct std),1L,fp);

Bfor (i=0;i<30;i++)

Cfread(a,sizeof(struct std),30L,fp); Dfor (i=0;i<30;i++)



fread(a[i],sizeof(struct std),1L,fp);

3fscanf函数的正确调用形式是( D

Afscanf(格式字符串,输出表列) Bfscanf(格式字符串,输出表列,fp Cfscanf(格式字符串,文件指针,输出表列) Dfscanf(文件指针,格式字符串,输出表列) 4fwrite函数的一般调用形式是( D

Afwrite(buffer,count,size,fp)

Bfwrite(fp ,size , count, buffer)




Cfwrite(fp , count, size , buffer) AEOF

B1

Dfwrite(buffer, size,count, fp) C0

D.输出的字符

5.若调用fputc函数成功输出字符,则其返回值是( D 6.设有以下结构体类型: struct st {

char name [8]; int num; float s[4]; } student[50];

并且结构体数组student中的元素都已有值 若要将这些元素写到硬盘文件中,以下不正确的形式是( C



Afwrite( student ,sizeof(struct st),50,fp); Bfwrite( student ,50*sizeof(struct st),1,fp); Cfwrite( student ,25*sizeof(struct st),25,fp); Dfor (i=0;i<50 ;i++)

fwrite(student+i,sizeof(struct st),1,fp);

7.阅读以下程序及对程序功能的描述,其中正确的描述是( C #include int main() {

FILE *in, *out;

char infile[10],outfile[10]; int c;

printf("Enter the infile name:\n"); scanf("%s",infile);

printf("Enter the outfile name:\n"); scanf("%s",outfile);

if (( in =fopen( infile, "r"))==NULL) { printf("cannot open infile\n");exit(0);} if ((out=fopen(outfile,"w"))==NULL {printf("cannot open outfile\n");exit(0);} while ((ch=fgetc(in))!=EOF) fputc(ch,out); fclose(in);


fclose(out); }





A.程序完成将磁盘文件的信息在屏幕上显示的功能 B.程序完成将两个磁盘文件合二为一的功能 C.程序完成将一个磁盘文件复制到另一个磁盘文件中 D.程序完成将两个磁盘文件合并且在屏幕上输出 二、知识填空题

1.函数调用语句:fgets(buf,n,fp);从fp指向的文件中读入 n-1 个字符放buf字符数组中,函数返回值为 buf的首地址

2.设有以下结构体类型: struct st {

char name[8]; int num; float s[4];

}student[50];

并且结构数组student中的元素都已有值,若要将这些元素写到硬盘fp文件中,请将以下fwrite语句补充完整:

fwrite(student, 50*sizeof(st) ,1,fp);

3feof(fp)函数用来判断文件是否结束,如果遇到文件结束,函数值为 1 否则为 0

4.用fopen(文件名,使用方式)打开文件,当使用方式为“r”时,只 读入 数据,不能进行 操作;当使用方式为w时,只能 写入 据,不能进行 数据操作。

5当调用函数fread从磁盘文件中读数据时,若函数返回值为10则表明 入了10个字符 ;若函数的返回值为0,则是 遇到了文件结束符 ;若函数返回值为-1,则意味着 读文件出错

三、程序填空题

1.以下程序由终端输入一个文件名,然后把从终端键盘输入的字符依次存放到该文件中,用#作为结束输入的标志。请填空。

#include int main() {

FILE * fp;


本文来源:https://www.wddqw.com/doc/a33962bef624ccbff121dd36a32d7375a417c66b.html