选择题: 当说明一个结构变量时,系统分配给它的内存一般是a a.各成员所需内存量的总和 b.结构中第一个成员所需内存量 成员中占内存量最大的成员所需的容量 d.结构中最后一个成员所需内存量 2下面四个运算符中,优先级最低的是d b d ++ 3在对 typedef的叙述中错误的是b a用 typedef可以定义各种类型名,但不能用来定义变量 b用 typedef可以增加新类型 c用 typedef只是将已存在的类型用一个新的标识符来代表 d使用 typed有利于程序的通用和移植 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 1 1 当说明一个结构变量时,系统分配给它的内存一般是 a. 各成员所需内存量的总和 b. 结构中第一个成员所需内存量 c. 成员中占内存量最大的成员所需的容量 d. 结构中最后一个成员所需内存量 2 下面四个运算符中,优先级最低的是 a ( ) b . c -> d ++ 3 在对typedef的叙述中错误的是 a.用typedef可以定义各种类型名,但不能用来定义变量 b.用typedef可以增加新类型 c.用typedef只是将已存在的类型用一个新的标识符来代表 d.使用typedef有利于程序的通用和移植 一、选择题: a d b
4、选择下面程序的运行结果d #include struct cmplx Int x, int }cnum[2|={1,3,2,7}; int main( i printf("%dn,cnum(0y*cnum 1-x); return 0 a.0 b.1 c.3 d.6 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 2 4、选择下面程序的运行结果 #include struct cmplx { int x; int y; }cnum[2]={1,3,2,7}; int main( ) { printf("%d\n",cnum[0].y*cnum[1].x); return 0; } a. 0 b. 1 c. 3 d. 6 d
5、已知: struct sk i int a; float b 3data, p 若有p=&data,则对data中的成员a的正确引用是b a. p).data. a b( p).a C. p->data. a d pdata. a 6、设有以下说明语句, struct ex f int x; float y; char z; example: 则下面的叙述中不正确的是b a struct是结构类型的关键字 b example是用户定义的结构类型名 cxy,z都是结构成员名d, struct ex是用户定义的结构类型 C++程序设计课件设计制作:徐龙琴 3
C++程序设计课件 设计制作:徐龙琴 3 5、已知: struct sk { int a; float b; }data,*p; 若有p=&data,则对data中的成员a的正确引用是 a. (*p).data.a b. (*p).a c. p->data.a d. p.data.a 6、设有以下说明语句, struct ex { int x; float y; char z;}example; 则下面的叙述中不正确的是 a.struct是结构类型的关键字 b.example是用户定义的结构类型名 c.x,y,z都是结构成员名 d.struct ex是用户定义的结构类型 b b
7、选择下面程序的运行结果是b #include struct stu i int num; char name 10; int age; void fun(stu*p) i cout<<(p). name<<endl; y void maino &stu students3= 9801, Zhang, 203, 9802,Long",21}, 9803,Xue",19}; fun(students+); a Zhang b Xue c Long d.18 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 4 7、选择下面程序的运行结果是 #include struct stu { int num; char name[10]; int age;}; void fun(stu *p) { cout<<(*p).name<<endl; } void main() { stu students[3]={{9801,"Zhang",20}, {9802,"Long",21}, {9803,"Xue",19}}; fun(students+2);} a.Zhang b.Xue c.Long d.18 b
8、 struct f int x, y; }s[2]={{1,2},{3,4}},*p=S; 则表达式++p→>x的值为2 表达式(+p)->x的值为3 9用 typedef定义整型一维数组 typedef int ARRAY 10l; 则对整型数组10、b10、c0可以定义为 array a,b,c C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 5 8、 struct { int x,y; } s[2]={ {1,2},{3,4} },*p=s; 则表达式++p->x的值为 表达式(++p)->x的值为 9 用typedef定义整型一维数组: typedef int ARRAY[10]; 则对整型数组a[10]、b[10]、c[10]可以定义为 2 3 ARRAY a,b,c;
10、有以下定义和语句,则表达式++pr>i的值为6 struct s i int i; int all={1,2,3,4,5,6}; sa3]={5,&al1l7,&a2],9,"0"},ptr; void maino ptr=&a; C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 6 10、有以下定义和语句,则表达式++ptr->i 的值为 struct s { int i; int *j; }; int a[]={1,2,3,4,5,6}; s a[3]={5,&a[1],7,&a[2],9,'\0'},*ptr; void main() { … ptr=&a[0]; … } 6
二读程题: °# include struct two f x, *y ;*p; inta8={1,2,3,4,5,6,7,8}; twob|4]={100,&a[1,200,.a3],10,.al5l,20,.a[7]}; void main (0 程序的运行结果为: {p=b; 101 printf("%od\n",++(p->x)); C++程序设计课件设计制作:徐龙琴 7
C++程序设计课件 设计制作:徐龙琴 7 二 读程题: 1. #include struct two { int x, *y ; }*p; int a[8]={1,2,3,4,5,6,7,8}; two b[4]={100,&a[1],200,&a[3],10,&a[5],20,&a[7]}; void main() { p=b; printf("%d\n",++(p->x)); } 程序的运行结果为: 101
2. #include struct n c Rint x; char c void func(struct n c ) void main( Struct n c a=(10,x; func(a); printf("%d%c",ax,a.C)}程序的运行结果为: 10 void func(struct n c b) {bx=20; bc=’y;} C++程序设计课件设计制作:徐龙琴 8
C++程序设计课件 设计制作:徐龙琴 8 2. #include struct n_c {int x; char c;}; void func(struct n_c ); void main( ) {struct n_c a={10,'x'}; func(a); printf("%d %c",a.x,a.c);} void func(struct n_c b) { b.x=20; b.c='y';} 程序的运行结果为: 10 x
3 #include <iostream. h struct clock i int hour int minute int second: 3 aclock void updata i aclock second++; if(aClock second==60 Raclock. second=0; a clock. minute++; 9 if(a clock. minute==60) a Clock, minute=0; aClockhour++; 1 if(aClockhour==24) a Clock hour=0; void display cout<<a Clockhour<<:<<a Clock.minute :<<a Clock. second<<endl; void maino i a clockhour-a Clock. minute=a Clock. second=0; for(inti=0;i<10000;i++) i updata; display o; 1 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 9 3 #include struct clock { int hour; int minute; int second; } aClock; void updata() { aClock.second++; if(aClock.second==60) {aClock.second=0;aClock.minute++;} if(aClock.minute==60) { aClock.minute=0; aClock.hour++;} if(aClock.hour==24) aClock.hour=0; } void display() { cout<<aClock.hour<<":"<<aClock.minute <<":"<<aClock.second<<endl;} void main() { aClock.hour=aClock.minute=aClock.second=0; for(int i=0;i<10000;i++) { updata();display();} }
三编程题: 1、定义结构体类型 Istruct card,代表一张扑克牌的结构,结构 体中包含两个成员:牌的花色(定义字符串类型)和面值( 定义整型),再定义一个结构变量deck,代表一张牌。 打印通讯录。该通讯录包括:班级、学号、姓名、住址、电 话、E-mai等。 3、输入n个人的编号、姓名、身高,然后按身高从小到大的顺 序排列输出。 4、编写一函数day,该函数使用data结构作为参数,函数返回某 日是这年的第几天 5、有5个学生,每个学生的数据包括学号、姓名、数学、物理、 化学三门课的成绩,从键盘输入5个学生的数据,要求打印 出三门课的平均成绩,以及最高分的学生的数据(包括学号 姓名、三门课成绩、平均分)。 C++程序设计课件设计制作:徐龙琴 10
C++程序设计课件 设计制作:徐龙琴 10 三 编程题: 1、定义结构体类型struct card ,代表一张扑克牌的结构,结构 体中包含两个成员:牌的花色(定义字符串类型)和面值( 定义整型),再定义一个结构变量deck,代表一张牌。 2、打印通讯录。该通讯录包括:班级、学号、姓名、住址、电 话、E-mail等。 3、输入n个人的编号、姓名、身高,然后按身高从小到大的顺 序排列输出。 4、编写一函数day,该函数使用data结构作为参数,函数返回某 日是这年的第几天。 5、有5个学生,每个学生的数据包括学号、姓名、数学、物理、 化学三门课的成绩,从键盘输入5个学生的数据,要求打印 出三门课的平均成绩,以及最高分的学生的数据(包括学号、 姓名、三门课成绩、平均分)