首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun()的功能是重写
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun()的功能是重写
admin
2023-02-27
35
问题
使用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全国计算机二级
相关试题推荐
若n是一个大于100的正整数,则n3-n一定有约数()。
从100人中调查对A、B两种2008年北京奥运会吉祥物的设计方案的意见,结果选A方案的人数是全体接受调查人数的3/5;选B方案的比选A方案的多6人,对两个方案都不喜欢的人数比对两个方案都喜欢的人数的1/3多2人,则两个方案都不喜欢的人数是()。
用数字0,1,2,3,4,5组成没有重复数字的四位数,十位数字比个位数字大的有()。
设平面内有n条直线(n≥3),其中有且仅有两条直线互相平行,任意三条直线不过同一点,若用f(n)表示这n条直线交点的个数,则f(4)=();当n>4时,f(n)=()。
某校从8名教师中选派4名教师同时去4个边远地区支教(每地1人),其中甲和乙不同去,甲和丙只能同去或同不去,则不同的选派方案共有()。
在Rt△ABC中,∠C=90°,AC=BC=2,分别以A、B、C为圆心,以AC为半径画弧,三条弧与边AB所围成的阴影部分的面积是()。
从0,1,2,3,4,5中任取3个数字,组成没有重复数字的三位数,其中能被5整除的三位数共有()。
结合材料回答问题:华为从容的背后,有我们时代的整体加持华为遭遇美国极限施压之际,任正非接受媒体采访的内容刷屏。中国企业与中国企业家的自信、大气与从容,呈现于谈笑风生之间。从时代的角度审视,我
习近平总书记强调:“尽管我们所处的时代同马克思所处的时代相比发生了巨大而深刻的变化,但从世界社会主义500年的大视野来看,我们依然处在马克思主义所指明的历史时代。这是我们对马克思主义保持坚定信心、对社会主义保持必胜信念的科学根据。”下列关于社会主义必然胜利
求下列函数的导函数
随机试题
肾外髓部组织液高渗的形成是由于
患者,女性,20岁,发热1周伴食欲减退、软弱。体检:T39.6℃,脉搏74次/分,肝肋下2.0cm.,脾肋下1.0cm,WBC2.6×109/L;N:0.85,L:0.14,嗜酸性粒细胞0.01,临床上拟诊为伤寒。为确定诊断对该患者应首选(
系指药材提取物与药材细粉混匀制成的片剂( )。系指全部药材粉碎成细粉,加赋形剂制成的片剂( )。
张某2002年通过抵押贷款在A城市购买了一套单价28005元/m2、面积120m2的住宅,首付款比例30%,贷款期限20年,年贷款利率6%,采取月等额本息还款方式。另据统计部门提供的数据,2002—2008年间A城市消费品价格指数(以2002年为100)
(2018年第96题)在住宅设计中,下列()做法跟电气安全无关。
Itisourusualpracticeto______youatsightassoonasshipmentismade.
学习准备是一个动态的发展过程,它包括纵向和横向两个维度。()
张三与李四有仇。某日,张三见李四前往公用水井打水,便抢先一步在水井中下毒,结果导致李四饮水后死亡。张三的行为已构成故意杀人罪。()
有些人非常________看广告,他们主要是想从广告里获得企业的信息、产品的信息;还有一部分人希望从广告中获得享受。既然如此,电视观众自然有权对广告________,说三道四。填入画横线部分最恰当的一项是:
HowtoWriteaTermPaperDefinitionofatermpaper—Analyzeaperspectiveorargueapoint.—Present(1)______.(1)______Ste
最新回复
(
0
)