首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。程序的功能是调用fun函数建立班级通信录。通信录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数据
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。程序的功能是调用fun函数建立班级通信录。通信录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数据
admin
2018-10-21
37
问题
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。程序的功能是调用fun函数建立班级通信录。通信录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。
请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<stdlib.h>
#define N5
typedef struct
{int num;
char name[10];
char tel[10];
}STYPE;
void check();
/*********found*********/
int fun(
【1】
*std)
{
/*********found*********/
【2】
*fp;int i;
if((fp=fopen("myfile5.dat","wb"))==NULL)
return(0);
printf("\nOutput data to file!\n");
for(i=0;i<N;i++)
/*********found*********/
fwrite(&std
,sizeof(STYPE),1,
【3】
);
fclose(fp);
return(1);
}
main()
{STYPE s[10]={{1,"aaaaa","111111"},{1,”"bbbbb","222222"},{1,"ccccc","333333"},{1,"ddddd","444444"},{1,"eeeee",
"555555")};
int k;
k=fun(s);
if(k==1)
{printf("Succeed!");check();}
else
printf("Fail!");
}
void check()
{FILE*fp;int i;
STYPE s[10];
if((fp=fopen("myfile5.dat","rb"))==NULL)
{printf("Fail!\n");exit(0);}
printf("\nRead file and output to screen:\n");
printf("\n num name tel\n");
for(i=0;i<N;i++)
{fread(&s
,sizeof
(STYPE),1,fp);
printf("%6d%s%s\n",
s
.num,s
.name,s
.tel);
}
fclose(fp);
}
选项
答案
(1)STYPE (2)FILE (3)fp
解析
填空1:根据主函数中的调用函数可知,函数的形参应为结构体类型,因此填入STYPE。
填空2:fp是指向文件类型的指针变量,因此填入FILE。
填空3:函数fwrite调用的一般形式为“fwrite(buffer,size,count,fp);”。
buffer:是一个指针变量,在fread函数中它存放输入数据的首地址,在fwrite函数中,它存放输出数据的首地址。
size:表示数据块的字节数。
count:表示要读写的数据块数。
fp:表示文件指针。
转载请注明原文地址:https://kaotiyun.com/show/h0xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下函数值的类型是()。fun(floatx){floaty;y=3*x-4;returny;}
执行下面的程序后,a的值为()。main(){inta,b;for(a=1,b=1,a<=10;a++){if(b%3==1){b+=3;continue;
设函数fun的定义形式为:voidfun(charch,floatx){}则以下对函数fun的调用语句中,正确的是______。
关系数据库的概念模型是______的集合。
下列程序的功能是:求出ss所指字符串中指定字符的个数,并返回此值。例如,若输入字符串123412132,输入字符1,则输出3,请填空。#include<conio.h>#include<stdio.h>#defineM81
设有如下变量定义:doublea=3.500000;floatb=2.5;intm=2,n=3;则表达式“(float)(m+n)/2+(int)a%(int)b”的值是()。
有如下程序段inta=14,b=15,x;charc=’A’;x=(a&&b)&&(c<’B’);执行该程序段后,x的值为_____。
在C语言中引用数组元素时,其数组下标的数据类型只能是()。
以下程序的功能是:输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。main()(inti,j;for(i=0;i<i0;i++){j=i*10+6;if(())continue;
随机试题
关于劳动仲裁的仲裁机构,下列表述不当的是【】
甲、乙二人在打猎过程中,在同一时间、同一地点朝同一方向开枪,导致丙中弹身亡。现查明:丙所中子弹确系甲、乙二人所带猎枪射出,但无法证实该子弹系由谁射出。造成丙死亡的损失应由()
最宜使用洋地黄类药物治疗的是
下列关于国际货物运输的说法中正确的是()。
关于隧道超前地质预报中地质雷达法的相关描述,表述正确的有()。
在输入记账凭证的过程中,会计核算软件必须提供()提示功能。
国内的商业银行一般通过董事会来明确风险偏好的制定、实施、监控、调整等环节的政策、流程。()
由1—9组成一个3位数,肯定有数字重复的组合有多少种?()
一、注意事项 1.申论考试,与传统作文考试不同,是对分析驾驭材料的能力与对表达能力并重的考试。 2.作答参考时限:阅读资料40分钟,作答110分钟。 3.仔细阅读给定的资料,按照后面提出的“申论要求”依次作答。二、给定资料 (1)2
如果人体缺碘,就会发生甲状腺肿大,俗称“大脖子病”。过去我国缺碘人口达7亿多,从1994年起我国实行食盐加碘政策。推行加碘盐十多年后,大脖子病的发病率直线下降,但在部分地区,甲亢、甲状腺炎等甲状腺疾病却明显增多。有人认为,食盐加碘是导致国内部分地区甲状腺病
最新回复
(
0
)