首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
程序通过定义学牛结构体变量,存储学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun的功能是:从文件中找出指定学号的学牛数据,读入此学生数据,对该学生的分数进行修改,使每门课的分数加3分,修改后重写文件中
程序通过定义学牛结构体变量,存储学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun的功能是:从文件中找出指定学号的学牛数据,读入此学生数据,对该学生的分数进行修改,使每门课的分数加3分,修改后重写文件中
admin
2015-11-24
55
问题
程序通过定义学牛结构体变量,存储学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun的功能是:从文件中找出指定学号的学牛数据,读入此学生数据,对该学生的分数进行修改,使每门课的分数加3分,修改后重写文件中学生的数据,即用该学生的新数据覆盖原数据,其他学生数据指定不变;若找不到,则不做任何操作。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N 5
typedef struct student{
long Sno;
char name[10];
float Score[3];
}STU;
vold fun(char*filename,long sno)
( FILE*fp;
STU n;
int i;
fp=fopen(filename,“rb+”);
/**********found***********/
while(!feof(
【1】
))
(fread(&n,sizeof(STU),1,fp);
/**********found***********/
if(n.sno
【2】
sno)break;
}
if(!feof(fp))
{ for(i=0;i<3;i++)
n.8coEe
+=3;
/**********found***********/
fseek(
【3】
,一(long)sizeof
(STU),SEEK CUR);
fwrite(&n,sizeof(STU),1,fp);
}
fclose(fp),
}
main()
{ STU t[N]={{10001,“NaChao”,91,92,77},{10002,“CaoKai”,75,60,88},(10003,“LiSi”,85,70,78},{10004,“FangFang”,90,82,87},{10005,“ZhangSan”,95,80,88}},ss[N];
int i,j;
FILE*fp;
fp=fopen(“student.dat”,“wb”);
fwrite(t,sizeof(STU),N,fp);
fclose(fp);
printf(“\nThe original data:\n”),
fp=fopen(“student.dat”,“rb”);
fread(ss,sizeof(STU),N,fp);
fclose(fp),
for(j=0;j<N;j++)
{printf(“\nNo:%id Name:%一8s
Scores:”,ss[j].sno,ss[j].name);
for(i=0;i(3;i++)
printf(“%6.2f”,ss[j].
score
);
printf(“\n”);
}
fun(“student.dat”,10003);
fp=fopen(“student.dat”,“rb”);
fread(ss,sizeof(STU),N,fp);
fclose(fp),
printf(“\nThe data after modifing:\n”);
for(j=0;j<N;j++)
{printf(“\nNo:%id Name:%一8s
Scores:”,SS[j].sno,ss[j].name);
for(i=0,i<3;i++)
printf(“%6.2f”,SS[j].
score
);
printf(“\n”);
}
}
选项
答案
(1)fp (2)== (3)fp
解析
填空1:while循环语句的循环条件是判断文件是否结束,配合feof函数来完成,其一般形式为“feof(文件指针);”。
填空2:根据题日要求确定if语句条件表达式的内容,满足条件后跳出循环。
填空3:文件定位函数fseek,调用形式为“fseek(文件指针,位移量,起始点);”,此处文件指针是fp。
转载请注明原文地址:https://www.kaotiyun.com/show/BkID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
通货膨胀一般指因货币供给大于货币实际需求而引起的一段时间内物价持续而普遍上涨的现象。通货膨胀的实质是()。
8个人通过转球眼的方式分为两组踢街头足球,其中一对兄弟想要分在同一队。若分配是随机的,那么兄弟二人在同一队的概率为:
成本0.25元的纽扣1200个,如果按40%的利润定价出售,当卖出80%后,剩下的纽扣降价出售,结果获得的利润是预定的86%,剩下纽扣的出售价格是原定价的多少?
某部队组织新兵从甲地到乙地进行长途拉练。去的时候第一天走25千米,以后每天都比前一天多走5千米,结果最后一天只走25千米便到达了目的地。回程时,第一天走35千米,以后还是每天比前一天多走5千米,结果最后一天只走30千米便回到出发地。则甲乙两地相距(
根据以下资料,回答以下问题。2014年1~5月,我国软件和信息技术服务业实现软件业务收入约13254亿元,同比增长20.9%,比去年同期回落3.3个百分点。其中。软件产品完成收入4141亿元,信息系统集成服务完成收入2649.3亿元,信息技术咨询
某市交通管理局发布文件,规定对高速公路过往车辆征收过路费。丁某驾车路过被征收,认为属于乱收费,欲讨个说法。下列选项中不正确的是()。
根据下面材料回答下列小题。近年来浙江省商品交易市场呈现稳步发展态势。2009年,浙江省共有亿元以上商品交易市场670家,比上年增加31家,营业面积2298万平方米,出租摊位39万个,实现成交额9647亿元,比上年增长7.8%。从市场成交
下列叙述错误的是()。
某中学高三年级有三个班,高考前有一个免试保送升学名额,分别来自三个班的候选人的成绩如下:请选用不同的综合方法,帮助学校领导做出决策,决定保送对象,并评价其合理性。
下列叙述中,正确的是()。
随机试题
急性胰腺炎患者出现休克则表示
甲企业被法院裁定重整,重整计划被批准后,甲企业执行了一部分,不再继续执行,法院裁定终止重整计划的执行。甲企业重整前欠乙企业3万元货款及20万元的设备款,欠丙企业20万元货款,欠丁企业30万元租金。根据重整计划,乙企业放弃了3万元的货款,重整计划批准后,甲企
迅辉制药股份公司主要生产健骨消痛丸,公司法定代表人陆某指令保管员韩某采用不登记人库、销售人员打白条领取产品的方法销售,逃避缴税65万元。迅辉公司及陆某以逃税罪被起诉到法院。(2013年卷二92~94题,不定项)请回答第(1)~(3)题。如迅辉
石膏制品具有良好的抗火性,是因为()。[2009年真题]
某工业企业为增值税一般纳税人,4月5日购入原材料并验收入库,4月25日取得的增值税发票注明的开票日为4月18日,企业于5月8日到税务机关认证并通过,则该企业应在()内申报抵扣。
如果项目的全部投资均于建设起点一次投入,且建设期为零,运营期每年现金净流量相等,则计算内含报酬率所使用的年金现值系数等于该项目投资回收期期数。()(2012年),
2015年3月5日,田某、蔡某、王某、陈某投资设立A股份有限公司(以下简称A公司)。其中田某、陈某分别以现金100万元出资,蔡某以自己的一套房屋作价200万元出资,王某以其知识产权作价50万元出资。同时公司章程规定,田某、蔡某、王某、陈某按照1:1:1:1
旅游法律行为的实质要件不包括()。
建立回归模型的方法有()。
Pentium微处理器的每个突发式总线周期传送( )数据。
最新回复
(
0
)