电大《C++语言程序设计》形成性考核册作业及(3)

所属学校:中央电大 科目:C++语言程序设计 2015-03-17 15:25:35
 

一、填空题Z71傲朋学习网

1.假定p所指对象的值为28p+1所指对象的值为62,则* p + +的值为  28   Z71傲朋学习网

2.假定p所指对象的值为28p+1所指对象的值为62,则* + + p的值为  62   Z71傲朋学习网

3.假定p所指对象的值为25p+1所指对象的值为50,则执行*p+ +语句后,p所指对象的值为   26   Z71傲朋学习网

4.假定p所指对象的值为25p+1所指对象的值为50,则执行“*p+ +);语句后,p所指对象的值为  50    Z71傲朋学习网

5.假定a是一个指针数组,则a+i所指对象的地址比a地址大  未知     字节。Z71傲朋学习网

6.假定a是一个一维数组,则a[i]的指针访问方式为 *(a+i)      Z71傲朋学习网

7.假定a是一个二维数组,则a[i] [j]的指针访问方式为  *(*(a+i)+j)     [h1] Z71傲朋学习网

8.假定a是一个一维数组,则a[i]对应的存储地址(以字节为单位)为  (char *)a+i*sizeof(a[0])     Z71傲朋学习网

9.假定一个二维数组为a[M] [N],则a[i] [j]对应的存储地址(以字节为单位)为 (char *)a+(i*N+j)*sizeof(a[0][0])      Z71傲朋学习网

10.假定一个二维数组a[M] [N],则a[i]的地址值(以字节为单位)为 (char *)a+i*N*sizeof(a[0][0])      Z71傲朋学习网

11.假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大   4   字节。Z71傲朋学习网

12.假定a为一个字符数组名,则元素a[8]的字节地址为   8    Z71傲朋学习网

13.假定a为一个整型数组名,则元素a[4]的字节地址为   16    Z71傲朋学习网

14.假定一个结构类型的定义为“struct Aint a,bshort cA*d;};,则该类型的大小为   14    字节。Z71傲朋学习网

15.假定一个结构类型的定义为“struct Bint a[8]char* b;};,则该类型的大小为         36    字节。Z71傲朋学习网

16.假定一个结构类型的定义为“struct Dint aunionint bdouble c;};D*d[3];};,则该类型的大小为  24   字节。Z71傲朋学习网

17.假定要动态分配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数组,则使用的语句为   r=new Worker[n];    Z71傲朋学习网

18.假定要访问一个结构x中的由a指针成员所指向的对象,则表示方法为 *(x.a)      Z71傲朋学习网

19.假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为 *(p->b)    Z71傲朋学习网

Z71傲朋学习网

二、给出下列程序运行后的输出结果Z71傲朋学习网

以下结果中空格以ˉ’表示Z71傲朋学习网

1.#include<iomanip.h>Z71傲朋学习网

void main(){Z71傲朋学习网

int a[8]=7,9,11,13,3,8,15,17};Z71傲朋学习网

int *p = aZ71傲朋学习网

