1、
下面对结构数据类型的错误叙述是_______。
|
|
结构变量可以在说明结构类型后定义,也可在说明结构时定义。 |
|
结构可由若干个成员组成,各成员的数据类型可以不同。 |
|
定义一个结构类型后,编译程序要为结构的各成员分配存储空间。 |
|
结构变量的各成员可通过结构变量名和指向结构变量的指针引用。 |
|
2、
设有以下说明语句 struct stu { int a ; float b ; } stutype ; 则下面的叙述不正确的是_______。
|
|
struct是结构体类型的关键字。 |
|
structs stu是用户定义的结构体类型。 |
|
stutype是用户定义的结构体类型名。 |
|
a和b都是结构体成员名。 |
|
3、
若有以下说明和语句。对结构体变量person的出生年月进行赋值时,下面正确的赋值语句是( )。 struct date { int year,month,day;} struct worklist { char name[20]; char sex; struct date birthday; } person;
|
|
year=1958; |
|
birthday.year=1958; |
|
person.birthday.year=1958; |
|
person.year=1958; |
|
4、
以下对结构体变量的定义错误的是_______。
|
|
|
|
|
|
|
|
|
|
5、
根据下面的定义,能打印出字母z的语句是_______。 struct student { char name[10] ; int age ; } ; struct student stu[3] = { "li xiang" , 17 , "zhang san" , 18 ,"wang wu" , 18 } ;
|
|
printf( "%c\n" , stu[2].name ) ; |
|
printf( "%c\n" , stu[2].name[1] ) ; |
|
printf( "%c\n" , stu[1].name[1] ) ; |
|
printf( "%c\n" , stu[1].name[0] ) ; |
|
6、
以下scanf函数调用语句中对结构体变量成员的不正确引用是_______。 struct pupil { char name[20] ; int age ; int sex ; } pup[5] , *p = pup ;
|
|
scanf( "%s" , pup[0].name ) ; |
|
scanf( "%d" , &pup[0].age ) ; |
|
scanf( "%d" , &( p->sex ) ) ; |
|
scanf( "%d" , ( p->age ) ) ; |
|
7、
若有以下说明和语句。下述表达式中,值为72的一个是( )。 struct person { char name[10]; int age; }class[10]={"LiMing",29,"ZhangHong",21,"WangFang",22};
|
|
class[0]->age + class[1]->age+ class[2]->age |
|
class[1].name[5] |
|
person[1].name[5] |
|
clase->name[5] |
|
8、
有定义如下。如果 p=&data;则对于结构变量data的成员a的正确引用是( )。 struct sk { int a; float b; }data ,*p;
|
|
(*)data.a |
|
(*p).a |
|
p->data.a |
|
p.data.a |
|
9、
若有以下说明和语句。以下引用方式不正确的是( )。 struct student { int no; char *name; }work, *p=&work;
|
|
work.no |
|
(*p).no |
|
p->no |
|
work->no |
|