181、有以下说明和定义语句
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
正确答案: D
182、以下叙述中错误的是_________。
A、 可以通过typedef增加新的类型
B、 可以用typedef将已存在的类型用一个新的名字来代表
C、 用typedef定义新的类型名后,原有类型名仍有效
D、 用typedef可以为各种类型起别名,但不能为变量起别名
正确答案: A
183、设有以下语句
typedef struct S
{ int g; char h;} T;
则下面叙述中正确的是______。
A、 可用S定义结构体变量
B、 可以用T定义结构体变量
C、 S是struct类型的变量
D、 T是struct S类型的变量
正确答案: B
解析:本题使用typedef关键字将整个结构体的定义部分struct S{int g;char h;}声明为别名T。此时T是一个结构体类型,可以直接使用T声明该结构体变量,而S只是一个结构体名,必须结合struct关键字才能声明变量。
184、设有如下说明
typedef struct ST
{long a;int b;char c[2];} NEW;
则下面叙述中正确的是_____。
A、 以上的说明形式非法
B、 ST是一个结构体类型
C、 NEW是一个结构体类型
D、 NEW是一个结构体变量
正确答案: C
198、一个C程序的执行是从 。
A、 本程序的main函数开始,到main函数结束
B、 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C、 本程序文件的第一个函数开始,到本程序main函数结束

本文是一系列关于C语言的选择题及其解析,涵盖了结构体使用、typedef关键字、程序执行流程、C语言特性等方面的知识,旨在帮助读者巩固C语言基础。
最低0.47元/天 解锁文章
1228

被折叠的 条评论
为什么被折叠?



