1.A ps是指针数组,不是指针变量
2.B 宏名不许出现在宏值中 否则成了死循环的永远展开不完 A C D都是合法的语句
3.A 结构c一个元素点两个int单元,所以初始化c[]={1,2,3,4}相当于c[]={{1,2},{3,4}}
4.C 点优先级高于* ps为指针,不能直接结合点 (*ps)是结构体对象,可以用点结合
第二题 结构体名字开头只能定义一个,而不是俩个 宏参数可以出现定义宏内 例如 #define S(x,y) x*y
第三题 数组下标1 y[1]代表数组第二个元素 所以是2// 标准写法 应该是 c[]={{1,2},{3,4}}
c.y 用结构体变量调用成员y, y只能是2与4 。//1 3对应x
第四题目 错误不是B 是C //C应该像D那样加()号的(*ps),a//因为 点.的优先级比*大。
指针调用成员用->//还有一种情况就是(*ps).a//这个指针接受了结构体变量的地址 加*就是对这个地址 解引用 *ps就变成对象了
结构体变量调用则用 点.
1.A
2.B 定义结构体有三种方式,(1).先定义结构体,再定义结构体变量;如题目选项C。(2).在定义结构体的同时定义结构体变量,如题目选项A。(3).直接定义结构体变量,如题目选项D
3.A
4.C
1.A
2.D
3.A
4.B