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

2022-06-02 14:31:00   文档大全网     [ 字体:小 中 大 ] [ 阅读: ]

【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《C语言程序设计(第2版)李学刚 课堂实践答案 (45)[12页]》,欢迎阅读!
李学,程序设计,课堂,实践,答案
同步训练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 )。









A.for (i=0;i<30;i++)



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

B.for (i=0;i<30;i++)

C.fread(a,sizeof(struct std),30L,fp); D.for (i=0;i<30;i++)



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

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

A.fscanf(格式字符串,输出表列) B.fscanf(格式字符串,输出表列,fp) C.fscanf(格式字符串,文件指针,输出表列) D.fscanf(文件指针,格式字符串,输出表列) 4.fwrite函数的一般调用形式是( D )。

A.fwrite(buffer,count,size,fp)

B.fwrite(fp ,size , count, buffer)




C.fwrite(fp , count, size , buffer) A.EOF

B.1

D.fwrite(buffer, size,count, fp) C.0

D.输出的字符

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

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

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



A.fwrite( student ,sizeof(struct st),50,fp); B.fwrite( student ,50*sizeof(struct st),1,fp); C.fwrite( student ,25*sizeof(struct st),25,fp); D.for (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);

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

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

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

三、程序填空题

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

#include int main() {

FILE * fp;


本文来源:https://www.wddqxz.cn/a33962bef624ccbff121dd36a32d7375a417c66b.html

相关推荐