题目1、假定有“struct BOOK{char title[40] float price} struct BOOK book”,则不正确的语句为( )。
struct BOOK *x=malloc(book)
struct BOOK x={C++ Programming,27.0}
struct BOOK *x=malloc(sizeof(struct BOOK))
struct BOOK *x=&book
题目2、假定有“struct BOOK{char title[40] float price} book”,则正确的语句为( )。
struct BOOK x= &book
struct BOOK *x=&book
struct BOOK x=calloc(BOOK)
struct BOOK *x=BOOK
题目3、在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是( )。
句点
冒号
分号
逗号
题目4、假定一个结构类型的定义为 “struct A{int a,b double c}”,则该类型的长度为( )。
8
10
12
16
题目5、假定一个结构类型的定义为 “struct D{int a D* next}”,则该类型的长度为( )。
4
8
12
16
题目6、假定要访问一个结构指针变量x中的数据成员a,则表示方法为( )。
x.a
x->a
x(a)
x{a}
题目7、与结构成员访问表达式x.name等价的表达式为( )。
x->name
&x->name
(&x)->name
(*x)->name
题目8、假定一个链表中结点的结构类型为“struct AA{int data, struct AA *next}”,则next数据成员的类型为( )。
struct AA
struct AA*
AA
int
题目9、假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为( )。
p->next=f
p->next=f和f=p
f=p->next
f->next=p和f=p
题目10、标准输入设备键盘的文件流标识符是( )。
stdin
stdout
stderr
stdio
题目11、表示文件结束符的符号常量为( )。
eof
Eof
EOF
feof
题目12、C语言中打开一个数据文件的系统函数为( )。
fgetc()
fputc()
fclose()
fopen()
题目13、从一个数据文件中读入以换行符结束的一行字符串的系统函数为( )。
gets()
fgets()
getc()
fgetc()
题目14、向一个二进制文件中写入信息的函数fwrite()带有的参数个数为( )。
1
2
3
4
题目15、在C语言中,为只写操作打开一个文本文件的方式为( )。
a
r+
r
w
题目16、在结构类型的定义中,其中的数据成员可以是本身类型的直接对象。
题目17、在结构类型的定义中,允许出现结构类型不完整的超前定义。
题目18、定义结构类型的变量时,不能够同时进行初始化。
题目19、使用一个结构类型时,必须一起使用关键字struct和类型标识符。
题目20、假定一个结构类型的定义为 “struct A{int a,b A* c}”,则该类型的长度为12。
题目21、假定一个结构类型的定义为 “struct B{int a[5] char* b}”,则该类型的长度为20。
题目22、执行calloc(n,8)函数调用时,将动态分配得到8*n个字节的存储空间。
题目23、执行malloc(sizeof(struct BB))函数调用时,得到的动态存储空间能够保存具有struct BB结构类型的一个对象。
题目24、假定要访问一个结构对象x中的由a指针成员所指向的对象,则表示方法为x.a。
题目25、假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为p->b。
题目26、与结构成员访问表达式(*fp).score等价的表达式是fp->score。国开形考答案请进:opzy.net或请联系微信:1095258436
题目27、在C语言中,对二进制文件的所有不同打开方式共有6种。
题目28、C语言中的标准输入和输出设备文件都属于字符文件。
题目29、在一个磁盘数据文件的文件名中,文件主名和扩展名都是必须的,不可省略。
题目30、在数据文件打开方式字符串中,字符r、w和a具有确定的含义,分别代表读、写和追加方式。
题目31、一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。
题目32、C语言系统中提供一个用来描述文件属性的类型标识符为FILE。
题目33、每次只能向文本文件中写入一个字符,不能一次写入一个字符串。
题目34、对二进制文件进行读和写操作将使用相同的系统函数。
题目35、在C语言中,系统函数fseek()用来移动数据文件中的文件位置指针。
题目36、#include
struct Worker {
char name[15] //姓名
int age //年龄
float pay //工资
}
void main() {
struct Worker x={wanghua,52,4300}
struct Worker y, *p
y=x p=&x
printf(%s %d %6.2f\n,x.name,y.age,p->pay)
}
题目37、#include
#include
struct Worker {
char name[15] //姓名
int age //年龄
float pay //工资
}
void main() {
struct Worker x
char *t=liouting
int d=38 float f=3493
strcpy(x.name,t)
x.age=d x.pay=f
printf(%s %d %6.0f\n,x.name,x.age,x.pay)
}
题目38、#include
struct Worker {char name[15] int age float pay}
int Less(struct Worker r1, struct Worker r2) {
if(r1.age<r2.age) return 1 else return 0
}
void main() {
struct Worker a[4]={{abc,25,2420},{def,58,4638},
{ghi,49,4260},{jkl,36,3750}}
struct Worker x=a[0]
int i
for(i=1 i<4 i++)
if(Less(x,a)) x=a
printf(%s %d %6.0f\n,x.name,x.age,x.pay)
}
题目39、void QA(struct Worker a[], int n) {
int i
for(i=1 i<n i++) scanf(%s %d %f,&a.name,&a.age,&a.pay) } 假定结构类型struct Worker 的定义如下、 struct Worker { char name[15] int age float pay} 题目40、int Count(struct IntNode *f) { //f为指向一个单链表的表头指针 int c=0 while(f) { c++ f=f->next
}
return c
}
假定struct IntNode的类型定义为、
struct IntNode {int data IntNode* next}
题目41、void xw1(char* fname) {
FILE* fout=fopen(fname,w)
char a[20]
printf(每个字符串长度小于20,字符串end作为结束标志\n)
while(1) {
scanf(%s,a)
if(strcmp(a,end)==0) break
fputs(a,fout)
fputc(‘\n’,fout)
}
fclose(fout)
}