首页/ 题库 / [单选题]有如下定义: struct person的答案

有如下定义: struct person {char name[9];int age;}; struct person class[10]={"John",17,"paul",19,"Mary",18,"Adam",16}; 根据上述定义,能输出字母M的语句是( )。

单选题
2022-07-12 01:00
A、printf("%c\n",class[3].name);
B、printf("%c\n",class[3].name[1]);
C、printf("%c\n",class[2].name[1]);
D、printf("%c\n",class[2].name[0]);
查看答案

正确答案
D

试题解析
解析:本题的关键是弄清楚给结构体数组赋初值的问题。初始值将按数组的各个元素在内存中的存放次序逐个地赋给各元素。结构体数组的各个元素在内存中的存放次序是:class[0].name,class[0].age,class[1].name,class[1].age,…,由此可知,包含字符“M”的字符串“Mary”赋值给了元素class[2].name,则与字符“M”相对应的表达式是class[2].name[0]。

标签:
感兴趣题目
已知学生记录描述为 struct student { int no; char name[20]; char sex; struct { int year; int month; int day; } birth; }; struct student s;变量s中的“生日”应是“1985年4月4日”,下列对“生日”的正确赋值方式是______。
有以下定义和语句:
struct workers   
{int num;char name[20];char C;
 struct
 {int day;int month;int year;)S;
};
struct workers w,*pw;
pw=&w;
能给w中year成员赋1980的语句是(  )。
根据下列的定义,能打印出字母P的语句是( )。 struct stu {char name[10]; int age; }; struct sm s[10]={"John",11, "Pau1",12, "Mary",11, "adam",12 };
根据下列的定义,能打印出字母P的语句是( )。 struct stu { char name[10]; iht age; }; struct stu s[10]={"John",11, "Paul", 12, "Mary", 11, "adam",12 };
设有以下语句: struct SS { int no; char name[10];}PERSON; 则下面叙述中错误的是 ( )
有如下定义struct person {char name[9];int age;};struct person class[10]={"John",17,"paul",19,"Mary",18,"Adam",16,};根据上述定义,能输出字母M的语句是
有如下定义: struct person {char name[9];int age;}; struct person class[10]={"John",17,"paul",19,"Mary",18,"Adam",16}; 根据上述定义,能输出字母M的语句是( )。
有如下定义struct person{char name[9];int age;};struct person class[10]={"John",17,"paul",19,"Mary",18,"Adam",16,};根据上述定义,能输出字母M的语句是
有以下说明和定义语句 struct student { int age; char num[8];}; struct student stu[3]={{20,"200401"},{21,"200402"},(19,"200403"}}; struct student*p=stu; 以下选项中引用结构体变量成员的表达式错误的是______。
有以下说明和定义语句struct student{ int age;char num {8};};struct student stu[3]={{20,“200401”},{21,“200402”),{19,“200403”}};struct student *p=stu; 以下选项中引用结构体变量成员的表达式错误的是
有以下说明和定义语句 struct student { int age;char num[8]; struct student stu[3]={{20,"200401"},{21,"200402"},{19,"200403"}}; struct student *p=stu;}; 以下选项中引用结构体变量成员的表达式错误的是
有以下说明和定义语句 struct student {int age;char num[8]; }; struct student stu[3]={{20,"200401"},{21,"200402"},{109,"200403"}}; struct student*p=stu;以下选项中引用结构体变量成员的表达式错误的是______。
相关题目
定义以下结构体数组:

struct st

{ char name[15];

  int age;

}a[10]={"ZHAO",14,"WANG",15,"LIU",16,"ZHANG",17};

执行语句printf("%d,%c"a[2].age,*(a[3].name+2)))的输出结果为(  )。

