#1444. 【选择题】第12章:结构体和共用体 例题
【选择题】第12章:结构体和共用体 例题
说明
1.设有以下说明语句
struct ex
{ int x; float y;char z; } example;
则下面的叙述中不正确的是( )。
A.struct是定义结构体类型的关键字 B.example是结构体类型名
C.x,y,z都是结构体成员名 D.struct ex是结构体类型名
2.已知学生记录描述为
struct student
{
int no;
char name[20];
char sex;
struct{int year; int month; int day; }birth;
};
struct student s;
设变量s中的“生日”应是“1984年11月11日”,下列对“生日”的正确赋值方式是( )。
A. year=1984;month=11;day=11;
B. birth.year=1984;birth.month=11;birth.day=11;
C. s.year=1984;s.month=11;s.day=11;
D. s.birth.year=1984;s.birth.month=11;s.birth.day=11;
3.有如下定义
struct person { char name[9]; int age;};
struct person class[10]={"Johu",17,"Paul",19,"Mary",18,"Adam",16};
根据上述定义,能输出字母M 的语句是( )。
A. prinft(" %c\n",class[3].name);
B. printf(" %c\n",class[3].name[1]);
C. prinft(" %c\n",class[2].name[1]);
D. printf(" %c\n",class[2].name[0]);
4.设有如下定义:
struct sk {int a ;float b ;}data ,*p ;
若有p=&data ; ,则对data 中的a 域的正确引用是( )。
A.(*p).data.a B.(*p).a C.p->data.a D.p.data.a
5.p有以下说明和定义语句
struct student
{ int age; char num[8];};
struct student stu[3]={{20,"200401"},{21,"200402"},{19,"200403"}};
struct student *p=stu;
以下选项中引用结构体变量成员的表达式错误的是( )。
A.(p++)->num B.p->num C.(*p).num D.stu[3].age
6.有以下语句:
typedef struct stu
{
char name[20];
int age;
}TT;
下面叙述正确的是( )。
A.可以用stu定义结构体变量 B.stu是结构体struct类型的变量
C.可以用TT定义结构体变量 D.TT是struct stu类型的变量
输出格式
#include<stdio.h>
#define N 7
int main()
{
int i;
char cAnswer[N] = {"//将你的答案表示成字符串,注意中间不要有空格"};
//例: char cAnswer[N] = {"AAAAAA"};
//N的值为选择题的个数加1,如本次作业选择题的个数为6,则N的值为7
printf("%s", cAnswer);
return 0;
}
请将上述提供的程序复制到提交代码的位置并作相应修改。
样例