完整word版c语言程序设计形考任务4答案doc.docx
《完整word版c语言程序设计形考任务4答案doc.docx》由会员分享,可在线阅读,更多相关《完整word版c语言程序设计形考任务4答案doc.docx(36页珍藏版)》请在冰豆网上搜索。
完整word版c语言程序设计形考任务4答案doc
一、选择题(共30分,每小题2分)
题目1
正确
获得2.00分中的2.00分
标记题目
题干
假定有“structBOOK{chartitle[40];floatprice;};structBOOKbook;,则不正”
确的语句为()。
选择一项:
a.structBOOK*x=malloc(book);
回答正确
b.structBOOKx={"C++Programming",27.0};
c.structBOOK*x=malloc(sizeof(structBOOK));
d.structBOOK*x=&book;
反馈
Youransweriscorrect.
题目2
正确
获得2.00分中的2.00分
标记题目
题干
假定有“structBOOK{chartitle[40];floatprice;}book;,则正确的”语句为()。
选择一项:
a.structBOOKx=&book;
b.structBOOK*x=&book;
回答正确
c.structBOOKx=calloc(BOOK);
d.structBOOK*x=BOOK;
反馈
Youransweriscorrect.
题目3
正确
获得2.00分中的2.00分
标记题目
题干
在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是()。
选择一项:
a.句点
b.冒号
c.分号
回答正确
d.逗号
反馈
Youransweriscorrect.
题目4
正确
获得2.00分中的2.00分
标记题目
题干
假定一个结构类型的定义为“structA{inta,b;doublec;};,则该类”型的长度为
()。
选择一项:
a.8
b.10
c.12
d.16
反馈
Youransweriscorrect.
题目5
正确
获得2.00分中的2.00分
标记题目
题干
假定一个结构类型的定义为“structD{inta;D*next;};,则该”类型的长度为
()。
选择一项:
a.4
b.8
回答正确
c.12
d.16
反馈
Youransweriscorrect.
题目6
正确
获得2.00分中的2.00分
标记题目
题干
假定要访问一个结构指针变量x中的数据成员a,则表示方法为()。
选择一项:
a.x.a
b.x->a
回答正确
c.x(a)
d.x{a}
反馈
Youransweriscorrect.
题目7
正确
获得2.00分中的2.00分
标记题目
题干
与结构成员访问表达式x.name等价的表达式为()。
选择一项:
a.x->name
b.&x->name
c.(&x)->name
回答正确
d.(*x)->name
反馈
Youransweriscorrect.
题目8
正确
获得2.00分中的2.00分
标记题目
题干
假定一个链表中结点的结构类型为“structAA{intdata,structAA*next;};,则”
next数据成员的类型为()。
选择一项:
a.structAA
b.structAA*
c.AA
d.int
反馈
Youransweriscorrect.
题目9
正确
获得2.00分中的2.00分
标记题目
题干
假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的
表头插入一个地址为p的结点时,应执行的操作为()。
选择一项:
a.p->next=f
b.p->next=f和f=p
回答正确
c.f=p->next
d.f->next=p和f=p
反馈
Youransweriscorrect.
题目10
正确
获得2.00分中的2.00分
标记题目
题干
标准输入设备键盘的文件流标识符是()。
选择一项:
a.stdin
回答正确
b.stdout
c.stderr
d.stdio
反馈
Youransweriscorrect.
题目11
正确
获得2.00分中的2.00分
标记题目
题干
表示文件结束符的符号常量为()。
选择一项:
a.eof
b.Eof
c.EOF
回答正确
d.feof
反馈
Youransweriscorrect.
题目12
正确
获得2.00分中的2.00分
标记题目
题干
C语言中打开一个数据文件的系统函数为()。
选择一项:
a.fgetc()
b.fputc()
c.fclose()
d.fopen()
回答正确
反馈
Youransweriscorrect.
题目13
正确
获得2.00分中的2.00分
标记题目
题干
从一个数据文件中读入以换行符结束的一行字符串的系统函数为()。
选择一项:
a.gets()
b.fgets()
回答正确
c.getc()
d.fgetc()
反馈
Youransweriscorrect.
题目14
正确
获得2.00分中的2.00分
标记题目
题干
向一个二进制文件中写入信息的函数fwrite()带有的参数个数为()。
选择一项:
a.1
b.2
c.3
d.4
回答正确
反馈
Youransweriscorrect.
题目15
正确
获得2.00分中的2.00分
标记题目
题干
在C语言中,为只写操作打开一个文本文件的方式为()。
选择一项:
a."a"
b."r+"
c."r"
d."w"
回答正确
反馈
Youransweriscorrect.
标记题目
信息文本
二、判断题(共40分,每小题2分。
叙述正确则回答“是”,否则回答“否”)
题目16
正确
获得2.00分中的2.00分
标记题目
题干
在结构类型的定义中,其中的数据成员可以是本身类型的直接对象。
选择一项:
对
错
题目17
正确
获得2.00分中的2.00分
标记题目
题干
在结构类型的定义中,允许出现结构类型不完整的超前定义。
选择一项:
对
错
题目18
正确
获得2.00分中的2.00分
标记题目
题干
定义结构类型的变量时,不能够同时进行初始化。
选择一项:
对
错
题目19
正确
获得2.00分中的2.00分
标记题目
题干
使用一个结构类型时,必须一起使用关键字struct和类型标识符。
选择一项:
对
错
题目20
正确
获得2.00分中的2.00分
标记题目
题干
假定一个结构类型的定义为“structA{inta,b;A*c;};,则该类”型的长度为12。
选择一项:
对
错
题目21
正确
获得2.00分中的2.00分
标记题目
题干
假定一个结构类型的定义为“structB{inta[5];char*b;};,则该类”型的长度为
20。
选择一项:
对
错
题目22
正确
获得2.00分中的2.00分
标记题目
题干
执行calloc(n,8)函数调用时,将动态分配得到8*n个字节的存储空间。
选择一项:
对
错
题目23
正确
获得2.00分中的2.00分
标记题目
题干
执行malloc(sizeof(structBB))函数调用时,得到的动态存储空间能够保存具
有structBB结构类型的一个对象。
选择一项:
对
错
题目24
正确
获得2.00分中的2.00分
标记题目
题干
假定要访问一个结构对象x中的由a指针成员所指向的对象,则表示方法为
x.a。
选择一项:
对
错
题目25
正确
获得2.00分中的2.00分
标记题目
题干
假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方
法为p->b。
选择一项:
对
错
题目26
正确
获得2.00分中的2.00分
标记题目
题干
与结构成员访问表达式(*fp).score等价的表达式是fp->score。
选择一项:
对
错
题目27
正确
获得2.00分中的2.00分
标记题目
题干
在C语言中,对二进制文件的所有不同打开方式共有6种。
选择一项:
对
错
题目28
正确
获得2.00分中的2.00分
标记题目
题干
C语言中的标准输入和输出设备文件都属于字符文件。
选择一项:
对
错
题目29
正确
获得2.00分中的2.00分
标记题目
题干
在一个磁盘数据文件的文件名中,文件主名和扩展名都是必须的,不可省略。
选择一项:
对
错
题目30
正确
获得2.00分中的2.00分
标记题目
题干
在数据文件打开方式字符串中,字符r、w和a具有确定的含义,分别代表读、
写和追加方式。
选择一项:
对
错
题目31
正确
获得2.00分中的2.00分
标记题目
题干
一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。
选择一项:
对
错
题目32
正确
获得2.00分中的2.00分
标记题目
题干
C语言系统中提供一个用来描述文件属性的类型标识符为FILE。
选择一项:
对
错
题目33
正确
获得2.00分中的2.00分
标记题目
题干
每次只能向文本文件中写入一个字符,不能一次写入一个字符串。
选择一项:
对
错
题目34
正确
获得2.00分中的2.00分
标记题目
题干
对二进制文件进行读和写操作将使用相同的系统函数。
选择一项:
对
错
题目35
正确
获得2.00分中的2.00分
标记题目
题干
在C语言中,系统函数fseek()用来移动数据文件中的文件位置指针。
选择一项:
对
错
标记题目
信息文本
三、写出下列每个程序运行后的输出结果(共15分,每小题5分)
题目36
完成
满分5.00
标记题目
题干
#include
structWorker{
charname[15];//姓名
intage;
//年龄
floatpay;
//工资
};
voidmain(){
structWorkerx={"wanghua",52,4300};
structWorkery,*p;
y=x;p=&x;
printf("%s%d%6.2f\n",x.name,y.age,p->pay);
}
wanghua
524300
反馈
wanghua524300
题目37
完成
满分5.00
标记题目
题干
#include
#include
structWorker{
charname[15];//姓名
intage;
//年龄
floatpay;
//工资
};
voidmain(){
structWorkerx;
char*t="liouting";
intd=38;floatf=3493;
strcpy(x.name,t);
x.age=d;x.pay=f;
printf("%s%d%6.0f\n",x.name,x.age,x.pay);
}
liouting392493
反馈
liouting392493
题目38
完成
满分5.00
标记题目
题干
#include
structWorker{charname[15];intage;floatpay;};
intLess(structWorkerr1,structWorkerr2){
if(r1.age}
voidmain(){
structWorkera[4]={{"abc",25,2420},{"def",58,4638},{"ghi",49,4260},{"jkl",36,3750}};
structWorkerx=a[0];
inti;
for(i=1;i<4;i++)
if(Less(x,a[i]))x=a[i];
printf("%s%d%6.0f\n",x.name,x.age,x.pay);
}
def584638
反馈
def584638
标记题目
信息文本
四、写出下列每个函数的功能(共15分,每小题5分)
题目39
完成
满分5.00
标记题目
题干
voidQA(structWorkera[],intn){
inti;
for(i=1;iscanf("%s%d%f",&a[i].name,&a[i].age,&a[i].pay);
}
假定结构类型structWorker的定义如下:
structWorker{charname[15];intage;floatpay;};
从键盘输入n个Worker类型的记录到一维数组a中。
反馈
从键盘输入n个Worker类型的记录到一维数组a中。
题目40
完成
满分5.00
标记题目
题干
intCount(structIntNode*f)
{//f为指向一个单链表的表头指针
intc=0;
while(f){
c++;
f=f->next;
}
returnc;
}
假定structIntNode的类型定义为:
structIntNode{intdata;IntNode*next;};
统计出以表头指针为f的链表中结点的个数。
反馈
统计出以表头指针为f的链表中结点的个数。
题目41
完成
满分5.00
标记题目
题干
voidxw1(char*fname){
FILE*fout=fopen(fname,"w");
chara[20];
printf("每个字符串长度小于20,字符串end作为结束标志\n");
while
(1){
scanf("%s",a);
if(strcmp(a,"end")==0)break;
fputs(a,fout);
fputc('\n',fout);
}
fclose(fout);
}
把从键盘上输入的若干个字符串保存到由fname参数所指定的文本文件中。
反馈
把从键盘上输入的若干个字符串保存到由fname参数所指定的文本文件中。