在16位IBM-PC机上使用C语言,若有如下定义: struct data{int i;char ch;double f;}b; 则结构变量b占用内存的字节数是( ).
设有如下定义,下面输入语句中,( )错误。struct ss { char name[10];int age;char sex;}std[3],p=std;
设有以下结构体定义:struct emproyer{char name[8];int age;char sex;}staff;则下面的叙述不正确的是( )
有如下定义:struct person{char name[9]; int age;};struct person class[10]={“Johu”, 17,“Paul”, 19,“Mary”, 18,“Adam 16,};根据上述定义,能输出字母M的语句是 ( )
设struct{char name[10];int age;}stu[2]={{ ″Tom″,25},{″Mary″,26}},p=stu;则执行语句printf(″%s%d\n″,p->name,stu[1]age);后输出结果是( )
设有下列两个类的定义,则类Person和类Man的关系是 class Person { long id;/ / 身份证号 String name;/ / 姓名 } class Man extends Person { int age;/ / 年龄 int getScore( ) { return score; } }
设有下列两个类的定义,则类Person和类Man的关系是( )。 class Person { long id; //身份证号 String name; //姓名 } class Man extends Person { int age; //年龄 int getAge() { return age; } }
设有下列两个类的定义,则类Person和类Man的关系是 ( ) class Person { long id; //身份证号 String name; //姓名 } class Man extends Person{ int age;//年龄 int getScore() { return score; } }
以下程序的输出结果是 ( ) #include<stdio.h> main() {struct stru{int a,b: char c[6]; }: printf("%d ",sizeof(stru)), }
若有如下定义: union aa {int n; char c[9]; float x;}a,b,c; 则下列叙述中不正确的是( )
某C语言结构体的定义如下。 struct date { int year, month, day; }; struct worklist { char name[20]; char sex; struct date birthday; }person; 若对变量person的出生年份进行赋值,正确的赋值语句是(33)。
定义下列结构体(联合)数组: struct st { char name[15]; int age; }a[10]={"ZHAO",14, "WANG",15, "LIU",16, "ZHANG",17 }; 执行语句printf["%d,%c",a[2].age, *(a[3].name+2))的输出结果为( )。
定义下列结构体(联合)数组: struct St { char name[15]; int age; }a[10]={"ZHAO",14,"WANG",15,"LIU",16,"ZHANG",17}; 执行语句printf("%d,%c",a[2].age,*(a[3].name+2))的输出结果为( )。
定义下列结构体(联合)数组:struct st{ char name[15]; int age;}a[10]={"ZHAO",14,"WANG",15,"LIU",16,"ZHANG",17};执行语句printf("%d,%c",a[2].age,*(a[3].name+2))的输出结果为( )。
定义下列结构体(联合)数组:struct st{ char name[15];int age;}a[10]={"ZHA0",14,"WANG",15,"LIU",16," ZHANG",17);执行语句printf("%d,%C",a[2].age,*(a[3].name+ 2))的输出结果为( )。
有以下程序: #include<stdio.h> struct stu { int num;char name[l0];int age;}; void fun(struct stu*p) { printf("%s ",p->name);} main( ) { struct stu x[3]={{01,"Zhang",20),{02,"Wang",l9},{03,"Zha0",l8}}; fun(x+2); } 程序运行后的输出结果是( )。
以下程序的输出结果是______。#include<stdio.h>struct stu{ int num; char name[10]; int age;};void fun(struct stu*p){ printf("%s ",(*p).name);}main(){ struct stu students[3]={ {9801,"Zhang",20}, { 9802,"Wang",19}, { 9803,"Zhao",18} }; fun(students+2);}
有以下程序: #include<<stdio.h> struct stu { int num; char name[10]: int age;} void fun(struct stu*p) {printf("%s\n",(*p).name);} the main { struct stu students[3]={{9801,"Zhang".20}, {9802,"Wang",19},{9803,"Zhao",1 8}} fun(students+2); } 输出的结果是( )。
给出下面不完整的类代码,则横线处的语句应该为( )。 class Person { String name,department; int age; public Person (Strings) {name=s;} public Person (String s,int
广告位招租WX:84302438

免费的网站请分享给朋友吧