第五章习题答案.

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第5章集合与结构

5.1 选择题

1.语句cout<<(1&2)<<", "<<(1&&2)<

(A)0, 0 (B)0, 1 (C)1, 0 (C)1, 1

2. 语句cout<<(1|2)<<", "<<(1||2)<

(A)0, 0 (B)1, 1 (C)2, 0 (D)3, 1

3. 有以下说明语句:

struct point

{ int x; int y; }p;

则正确的赋值语句是( C )。

(A)point.x = 1; point.y = 2; (B)point={ 1, 2 };

(C)p.x = 1; p.y = 2; (D)p = { 1, 2 };

4.已知有职工情况结构变量emp定义为:struct Date

{

int year;

int month;

int day;

};

strnct Employee

{

char name[20];

long code;

Date birth

};

Employee emp;

下列对emp的birth正确赋值方法是( D )。

(A)year=1980; month=5; day=1;

(B)birth.year=1980; birth.month=5; birth.day=1;

(C)emp.year=1980; emp.month=5; emp.day=1;

(D)emp.birth.year=1980; emp.birth.month=5; emp.birth.day=1;

5.有以下说明语句:

struct Student

{

int num;

double score;

};

Student stu[3]={{1001,80}, {1002,75}, {1003,91}}, *p=stu;

则下面引用形式错误的是( B )。

(A)p->num (B)(p++).num (C)(p++)->num (D)(*p).num

6.有以下说明语句:

struct Worker

{

int no;

char name[20];

};

Worker w, *p =&w;

则下列错误的引用是( D )。

(A)w.no (B)p->no (C)(*p).no (D)*p.no

7.s1和s2是两个结构类型变量,若要使赋值s1=s2合法,则它们的说明应该是( C )。

(A)s1只能接收相同类型的数据成员

(B)结构中的成员相同

(C)同一结构类型的变量(D)存储字节长度一样的变量

5.2 阅读下列程序,写出运行结果。

1.

#include

using namespace std;

struct Data

{

int n;

double score;

};

int main()

{

Data a[3] = { 1001,87,1002,72,1003,90 }, *p = a;

cout << (p++)->n << endl;

cout << (p++)->n << endl;

cout << p->n++ << endl;

cout << (*p).n++ << endl;

}

【解答】

1001

1002

1003

1004

2.

#include

using namespace std;

struct Employee

{

char name[ 20 ];

char sex;

};

void fun( Employee *p )

{

if( (*p).sex == 'm' )

cout << (*p).name << endl;

}

int main()

{

Employee emp[5] = { "Liming", 'm', "Wangxiaoping", 'f', "Luwei", 'm' };

int i;

for( i=0; i<3; i++ )

fun( emp+i );

}

【解答】

Liming

Luwei

3.

#include

using namespace std;

struct Node

{

char * s;

Node * q;

};

int main()

{

Node a[ ] = { { "Mary", a+1 }, { "Jack", a+2 }, { "Jim", a } };

Node *p = a;

cout << p->s << endl;

cout << p->q->s << endl;

cout << p->q->q->s << endl;

cout << p->q->q->q->s << endl;

}

【解答】

Mary

Jack

Jim

Mary

5.3 思考题

1.判断一个整数n的奇偶性,可以利用位运算判断吗?请你试一试。

【解答】

相关文档
最新文档