首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指
程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指
admin
2018-03-28
59
问题
程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#define N 5
typedef struct student{
long sno;
char name[10];
float score[3];
}STU;
void fun(char*filename)
{FILE*fp;int i,j;
STU s[N],t;
/*********found*********/
fp=fopen(filename,
【1】
);
fread(s,sizeof(STU),N,fp);
fclose(fp);
for(i=0;i<N一1;i++)
for(j=i+1;j<N;j++)
/*********found*********/
if(s
.sno
【2】
s[j].sno)
{t=s
;s
=s[j];
s[j]=t;)
fp=fopen(filename,"wb");
/*********found*********/
【3】
(s,sizeof(STU),N,fp);
fclose(fp);
}
main()
{STU t[N]={{10005,"ZhangSan",
95,80,88),{10003,"LiSi",85,70,
78),{10002,"CaoKai",75,60,88),
{10 00 4,"FangFang",90,82,8 7),
{10001,"MaChao",91,92,7 7}},
ss[N];
int i,j;FILE*fp;
fp=fopen("student.dat","wb");
fwrite(t,sizeof(STU),5,fp);
fclose(fp);
printf f"\n\nThe original data
:\n\n");
for(j=0;j<N;j++)
{printf("\nNo:%id Name:%一8s
Scores."t[j].sno,t[j].name);
for(i=0;i<3;i++)
printf ("% 6,2f", t[j].
score
) ;
printf "\n") ;
}
fun ("student.dat") :
printf ("\ n \ nThe data after
sorting :\n\n");
fp = fopen("student.dat", "rb");
fread (ss, sizeof (STU),5, fp) ;
fclose (fp) ;
{ printf ("\nNo: %ld Name: % -8s
Scores: ",ss[j] .sno, ss[j] .name);
printf ("00 6.2f ", ss [j].
score
);
printf ("\n") ;
}
}
选项
答案
(1)"rb" (2)> (3)fwrite
解析
填空1:题目中要求从形参filename所指的文件中读入学生的数据,以此可以看出本空应该填写”rb”。
填空2:此处的if语句是比较学号的大小,如果学号大就和学号小的换位,以此本空填写>。
填空3:题目要求所有的学生数据均以二进制方式输出到文件中,因此本空填写fwrite。
转载请注明原文地址:https://kaotiyun.com/show/GJxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
判断字符串s1是否大于字符串s2,应该使用()。
按"先进后出"原则组织数据的数据结构是【】。
字符串“\\\”ABCDEF\“\\”的长度是()。
在软件开发过程中,软件结构设计是描述______。
若x为int类型,请写出与!x等价的C语言表达式______。
设char型变量x中的值为10100111,则表达式(2+x)∧(~3)的值是
下面程序运行后的输出结果是_____。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=s[0].a
下列程序中的函数stropy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。#include<stdi
数据的逻辑结构在计算机存储空间中的存放形式称为数据的【】。
随机试题
所谓热污染,是指现代工业生产和生活中排放的废热所造成的环境污染。热污染可以污染大气和水体。火力发电厂、核电站和钢铁厂的冷却系统排出的热水,以及石油、化工、造纸等工厂排出的生产性废水中均含有大量废热。这些废热排入地面水体之后,能使水温升高。在工业发达的美国,
剧烈运动时,少尿的主要原因是
R134a的蒸发温度和冷凝温度与R22的蒸发温度和冷凝温度较接近。()
患儿,7岁。发热轻微,鼻塞流涕,喷嚏,咳嗽,起病第2天出皮疹,疹色红润,疱浆清亮,根盘红晕,皮疹瘙痒,分布稀疏,此起彼伏,以躯干为多,舌苔薄白,脉浮数。其治法是
正常小儿1周岁时,体重约为出生体重的
根据《危险化学品安全管理条例》,该企业应当对其生产、储存装置每()进行一次安全评价。该企业新招聘从业人员甲应该接受的岗前安全培训时间不得少于()。
居民纳税义务人负有无限纳税义务,其所取得的应纳税所得,只要是来源于中国境内的,都要在中国缴纳个人所得税。()
注重学生探究态度和能力的培养的课程类型是()。
简述不当得利的构成要件。
TheonlyAmericanpresidentelectedforathirdtermis______.
最新回复
(
0
)