C语言程序设计第3次作业
“C++语言程序设计” 第三次作业
PAGE
PAGE 5
“C++语言程序设计”课程作业
第三次作业
填空题1.假定p所指对象的值为28,p+1所指对象的值为62,则* p + +的值为 28 2.假定p所指对象的值为28,p+1所指对象的值为62,则* + + p的值为 62 3.假定p所指对象的值为25,p+1所指对象的值为50,则执行“(*p)+ +;”语句后,p所指对象的值为 26 4.假定p所指对象的值为25,p+1所指对象的值为50,则执行“*(p+ +);”语句后,p所指对象的值为 50 5.假定a是一个指针数组,则a+i所指对象的地址比a地址大 4 * i 字节。6.假定a是一个一维数组,则a[i]的指针访问方式为 * (а+ i) 。7.假定a是一个二维数组,则a[i] [j]的指针访问方式为 * (a[i]+ j )或*( *( a+ i) + j 。8.假定a是一个一维数组,则a[i]对应的存储地址(以字节为单位)为 a+ i *sizeof(a[0]) 。9.假定一个二维数组为a[M] [N],则a[i] [j]对应的存储地址(以字节为单位)为 a+(i*N+j)*sizeof(a[i][j]) 。10.假定一个二维数组a[M] [N],则a[i]的地址值(以字节为单位)为 a+(i*N)*sizeof(a[0][0])或a+i*sizeof(a[i]) 。11.假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大 4 字节。12.假定a为一个字符数组名,则元素a[8]的字节地址为 a+8 。13.假定a为一个整型数组名,则元素a[4]的字节地址为 a+16 。14.假定一个结构类型的定义为“struct A{int a,b;short c;A*d;};”,则该类型的大小为 14 字节。15.假定一个结构类型的定义为“struct B{int a[8];char* b;};”,则该类型的大小为 36 字节。16.假定一个结构类型的定义为“struct D{int a;union{int b;double c;}; D*d[3];};”,则该类型的大小为 24 字节。17.假定要动态分配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数组,则使用的语句为 Worker*r=newWorker[n] 。18.假定要访问一个结构x中的由a指针成员所指向的对象,则表示方法为 *(x.a) 。19.假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为 *(p->b) 。
给出下列程序运行后的输出结果1.#includevoid main(){int a[8]={7,9,11,13,3,8,15,17};int *p = a;for(int i=0;i<8;i++){cout<
2.#includevoid main(){int a[5]={3,6,15,7,20};int *p = a;for(int i = 0;i<5;i++)cout<
3.#includevoid main(){int a[8] ={4,8,12,16,20,24,28,32};int *p = a;do{cout<< *p << ' ';p+=3;}while(pvoid main(){int x=20,y=40, *p;p =&x;cout<< *p<< ' ';* p= x +10; p =&y;cout<< *p<int LA(int