7秋硕士研究生C语言程序设计试题A.pdf
I/6 中国地质大学 北京)2007年秋硕士研究生 C+语言程序设计试卷 A 卷)考试形式:闭卷考试考试时间:120分钟研究生学号姓名得分题号一二三四五总分得分一、简答题 每小题 3分,共 30分)1、C+语言有那些主要特点?2、C+语言有哪些基本数据类型?3、什么叫声明语句?那些说明的变量为局部变量?又那些说明的变量为全局变量?4、什么叫内存单元的地址?什么叫指针变量?5、什么叫函数的实参?什么叫函数的形参?II/6 6、什么叫类?什么叫对象?7、class类类型中,构造函数应具有那些特征?8、类定义体中,有些函数之前有关键字friend的意义是什么?9、在类定义体中,说明成员的访问权限为public、private和 protected三个关键字的作用是什么?请分别简述之。10、C+语言里,有那些是静态联编实现多态性的?III/6 二、数据与运算 每小题 2分,共 20分)1.若 int x=2,y=0。则表达式,*p=&y。则经过 x+=y=2,*p=+x+y的运算之后,coutx “”y,y=1。则经过语句 x=(y。的运算,则 x,y的结果值各是什么?5 5 5.若 char x=c,y=0 x20。int z(0 。z =x -=y-3。x 0 x63 0 x46 则 cout xASCII code is z endl。的输出结果是什么?FASCII code is706.若 int a,b,c。则经过 a=1,b=a+=1,*(p-3+=2 。运算之后,则数组a各元素的值是什么?1,2,5,5,5,5,5,2,18.若说明 int a=2。double b(999.99。则表达式(a*sizeof(b*a 的值是什么?128 9.若 struct MyData int a。float b。char c6。MyDatax=10,1.0f,“ab”。,*y=&x。则经过 x.c1+,x.c0+=0 x20,(y-b+=+x.a-2。运算,x 的各分量结果是什么?11,10.0f,“c”。IV/6 10.若定义 union MyUnionchar x2。int y。(设 int占 4个字节,说明 MyUnion MyKey,*pKey=&MyKey。pKey-y=515,pKey-x0=0。则表达式pKey-y 的结果是什么?x0=3 x1=2 x0=0 512 三、给出下列程序的运行输出结果 *cp+=-x+y+;*dp+=x y。#include“stdio.h”void main(void int a=2,b=1,c=1,d=2;t(a,b,&c,&d;printf(%d,%d,%d,%d n,a,b,c,d;答案:。2、#include iostream.h double T estArray(double*b,int Size double s(0。b+。Size-。for(int i=0。i s+=bi-1。b3=0。return(s。void main(void double a5=1.1,2.1,3.1,4.1,5.1,r=TestArray(a,5。V/6 cout Result=r 。r=0。for(int i=0。i r+=ai。cout r=r。void main(char str6=a,b,c,d,e,0。cout static char text128。int len=0。while(*(pstr+len!=0 len+。for(int i=len-1。i=0。i-textlen-i-1=*(pstr+i。textlen=0。return(text。答案:。四、程序填空题 填上适当内容。class CComplex private:double real,imag。public:CComplex(double r=0,double i=0 【1】real=r。imag=i。CComplexoperator+(CComplex x。CComplex operator-(CComplexx。【2】CComplex(VI/6 。【3】CComplexCComplex:operator+(CComplex x return CComplex(【real+x.real,imag+x.imag。【5】CComplexCComplex:operator-(CComplex x return CComplex(real-x.real,imag-x.imag 。答案:【1】【2】【3】【4】【5】【6】五、编程题共 20分)根据下列牛顿迭代公式:可以求解a 的平方根的近似解。请编程求解当a=2和 a=5时的平方根,要求精度为108。