forint i =0i<8i + +){Z71傲朋学习网

cout<<setw5<< * p + +Z71傲朋学习网

if((i +1%4 = =0cout<<endlZ71傲朋学习网

Z71傲朋学习网

Z71傲朋学习网

ˉˉˉˉ7ˉˉˉˉ9ˉˉˉ11ˉˉˉ13Z71傲朋学习网

ˉˉˉˉ3ˉˉˉˉ8ˉˉˉ15ˉˉˉ17Z71傲朋学习网

2.#include<iomanip.h>Z71傲朋学习网

void main(){Z71傲朋学习网

int a[5]=3,6,15,7,20};Z71傲朋学习网

int *p = aZ71傲朋学习网

forint i = 0i<5i + +Z71傲朋学习网

cout<<setw5<< * p + +Z71傲朋学习网

cout<<endlZ71傲朋学习网

fori =0i<5i + +Z71傲朋学习网

cout<<setw5<< * pZ71傲朋学习网

cout<<endlZ71傲朋学习网

Z71傲朋学习网

ˉˉˉˉ3ˉˉˉˉ6ˉˉˉ15ˉˉˉˉ7ˉˉˉ20Z71傲朋学习网

ˉˉˉ20ˉˉˉˉ7ˉˉˉ15ˉˉˉˉ6ˉˉˉˉ3Z71傲朋学习网

3.#include<iomanip.h>Z71傲朋学习网

void main(){Z71傲朋学习网

int a[8] =4,8,12,16,20,24,28,32};Z71傲朋学习网

int *p = aZ71傲朋学习网

doZ71傲朋学习网

cout<< *p << ’ ’Z71傲朋学习网

p + =3Z71傲朋学习网

whilep<a+8);Z71傲朋学习网

cout<<endlZ71傲朋学习网

Z71傲朋学习网

4 16 28Z71傲朋学习网

4.#include<iomanip.h>Z71傲朋学习网

void main(){Z71傲朋学习网

int x =20,y =40, * pZ71傲朋学习网

p =&xcout<< * p<< ’ ’Z71傲朋学习网

* p= x +10Z71傲朋学习网

p =&ycout<< * p<<endlZ71傲朋学习网

* p = y +20cout<< x << ’ ’ << y <<endlZ71傲朋学习网

Z71傲朋学习网

20 40Z71傲朋学习网

30 60Z71傲朋学习网

5.#include<iomanip.h>Z71傲朋学习网

int LAint * a,int n){Z71傲朋学习网

int s = 0Z71傲朋学习网

forint i =0i<ni + +Z71傲朋学习网

s + = a[i]Z71傲朋学习网

return sZ71傲朋学习网

Z71傲朋学习网

void main(){Z71傲朋学习网

int a[ ]=5,10,15,20,25,30};Z71傲朋学习网

int b =LAa,5);Z71傲朋学习网

int c =LAa+3,2);Z71傲朋学习网

cout<< b << ’ ’ << c << ’ ’ << b +2 * c<<endlZ71傲朋学习网

Z71傲朋学习网

75 45 165Z71傲朋学习网

6.#include<iomanip.h>Z71傲朋学习网

void LCint a,int b){Z71傲朋学习网

int x = aZ71傲朋学习网

a = bb = xZ71傲朋学习网

cout<< a << ’ ’ << b <<endlZ71傲朋学习网

Z71傲朋学习网

void main(){Z71傲朋学习网

int x =15,y =36Z71傲朋学习网

LCx,y);cout<< x << ’ ’ << y <<endlZ71傲朋学习网

Z71傲朋学习网

36 15Z71傲朋学习网

15 36Z71傲朋学习网

7.#include<iomanip.h>Z71傲朋学习网

void LFint & x, int y){Z71傲朋学习网

x = x + yZ71傲朋学习网

y = x + yZ71傲朋学习网

cout<<”x =”<< x <<”,y =”<< y <<endlZ71傲朋学习网

Z71傲朋学习网

void main(){Z71傲朋学习网

int x =5,y =8Z71傲朋学习网

cout<<”x =”<< x <<”,y =”<< y <<endlZ71傲朋学习网

LFx,y);Z71傲朋学习网

cout<<”x =”<< x <<”,y =”<< y <<endlZ71傲朋学习网

Z71傲朋学习网

x=5,y=8Z71傲朋学习网

x=13,y=21Z71傲朋学习网

x=13,y=8Z71傲朋学习网

8.#include<iomanip.h>Z71傲朋学习网

void LGint * & a, int & m){Z71傲朋学习网

a = new int[m]Z71傲朋学习网

int * p = aZ71傲朋学习网

forint i = 0i<mi + +Z71傲朋学习网

* p + + =2 * i +1Z71傲朋学习网

Z71傲朋学习网

void main(){Z71傲朋学习网

int * p, n =5Z71傲朋学习网

LGp,n);Z71傲朋学习网

forint i = 0i<ni + +Z71傲朋学习网

cout<< p[i]<< ’ ’Z71傲朋学习网

cout<<endlZ71傲朋学习网

delete[ ]pZ71傲朋学习网

Z71傲朋学习网

1 3 5 7 9 Z71傲朋学习网

9.#include<iomanip.h>Z71傲朋学习网

void LHint * a, int n){Z71傲朋学习网

int * p = a + n1Z71傲朋学习网

whliea<p){Z71傲朋学习网

int x = * aZ71傲朋学习网

* a = * pZ71傲朋学习网

* p = xZ71傲朋学习网

a + +p -;Z71傲朋学习网

Z71傲朋学习网

Z71傲朋学习网

void main(){Z71傲朋学习网

int * d = new int[5]Z71傲朋学习网

int iZ71傲朋学习网

fori = 0i<5i + +){Z71傲朋学习网

d[i]=2 * i +3Z71傲朋学习网

cout<<setw5<<d[i]<< ’ ’Z71傲朋学习网

Z71傲朋学习网

cout<<endlZ71傲朋学习网

LHd,5);Z71傲朋学习网

fori = 0i<5i + +){Z71傲朋学习网

cout<<setw5<<d[i]<< ’ ’Z71傲朋学习网

Z71傲朋学习网

cout<<endlZ71傲朋学习网

delete[ ]dZ71傲朋学习网

Z71傲朋学习网

ˉˉˉˉ3ˉˉˉˉ5ˉˉˉˉ7ˉˉˉˉ9ˉˉˉ11Z71傲朋学习网

ˉˉˉ11ˉˉˉˉ9ˉˉˉˉ7ˉˉˉˉ5ˉˉˉˉ3Z71傲朋学习网

10.#include<iostream.h>Z71傲朋学习网

struct WorkerZ71傲朋学习网

char name[15]/ /姓名Z71傲朋学习网

int age/ /年龄Z71傲朋学习网

float pay/ /工资Z71傲朋学习网

};Z71傲朋学习网

