试题查看

首页 > 计算机二级考试 > 试题查看
【填空题】

程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到stuDEnt.DAt文件中。函数Fun的功能是从指定文件中找出指定学号的学生数据,读入此学生数据,对该生的分数进行修改,使每门课的分数加3分,修改后重写文件中该学生的数据,即用该学生的新数据覆盖原数据,其他学生数据不变;若找不到,则什么都不做。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
#inCluDE&nBsp; <stDio.h>
#DEFinE&nBsp;&nBsp;&nBsp; n&nBsp;&nBsp;&nBsp; 5
typEDEF struCt stuDEnt
{long sno;
&nBsp;ChAr nAmE[10];
&nBsp;FloAt sCorE[3];
}stu;
voiD Fun(ChAr *FilEnAmE, long sno)
{
&nBsp; FilE *Fp;
&nBsp; stu n;&nBsp; int i;
&nBsp; Fp=FopEn(FilEnAmE,"rB+");
/**********FounD**********/
&nBsp; whilE(!___1___)
&nBsp; {
&nBsp;&nBsp;&nBsp; FrEAD(&Amp;n,sizEoF(stu),1,Fp);
/**********FounD**********/
&nBsp;&nBsp;&nBsp; iF(n.sno___2___)&nBsp; BrEAk;
&nBsp; }
&nBsp; iF(!FEoF(Fp))
&nBsp; {
&nBsp;&nBsp;&nBsp; For(i=0;i<3;i++)&nBsp; n.sCorE[i]+=3;
/**********FounD**********/
&nBsp;&nBsp;&nBsp; FsEEk(Fp,1l*___3___,sEEk_Cur);
&nBsp;&nBsp;&nBsp; FwritE(&Amp;n, sizEoF(stu), 1, Fp);
&nBsp; }
&nBsp; FClosE(Fp);
}
mAin()
{
&nBsp; 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}},ss[n];
&nBsp; int i,j;&nBsp; FilE *Fp;
&nBsp; Fp=FopEn("stuDEnt.DAt","wB");
&nBsp; FwritE(t, sizEoF(stu), n, Fp);
&nBsp; FClosE(Fp);
&nBsp; printF("\nthE originAl DAtA :\n");
&nBsp; Fp=FopEn("stuDEnt.DAt","rB");
&nBsp; FrEAD(ss, sizEoF(stu), n, Fp);
&nBsp; FClosE(Fp);
&nBsp; For(j=0; j<n; j++)
&nBsp; {
&nBsp;&nBsp;&nBsp; printF("\nno:%lD&nBsp; nAmE:%-8ssCorEs: ",
&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; ss[j].sno,ss[j].nAmE);
&nBsp;&nBsp;&nBsp; For(i=0;i<3;i++)
&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; printF("%6.2F ",ss[j].sCorE[i]);
&nBsp;&nBsp;&nBsp; printF("\n");
&nBsp; }
&nBsp; Fun("stuDEnt.DAt",10003);
&nBsp; Fp=FopEn("stuDEnt.DAt","rB");
&nBsp; FrEAD(ss,sizEoF(stu),n,Fp);
&nBsp; FClosE(Fp);
&nBsp; printF("\nthE DAtA AFtErmoDiFying :\n");
&nBsp; For(j=0;j<n;j++)
&nBsp; {
&nBsp;&nBsp;&nBsp; printF("\nno:%lD&nBsp; nAmE: %-8s sCorEs:",
&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; ss[j].sno,ss[j].nAmE);
&nBsp;&nBsp;&nBsp; For(i=0;i<3;i++)
&nBsp;&nBsp;&nBsp;&nBsp;&nBsp; printF("%6.2F",ss[j].sCorE[i]);
&nBsp;&nBsp;&nBsp; printF("\n");
&nBsp; }
} &nBsp;

查看答案解析

参考答案:

正在加载...

答案解析

正在加载...

根据网考网移动考试中心的统计,该试题:

0%的考友选择了A选项

0%的考友选择了B选项

0%的考友选择了C选项

0%的考友选择了D选项

你可能感兴趣的试题

规定输入字符串中只包含字母和*号。请编写函数fun,它的功能是:将函数字符串中的假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:使字符串的前导请编写函数fun,其功能使:计算并输出给定数组(长度为9)中每相邻两个元素之平均请编写函数fun,它的功能是:计算并输出n(包括n)以内能被5或9整除的所有自然请编写函数fun,其功能是:计算并输出3到n之间所有素数的平方根之和。在主函数中从键盘输入若干个数放入数组a中,用0结束输入但不计入数组。下列给定程序