大学网课搜题引擎
首页
北京学银在线教育科技有限公司
高级语言程序设计
8 结构体与共用体
题目详情
多选题
设有定义struct st { int x; float y; } time, *t; t=&time; 则对time中成员的引用正确的是( )。 A.
st.x B.
t.x C.
(*t).x D.
time->x
查看答案与解析
多选题
以下对结构类型变量定义中不正确的是( )。 A. #define STUDENT struct student STUDENT { int num; float age; } std1; B. struct student { int num; float age; } std1; C. struct { int num; float age; } std1; D. struct { int num; float age;} student;struct student std1;
多选题
定义下列结构体数组,执行语句printf("%d, %s",a[2].age, a[1].name)的输出结果为( )。 struct stu { char name[10]; int age; }a[5]={"Zhao",14, "Wang",15, "Liu",16, "Zhang",17}; A. 15, Zhao B. 16, Wang C. 17, Liu D. 17, Zhao
多选题
typedef int INTEGER; 的含义是( )。 A. 定义int类型变量INTEGER B. 定义INTEGER类型的变量int C. 将INTEGER声明为int类型的别名,INTEGER的使用和int一致 D. 将int声明为INTEGER类型的别名,int的使用和INTEGER一致
多选题
若有以下结构体定义,则正确的引用或定义是( )。struct exam{ int x; int y; }; A. exam.x=10; B. exam y,x; C. struct exam y=[10]; D. struct exam a; a.x=10;
简答题
已知struct fs{ int fz; int fm; }x[]={{2,7},{3,5}};,计算表达式x[0].fz*x[1].fm+x[1]. fz*x[0].fm和x[0].fm*x[1].fm的值分别为 (1) 、 (2) 。
多选题
设有以下说明,不正确的叙述是( )。union data{ int i; char c; float f;} un; A. un所占的内存长度等于成员c的长度 B. un的地址和其各个成员地址都是同一地址 C. un可以作为函数参数 D. 不能对un赋值,但可以在定义un时对它初始化
简答题
函数findbook的功能是:在有n个元素的数组s中查找名为a的书,若找到,则函数返回数组下标,否则,函数返回-1,请填空。 struct data { int id; char name[20]; double price; } book[100]; int findbook(struct data s[], int n, char a[]) { int i; for(i=0;i if( (1) ) return i; (2) ; }
多选题
定义如下结构体,若指针p指向结构体变量data,即有p = &data; ,则对结构体成员a的正确引用是( )。 struct sk { int a; float b; }data, *p; A. (*p).data.a B. (*p).a C. p->data.a D. p.data.a
简答题
已知有职工结构体数组struct { int num; char name[20]; } per[100];,用scanf函数写出输入下标为i的职工num和name的语句为 。
多选题
以下选项中,能定义s为合法结构体变量的是( )。 A. typedef struct abc { double a; char b[10]; } s; B. struct { double a; char b[10]; } s; C. struct ABC { double a; char b[10]; } ; ABC s; D. typedef ABC { double a; char b[10]; } ; ABC s;
多选题
若int占4字节,char占1字节,float占4字节,假设定义如下,则sizeof(xc)的值为( )。 struct stu{ union { char bj[5]; int bh[2]; } xu; char xm[8]; float cj;} xc; A. 17 B. 20 C. 18 D. 19
简答题
结构体类型pp的定义如下,若无参函数f()的返回值是struct pp类型的指针,则f()的函数声明为 。 struct pp { char name[15]; int addr[30]; int payment; }ppArr[10], *p = ppArr;
多选题
设有以下说明和语句,则下面表达式中值为3的是( )。struct s{ int i1; struct s *i2;};static struct s a[3]={1, &a[1], 2, &a[2], 3, &a[0]}, *ptr;ptr=&a[1]; A. ptr->i1++ B. ptr++->i1 C. *ptr->i1 D. ++ptr->i1
多选题
若建立了以下链表结构,head,p,q是指向结点的指针,要求输出如下图所示中间结点E的数据项,其正确的语句是( )。 A. q = p; printf("%c", q->data); B. q = p->next; printf("%c", q->data); C. q = p; printf("%c", q); D. q = p->next; printf("%c", q);
多选题
以下对结构体变量成员不正确的引用是( )。struct pupil { char name[20]; int age; int sex;} pup[5], *p=pup; A. scanf("%s", pup[0].name); B. scanf("%d", &pup[0].age); C. scanf("%d", &(p->sex)); D. scanf("%d", p->age);
多选题
设有定义union w{ int a[3]; float b[4]; char c[10]; }bb; 则printf("%d ", sizeof(bb));的输出是( )。 A. 6 B. 16 C. 17 D. 32
多选题
若已有语句如下,则以下说法错误的是( )。 struct student { int age; int num; } stu,*p; A. stu是结构体类型的变量 B. p是结构体类型的指针变量 C. student是结构体类型名 D. p是结构体变量
多选题
下列关于结构体的说法错误的是( )。 A. 结构体是由用户自定义的一种结构类型 B. 结构体中可设定若干个不同数据类型的成员 C. 结构体中成员的数据类型可以是另一个已定义的结构 D. 在定义结构时,可以为成员设置默认值
多选题
以下对共用体类型数据的正确叙述是( )。 A. 一旦定义了一个共用体变量后,即可引用该变量或该变量中的任意成员 B. 一个共用体变量中可以同时存放其所有成员 C. 一个共用体变量中不能同时存放其所有成员 D. 共用体类型数据可以出现在结构体类型定义中,但结构体类型数据不能出现在共用体类型定义中
多选题
已知:union u_type{ int i; char ch; } temp;则执行temp.i=266;后,temp.ch的数值为( )。 A. 266 B. 256 C. 10 D. 1
高级语言程序设计
章节列表
1 C语言程序设计概述
24
2 顺序结构程序设计
45
3 选择结构程序设计
31
4 循环结构程序设计
25
5 数组
27
6 函数
68
7 指针
23
8 结构体与共用体
30
9 文件
59