答案选择A ,对其它选项的分析对不对

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

这里的B 之所以是错误的,是因为他的赋值方式不对吗?一个用scanf(“%”)或者是strcpy才可以对它赋值,是这样吗?D是因为他赋了字符,而不是字符串,要赋字符串也要和B一样的方法是把?C改成p【0】.k就行了是把?

img

A 结构体数组名即结构体数组首地址为p 指针指向数据域数字k p->k正确
B 串只能初始化赋值时才能用=
C p[0]是结构体数组第一个元素 不是指针 所以用点不用指向
D s是一个串,不能用等号赋值,同时它以为是个字符,对字符赋值也不对。应该是p[i].s[0]='k'或者
p->s[0]='k'