首页题目详情

若结构体 Student 定义为:struct Student { int id; char name[20]; };,则以下哪项是合法的结构体初始化方式?

题目配图
A.struct Student s = {1001, 'T', 'o', 'm'};
B.struct Student s = {1001, "Tom"};
C.struct Student s = { .id = 1001, .name = "Tom" };
D.struct Student s = { .name = "Tom", .id = 1001 };

优质解答

答案

B

解析

选项B正确,因为字符串类型可以直接赋值。选项A将char name[20] 初始化为一个字符数组,但初始化方式不正确。选项C和D虽然使用了命名方式初始化,但初始化顺序不是严格按照结构体定义的顺序。

查看答案和解析

支付 ¥0.1 即可查看此题答案和详细解析

低至 ¥0.1 起

C语言程序设计单选题中等AI生成