admin 管理员组文章数量: 1184232
2024年4月18日发(作者:oracle11数据库安装缺少组件)
第9章 结构体
一、单项选择题
1. 若有以下说明语句:
struct student
{ int num;
char name[ ];
float score;
}stu;
则下面的叙述不正确的是: ( )
A) struct是结构体类型的关键字 B) struct student 是用户定义的结构体类型
C) num, score都是结构体成员名 D) stu是用户定义的结构体类型名
2. 若有以下说明语句:
struct date
{ int year;
int month;
int day;
}brithday;
则下面的叙述不正确的是_____.
A) struct是声明结构体类型时用的关键字 B) struct date 是用户定义的结构体类型名
C) brithday是用户定义的结构体类型名 D) year,day 都是结构体成员名
3. 已知:(设整型2字节,字符型1字节,浮点型4字节)
struct
{ int i;
char c;
float a;
}test;
则sizeof(test)的值是 。
A) 4 B) 5 C) 6 D) 7
4. 以下对结构变量stul中成员age的非法引用是 。
struct student
{ int age;
int num;
}stu1,*p;
p=&stu1;
A) B) C) p->age D) (*p).age
5. 有如下定义
struct person{char name[9]; int age;};
struct person class[10]={“Tom”,17,“John”,19,
“Susan”,18,“Adam”,16,};
根据上述定义,能输出字母A的语句是
A) printf(“%cn”,class[3].name); B) printf(“%cn”,class[3].name[0]);
C) printf(“%cn”,class[3].name[1]); D) printf(“%cn”,class[2].name[3]);
6. 存放100个学生的数据、包括学号、姓名、成绩。在如下的定义中,不正确的是( )。
A.struct student
{int sno;
char name[20];
float score;
} stu[100];
B. struct student stu[100]
{int sno;
char name[20];
float score};
C. struct
{ int sno;
char name[20];
float score;} stu[100];
D. struct student
{int sno;
char name[20];
float score;};
struct student stu[100];
7. 设有定义语句“struct {int x; int y;} d[2]={{1,3},{2,7}};”
则“printf(“%dn”,d[0].y/d[0].x*d[1].x);”输出的是( )。
A.0 B)1 C)3 D)6
8. 设有如下定义,则对data中的a成员的正确引用是( )。
struct sk{ int a; float b;} data,*p=&data;
A)(*p))data.a B)(*p).a C)p->data.a D).a
9、已知: struct sk
{ int a;
float b;
}data, *p;
若有p=&data,则对data中的成员a的正确引用是( )。
A、(*p).data.a B、p->data.a C、(*p).a D、.a
10. 设有如下定义:
struck sk
{ int a;
float b;
}data;
int *p;
若要使P指向data中的a域,正确的赋值语句是
A) p=&a;
struct student
{ int age;
B) p=data.a; C) p=&data.a; D)*p=data.a;
11. 以下对结构变量stu1中成员age的非法引用是( )。
int num;
}stu1,*p;
p=&stu1;
A、 B、 C、 p->age D、 (*p).age
12、设有以下说明语句:
typedef struct stu
{ int a;
float b;
} stutype;
则下面叙述中错误的是( )。
A、struct是结构类型的关键字
C、a和b都是结构成员名
二、阅读程序,写出运行结果
1.
#include
struct st
{ int x;
int y;
} a[2]={5, 7, 2, 9} ;
main()
{
printf("%dn",a[0].y*a [1].x);
}
运行结果是:
14
2.
#include
main( )
{struct stu
{int no;
char a[5];
float score;
}m={1234,”wang”,89.5};
printf(“%d,%s,%f”,,m.a,);
}
运行结果是:
1234,wang,89.500000
B、struct stu是用户定义的结构类型
D、stutype是用户定义的结构体变量名
版权声明:本文标题:第9章 结构体(练习题OK) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1713445546a635046.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论