首页 > 试题广场 >

根据下面的定义,能打印出字母M的语句是()。 str

[单选题]
根据下面的定义,能打印出字母M的语句是()
struct person
{
    char name[9];
    int age;
};
struct person class[10] = {"John",17, "Paul",19, "Mary",18, "adam",16}; 


  • printf("%c\n",class[3].name);
  • printf("%c\n",class[3].name[1]);
  • printf(“%c\n",class[2].name[1]);
  • printf("%c\n”,class[2].name[0]);
推荐

【解释】包含大写字母M的结构体只有结构体数组的第3个元素class[2]class[2]

含两个成员:一个是姓名name字符数组,一个是年龄agename的值是一字符串"Mary”

其第一个字符name[0]就是字符M,所以通过结构体数组来输出字母M的引用是

class[2].name[0]。故正确答案是D

发表于 2018-05-07 10:00:12 回复(0)
记住数组下标从0开始就好
发表于 2020-08-22 22:03:54 回复(0)
话说,别用class这种预制的关键字去定义变量吧,这是谁的编码习惯?
发表于 2023-04-29 17:05:04 回复(0)
在C语言中,class不是关键字。C语言中没有类的概念,因此也没有关键字class。C语言主要使用结构体(struct)来实现类似于面向对象编程的功能。
发表于 2023-09-16 18:11:39 回复(0)
为什么字符name[0]就是字符M
发表于 2023-04-29 09:23:35 回复(1)