地质大学(北京)2005年硕士研究生C++言程序设计试题A.doc

地质大学(北京)2005年硕士研究生C++言程序设计试题A.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
地质大学(北京)2005年硕士研究生C言程序设计试题A

2005年研究生C++程序设计试题 一、简答题(每小题3分,30分) 什么叫变量? 什么叫常量? 请枚举指针运算中赋值运算的几种基本形式。 int *px, *py, n; px=n; py=px; px=py+n; px=py-n; px=0; 在C++语言中,控制语句主要有哪些? if , if~else, switch, for,while, do while, break,return,goto,continue, 在C++语言中,请给出结构体和联合体的异同点。 请说出函数参数中,引用与复制传递参数方式两者之间的异同点。 什么叫类?什么叫对象? 纯虚拟函数定义的一般形式是什么? virtual 数据类型〉 函数名称(形式参数列表)= 0; 什么叫友元?友元的意义是什么? 请说明class类类型和struct结构体类类型两种数据类型的异同点。 重载有哪些?为什么要重载? 二、数据与运算(每小题2分,共20分) 若int x=0, y=1; 则表达式 (y = x2)? x/(++y +5): ++y 的运算结果是什么? 1 若int x=8, y(10), *p=x ; 则经过 y += x+2, *p=++x+y- - ; 的运算之后, coutx “ ” yendl; 的输出结果是什么? 29 19 若unsigned char x=024, y =0xfa, z=48; 则表达式 (x ~y) ^ z 的值是什么? ~y z x~y x ~y z 52 若int x(1), y=2, z(3), *pw=z ; 则经过语句y+=*pw+1, x+=++y, *pw += x -y; 的运算, 则 x, y, z 的结果值各是什么? 8 7 4 若char x =’a’, y= 0x20; int z; y = z = x – y ; 则 cout z 的ASCII码为 y endl; 的输出结果是什么? 0x61 0x20 0x41 ‘A’ 65的ASCII码为 A 若int a[4]={1,2 ,3,4}; 则a[2]=a[0]+*(a+3)+a[1]++ 运算之后,a的各元素存放的是什么? 1 3 7 4 若说明int a[8]={7,6,5,4,3,2,1,0}, *p=a[7]; 则经过表达式 *(p-1) += ( *p+=1, *(p - = 6) +=3, *(p+4) += 1 ); 运算之后,则数组a各元素的值是什么? 10 9 5 4 3 3 1 1 若说明 int a=4; long x(0) ; 则表达式 (a1) * sizeof(x) 的值是什么? 8 若struct MyData { int a; float b ; char c[3]}; MyData x ={ 1, 2.0f, “123”}, y, *z=y ; 经过 *z=x ; z-b = x.a +( ++y.c[0] ) ; 运算,则y的各分量结果是什么? 1 51.0f “223” 若定义union MyUnion{char x[2]; int y;}; (设int占4个字节), 说明 MyUnion MyKey, *pKey=MyKey; pKey-y=259; pKey-x[0]= ’0’ ; 则表达式 (*pKey) . y 的结果是什么? 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 304 三、给出下列程序的运行输出结果(每小题6分,共30分) 1、 #include “iostream.h” int t(int x,int y,int v,int *w) { v= - -x + y++; *w= x - y; return(v); } void main(void) { int a=1,b=2,c=3,d=4; t(a,b,c

文档评论(0)

wnqwwy20 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档