void main(){Z71傲朋学习网

Worker x =”weirong”,55,640};Z71傲朋学习网

Worker y, * pZ71傲朋学习网

y = xp =&xZ71傲朋学习网

cout<< y. name<< ’ ’ <<y. age<< ’ ’ <<y. pay<<endlZ71傲朋学习网

cout<< p>name<< ’ ’ << p>age+5<< ’ ’ << p>pay10<<endlZ71傲朋学习网

Z71傲朋学习网

weirong 55 640Z71傲朋学习网

weirong 60 630Z71傲朋学习网

11.#include<iostream.h>Z71傲朋学习网

include<string.h>Z71傲朋学习网

struct WorkerZ71傲朋学习网

char name[15]/ /姓名Z71傲朋学习网

int age/ /年龄Z71傲朋学习网

float pay/ /工资Z71傲朋学习网

};Z71傲朋学习网

void main(){Z71傲朋学习网

Worker xZ71傲朋学习网

char * t =”liouting”Z71傲朋学习网

int d =46float f =725Z71傲朋学习网

strcpyx. name, t);Z71傲朋学习网

x. age = dx. pay = fZ71傲朋学习网

cout<< x. name<< ’ ’ <<x. age<< ’ ’ <<x. pay<<endlZ71傲朋学习网

Z71傲朋学习网

liouting 46 725Z71傲朋学习网

三、写出下列每个函数的功能Z71傲朋学习网

1.#include<iostream.h>Z71傲朋学习网

void LIint n){Z71傲朋学习网

int * a = new int[n], * p = a + nZ71傲朋学习网

forint i =0i<ni + +cin>> a[i]Z71傲朋学习网

fori = n1i> =0i -)cout<< *(- p<< ’ ’Z71傲朋学习网

cout<< ’/ n’Z71傲朋学习网

delete [ ]aZ71傲朋学习网

Z71傲朋学习网

输入n个数并以相反的顺序显示出来。Z71傲朋学习网

2.#include<iostream.h>Z71傲朋学习网

void LKint a[ ], int n, int * & b, int& m){Z71傲朋学习网

float s =0int iZ71傲朋学习网

fori =0i<ni + +Z71傲朋学习网

s + = a[i]Z71傲朋学习网

s/= nZ71傲朋学习网

m = 0Z71傲朋学习网

fori =0i<ni + +Z71傲朋学习网

ifa[i]> = sm + +Z71傲朋学习网

b = new int[m]Z71傲朋学习网

int * p = bZ71傲朋学习网

fori =0i<ni + +Z71傲朋学习网

ifa[i]> = s* p + + = a[i]Z71傲朋学习网

Z71傲朋学习网

将数组a中大于平均数的元素存放到动态申请的数组b中,数组b的大小由m返回。Z71傲朋学习网

3/ /struct WorkerZ71傲朋学习网

/ /    char name[15]/ /姓名Z71傲朋学习网

/ /    int age/ /年龄Z71傲朋学习网

/ /    float pay/ /工资Z71傲朋学习网

/ /};Z71傲朋学习网

Z71傲朋学习网

Z71傲朋学习网

istream & operator>>istream& istr,Worker& x){Z71傲朋学习网

cout<<”请输入一个职工记录:姓名、年龄、工资”<<endlZ71傲朋学习网

istr>> x. name>> x.. age>> x.. payZ71傲朋学习网

return istrZ71傲朋学习网

Z71傲朋学习网

重载istream>>操作符以输入Worker结构对象。Z71傲朋学习网

4/ / struct StrNodeZ71傲朋学习网

/ /     char name[15]/ /字符串域Z71傲朋学习网

/ /     StrNode * next/ /指针域Z71傲朋学习网

/ /};Z71傲朋学习网

void QBStrNode * & f, int n){Z71傲朋学习网

ifn = = 0){f =NULLreturn;}Z71傲朋学习网

f =new StrNodeZ71傲朋学习网

cin>>f>nameZ71傲朋学习网

StrNode * p = fZ71傲朋学习网

whlie(- n){Z71傲朋学习网

p = p>next= new StrNodeZ71傲朋学习网

cin>>p>nameZ71傲朋学习网

Z71傲朋学习网

p>next=NULLZ71傲朋学习网

Z71傲朋学习网

创建有n个结点的StrNode类型的链表,并从键盘输入每个结点的name值。Z71傲朋学习网

5/ / struct StrNodechar name[15]StrNode * next;};Z71傲朋学习网

void QCStrNode * f){Z71傲朋学习网

whlief){Z71傲朋学习网

cout<< f>name<< ’ ’Z71傲朋学习网

f = f>nextZ71傲朋学习网

Z71傲朋学习网

Z71傲朋学习网

遍历链表并输出所有结点的name数据成员Z71傲朋学习网


 [h1]可能不正确 Z71傲朋学习网

版权声明

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系本站我们将配合处理!

分享: