首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。 请在程序的
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。 请在程序的
admin
2015-08-23
48
问题
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!
#include
#defitie N 5
typedef struct student{
long sno;
char name[10];
float Score[3];
}STU;
void fun(char*filename,STU n)
{FILE*fp;
/**********found**********/
fp=fopen( _____1_____ ,"rb+");
/**********found**********/
fseek(_____2_____,一(long)sizeof(STU),
SEEK END);
/**********found**********/
fwrite(&n,sizeof(STU),1, _____3_____ );
fclose(fp);
}
main()
{STU t[N]={{1000l,"Machao",91,92,77),{10002,"CaoKai",75,60,8 8),
{10003,"LiSi",85,70,78),{10004,
"FangFang",90,82,87),{1 00 0 5,
"ZhangSan",95,8 0,8 8}};
STU n={1 0 0 0 6,"7,haoSi",55,70,68},
ss[N];
int i,j;FILE*fp;
fp=fopen("Student.dat","wb");
fwrite(t,Sizeof(STU),N,fp);
fciose(fp);
fp=fopen("student.dat","rb");
fread(ss,sizeof(STU),N,fp);
fclose(fp);
printf("\nThe original data:\n\n");
for(j=0;j
{printf("\nNo:%id Name:%一8 s
Scores:",ss[j].sno,ss[j].name);
for (i=0; i<3; i++)Printf
("%6.2 f",ss[j].s core
);
printf("\n");
}
fun("student.dat",n);
printf("\nThe data after modifing:
\n\n");
fp=fopen("student.dat","rb");
fread(ss,sizeof(STU),N,fp);
fclose(fp);
for(j=0 ; j
{printf("\nNo:%ld Name:%一8 s
Scores:",ss[j].sno,ss[j].name);
for (i=0; i<3; i++)Printf
("%6.2 f",ss[j].score
);
printf("\n");
}
}
选项
答案
(1)filename (2)fp (3)fp
解析
第一空:“fp=fopen(_____1 _____"rb+");”补充fopen的参数,fopen的调用形式是:fp=fopen(文件名,文件使用方式),因此第一空处应填文件名“filename”。
第二空:此处是补充fseek函数的参数,fseek的调用形式是:fseek(fp,offset,position],其中第一个参数是文件型指针,故第二空处应填文件型指针变量“fp”。
第三空:fwrite的调用形式是(bu*ffer,size,count,fp),最后一个参数是文件型指针,故第三空处应填“fp”,将新的学生数据写在最后一个学生数据位置。
转载请注明原文地址:https://kaotiyun.com/show/GHDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是()。#include<stdio.h>intb=2;intfune(int*a){b+=*a;returnb;}main(){inta=1,t=2;t+=func
已知i、j、k为int型变量,若要从键盘输入2、3、4<CR>,使I、j、k的值分别为2、3、4,
若w、x、y、z、m均为int型变量,则执行下列的语句后m的值是()。w=2,x=3,y=4,z=5;m=(w<x)?w:x;m=(m<z)?m:z;m=(m<y)?m:y;
C语言结构体类型变量在程序执行期间()。
按照“先进后出”原则组织数据的数据结构是()。
以下程序运行后的输出结果是【】。#include<string.h>cbar*ss(char*s){char*p,t;p=s+1;t=*s;while(-p){*(p-1)=*p;p
已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33<回车>,则输出结果是【】。#includemain(){chara,b;
有以下程序:#include<string.h>main(){charstr[][20]={"Hello","Beijing"},*p=str;printf("%d\n",strlen(p+20)
为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为
用筛选法可得到2~n(n
随机试题
阴茎癌多为( )肾盂癌为( )
根据《合同法》,应当先履行债务的当事人,有确切证据证明对方()的,可以终止履行债务。
一般井筒施工中,含主井改装的提升运输形式存在三个阶段,其顺序合理的是()。
背景某机场施工单位中标一个机场工程项目,合同要求工程开工前一周内,施工单位应将各专业质量控制点明细表上报业主。为此,施工单位质检部门对如何编制该机场工程建设项目的质量控制点明细表进行了研讨,结论是:(1)尽管施工单位企业内部质量控制点样本的编制依据中工
在中国境内设立的外商投资企业,会计记录文字应当符合的规定是()。
按国有资产评估报告制度规定,资产评估明细表样表包括()。
简述体育教学方法的选择依据。
不属于行政诉讼的法定证据的是()。
若两台服务器系统可用性分别达到99.999%和99.9%,那么两台服务器每年的停机时间必须小于等于()。
WhenMomandDadGrowOldTheprospectoftalkingtoincreasinglyfragileparentsabouttheirfuturecanbe"oneofthemost
最新回复
(
0
)