首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun()的功能是重写
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun()的功能是重写
admin
2023-02-27
22
问题
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun()的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:部分源程序在文件blank1.c中。
不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdio.h>
2 #define N 5
3 typedef struct student {
4 long sno;
5 char name[10];
6 folat score[3];
7 } STU;
8 void fun(char *filename,STU n)
9 {FILE *fp;
10 /*********found*********/
11 fp=fopen(<u>【1】</u>),"rb+");
12 /*********found*********/
13 fseek(<u>【2】</u>,-(long)sizeof(STU),SEEK_END);
14 /*********found*********/
15 fwrite(&n,sizeof(STU),1,<u>【3】</u>);
16 fclose(fp);
17 }
18 main()
19 {STU t[N]={{10001,"MaChao",91,92,77},{10002,"CaoKai",75,60,88},
{10003,"LiSi",85,70,78},{10004,"FangFang",90,82,87},
{10005,"ZhangSan",95,80,88}};
20 STU n={10006,"ZhaoSi",55,70,68},ss[N];
21 int i,j; FILE *fp;
22 fp=fopen("student.dat","wb");
23 fwrite(t,sizeof(STU),N,fp);
24 fclose(fp);
25 fp=fopen("student.dat","rb");
26 fread(ss,sizeof(STU ),N,fp);
27 fclose(fp);
28 printf("\nThe original data:\n\n");
29 for(j=0;j<N;j++)
30 {printf("\nNo:%1d Name:%-8s Scores:",ss[j].sno,ss[j].name);
31 for(i=0;i<3;i++)
32 printf("%6.2f",ss[j].score
);
33 printf("\n");
34 }
35 fun("student.dat",n);
36 printf ("\nThe data aftermodifing:\n\n");
37 fp=fopen("stedent.dat","rb");
38 fread(ss,sizeof(STU),N,fp);
39 fclose(fp);
40 for(j=0;j<N;j++)
41 {printf("\nNo:%1d Name:%-8s Scores:"[j].sno,ss[j].name);
42 for(i=0;i<3;i++)
43 printf("%6.2f",ss[j].score
);
44 printf("\n");
45 }
46 }
选项
答案
(1)filename(2)fp(3)fp
解析
填空1:这里考查fopen()函数的使用,fp=fopen(文件名,文件打开方式);。空1处需要填写的是打开的文件名,故空1处应该填filename。
填空2:fseek()函数的功能是重定位文件位置指针。函数的调用格式为int fseek(FILE*stream,long offset,int fromwhere);,故空2处应该填fp。
填空3:fwrite()函数用来写二进制文件。调用格式为fwrite(bufter,size,cowd,fp);,故空3处应该填fp。
转载请注明原文地址:https://kaotiyun.com/show/MP0D777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在一个标准的椭圆形自行车赛道上,甲、乙两个运动员从同一地点A同时反向出发,已知甲、乙两人的骑车速度之比为,当甲、乙两人恰好在A点第一次相遇时,乙骑行了()圈。
某池塘有A,B,C三只小船,A船可乘3人,B船可乘2人,C船可乘1人,有3个成人和2个儿童分乘这些船只,为安全起见,儿童必须由成人陪同方能乘船,他们分乘这些船只的方法共有()。
安排7位工作人员从5月1日至5月7日值班,每人值班一天,其中甲、乙两人不安排在5月1日和5月2日,不同的安排方法数共有()。
以下各组数据中,众数、中位数和平均数都相等的是()。
一出租车司机从饭店到火车站途中有六个交通岗,假设司机在各交通岗遇到红灯这一事件是相互独立的,并且概率都是,那么这位司机遇到红灯前,已经通过了两个交通岗的概率是()。
函数的定义域为()。
从存放号码分别为1,2,…,10的卡片的盒子中,有放回地取100次。每次取一张卡片并记下号码,统计结果如下:则取到的号码为奇数的频率是()。
两次抛掷一枚骰子,两次出现的数字之和为奇数的概率为()。
马克思主义哲学认为,实践是人的有目的的活动,这种“有目的的活动不仅是指向自己,而且是为了通过消灭外部世界的规定(方面、特征、现象)来获得具有外部现实形式的实在性”。换言之,人在实践活动中并非仅受自然界及规律的制约,还要依据自己的目的利用客观规律去改变自然界
某软件公司根据客户需求,组织研发出一套应用软件,并与本公司的职工签订了保密协议,但是本公司某研发人员将该软件中的算法和部分程序代码公开发表。该软件研发人员____①____,该软件公司丧失了这套应用软件的___②_____。②
随机试题
张女士今年45岁,十年前丈夫因病去世,十年来张女士靠做保姆、街道清扫员、钟点工、搬运工等临时工作供三个子女读书。前年秋由于一次车祸张女士不幸失去了一条腿,住院没多长时间,张女士就因无力支付医药费出院。出院后,因为突然失去了一条腿,这巨大的生活变迁让她很不能
寒邪致病,症见肢体屈伸不利,是由于()(1998年第9题;2000年第9题)
患者,男性,42岁。胃痛反复发作20年,近2天因饮酒后出现胃脘隐痛,口渴不欲饮,大便干结难解,舌质红,苔少,脉细。方选
仲裁委员会作出仲裁裁决后,一方当事人不服仲裁裁决,向人民法院申请撤销仲裁裁决。下列说法中正确的是()。
在双代号时标网络计划中,波形线用来表示工作的( )。
下列选项中采用了脑损毁技术对白鼠进行了一系列的走迷宫实验的是()。
在我国的戏剧工作者中,只有很小的比例在全国30多个艺术家协会中任职。这说明,在我国的艺术家协会中,戏剧艺术方面缺少应有的代表性。以下哪项是对上述论证最为恰当的评价?
I’llWritebackassoonasI________yourletter.
Thecostisgoingupforjustabouteverything,andcollegetuitionisnoexception.Accordingtoanationwidesurveypublished
A、Itmeansthatonealwaysknowswhathismusclesaredoing.B、Itmeansthatoneperformssimpleactionswithoutworking.C、Itm
最新回复
(
0
)