首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
程序通过定义学牛结构体变量,存储学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun的功能是:从文件中找出指定学号的学牛数据,读入此学生数据,对该学生的分数进行修改,使每门课的分数加3分,修改后重写文件中
程序通过定义学牛结构体变量,存储学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun的功能是:从文件中找出指定学号的学牛数据,读入此学生数据,对该学生的分数进行修改,使每门课的分数加3分,修改后重写文件中
admin
2015-11-24
66
问题
程序通过定义学牛结构体变量,存储学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到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://kaotiyun.com/show/BkID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
关于黄淮海平原的叙述,正确的是()。
李某系A市建设银行某储蓄所记账员。2002年3月20日下午下班时,李某发现本所出纳员陈某将2万元营业款遗忘在办公桌抽屉内(未锁)。当日下班后,李某趁所内无人之机,返回所内将该2万元取出,用报纸包好后藏到自己办公桌下面的垃圾箱中,并用纸箱遮住垃圾袋。次日上午
张某系某市人民政府办公室工作人员,在2014年年度考核中被定为不称职,张某对该考核结果不服,他可以采取的救济措施是()。
下列属于孔子思想观点的是()。①提出“仁”的学说,主张统治者爱惜民力②具有辩证观点,认为对立双方会互相转化③提出“礼”治,要求人们严格遵守等级秩序④主张社会回到“小国寡民”的原始状态
从A地到B地分为上坡、平路、下坡,三段路程长之比依次是1:2:3,某人走各段路程所用时间之比依次是4:5:6,已知他上坡时速度为每小时30千米,路程全长是360千米,则往返一次用多少小时?
美国总统奥巴马2015年7月1日在白宫玫瑰园宣布美国与古巴正式重新建立外交关系,在此之前,外界对古巴的了解只有古巴糖、雪茄、朗姆酒、切.格瓦拉和卡斯特罗。闻名于世的古巴朗姆酒的主要酿造原料来自于()。
在付费知识的市场宣传重点中,最吸引人的莫过于能有效地利用碎片时间,如在等公共汽车、跑步时进行学习和提升自我,进而有效管理时间。这种碎片化学习的方式虽然看似很灵活,并可以提高时间利用率,但科学研究表明,它不能真正地让你吸收学到的知识,不符合大脑吸收知识的运行
在我国,诉讼程序法包括()。
for(intx=0,y=0;!x&&y<=5;y++)语句执行循环的次数是()。
在一棵二叉树的先序遍历、中序遍历、后序遍历所产生的序列中,所有叶子结点的先后顺序()。
随机试题
在学习民歌的基础上,创造并发展了“楚辞”这一新的诗歌样式的诗人是屈原。()
组织液的生成主要取决于
女,64岁,患慢性支气管炎、肺气肿20余年,加重1周入院。动脉血气分析示:pH7.31,PaO253mmHg,PaCO267mmHg,HCO3—22mmol/L。目前其酸碱失衡类型最可能的是
关于拱式结构,说法错误的是()。
年利率10%,一年复利一次,10年后的1000元其复利现值是( )元。
某公司于2014年5月6日在外国就某果树新品种提出品种权申请并被受理,并于2014年10月20日就同一品种在中国提出品种权申请,要求享有优先权并及时提交了相关文件。我国审批机关于2015年10月30日授予其品种权。根据植物新品种保护条例及相关规定,下列关于
时代要求教师教育学生不是灌输知识,而是培养能力。教育质量的关键措施是指尽快把目前的应试教育转变为素质教育。以下各项都可能是上述论述所假设的,除了()。
物权法所称的物权是指权利人依法对特定的物享有直接支配和排他的权利,因此物权是一种()。
下列不是三次文献的特点的是()
______,theprofessorisstilltryingtolearnanewlanguage.
最新回复
(
0
)