首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含 一个源程序文件blank1.c。程序的功能是调用fun函数建立班级通信录。通信录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含 一个源程序文件blank1.c。程序的功能是调用fun函数建立班级通信录。通信录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数
admin
2020-06-02
73
问题
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含
一个源程序文件blank1.c。程序的功能是调用fun函数建立班级通信录。通信录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。
请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<stdlib.h>
#define N 5
typedef struct
{ int num;
char name[10];
char tel[10];
)STYPE;
void theck();
/*********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);
reeturn(1);
}
main()
{ STYPE s[10]={ {1,"aaaaa", "1111 11"}, { 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/GqCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
对于一个正常运行的C程序,以下叙述中正确的是()。
计算机能直接执行的程序是()。
若要求从键盘读入含有空格字符的字符串,应使用函数()。
若有定义语句:chars[10]="1234567\0\0";,则strlen(s)的值是()。
下列条件语句中,输出结果与其他语句不同的是()。
有以下程序:#include<stdio.h>intfun(intx){intp;if(x==0||x==1)return(3);p=x-fun(x-2);returnp;}main(){printf("%d\n",fun(
设有如下函数定义:#include<stdio.h>intfun(intk){if(k<1)return0;elseif(k==1)return1;elsereturnfun(k-1)+1;}若执行调用语句n=fun(3);,则函数
有如下程序段:intx=12;doubley=3.141593;printf("%d%8.6f",x,y);其输出结果是()。
若有定义intx,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++):(y++)中的条件表达式(x-y)等价的是()。
随机试题
在Excel2010中,当前已打开一个文件,若想打开另一个文件,则下列说法正确的是_________。
某医院血液透析室有一间透析治疗间,配有透析机4台,护理人员2人,透析操作用品车一个,透析治疗的患者中有乙型肝炎和丙型肝炎感染患者。乙型肝炎与丙型肝炎患者透析治疗的护理,正确的做法应该是
能体现医生特殊干涉权的是
在绩效管理过程中,非人力资源管理部门的职责有()。
若考虑通货膨胀的因素,利率分为()。
216π
【程序说明】表学生.DBF中共有100条记录,顺序执行下面命令。【程序】SETDELETEDOFFUSE学生DELETECOUNTPACKCOUNTZAPCOUNTUSE第一次COUNT的结果为______。
将C语言的整数设为整数类I,则下面属于类I实例的是()。
在类中说明的成员可以使用关键字的是()。
A锻炼B把C照相D菜单E表示父母从小就()他自己解决问题。
最新回复
(
0
)