南昌大学0607-2c++试卷.docx_第1页
南昌大学0607-2c++试卷.docx_第2页
南昌大学0607-2c++试卷.docx_第3页
南昌大学0607-2c++试卷.docx_第4页
南昌大学0607-2c++试卷.docx_第5页
已阅读5页,还剩7页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

试卷编号: ( A )卷课程名称: C+语言程序设计 适用班级: 研究生 非计算机专业 姓名: 学号: 班级: 专业: 学院: 系别: 考试日期: 题号一二三四五六七八九十总分累分人 签名题分30302020 100得分考生注意事项:1、本试卷共 11 页,请查看试卷中是否有缺页或破损。如有立即举手报告以便更换。 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。一、 填空题(每空1分,共30分) 得分请将正确答案写在答题纸上评阅人 1、 假设在程序中 a、b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式的表达式是( D )。A. 1.0/a*b*c B. 1/(a*b*c) C. 1/a/b/(float)c D. 1.0/a/b/c2、 x0 | y=5的相反表达式为( B )。A. x=0 | y!=5 B. x0 | y!=5 D. x0 & y=53、 下列的符号常量定义中,错误的定义是( A )。A. const M=10; B. const int M=20; C. const char ch; D. const bool mark=true;4、 在下面的字符数组定义中,哪一个有语法错误。( D )。A. char a20=”abcdefg”; B. char a=”x+y=55.”;C. char a15; D. char a10=5;5、 派生类的对象对它的基类成员中( A )是可以访问的。A.公有继承的公有成员; B.公有继承的私有成员;C.公有继承的保护成员; D.私有继承的公有成员。南昌大学研究生20062007学年第二学期期末考试试卷6、 组定义为int a45;, 引用*(a+1)+2表示( B )。A、a10+2 B、 a数组第1行第2列元素的地址C、a01+2 D、 a数组第1行第2列元素的值7、 假设所有变量均为整型,表达式 (a=2,b=5,ab?+a:+b,a+b)的值是( B )A、7 B、8 C、9 D、2 8、 在C+中,关于下列设置参数默认的描述中,( C )是正确的。A.不允许设置参数的默认值;B.设置参数默认值只能在定义函数时设置;C.设置参数默认值时,应该是先设置右边的再设置左边的;D.设置参数默认值时,应该全部参数都设置;9、 若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是( C )A、a=a+b,b=a-b,a=a-b; B、t=a,a=b,b=t;C、a=t,t=b,b=a; C、t=b;b=a;a=t;10、 在C+语言程序中( B )A、 函数的定义可以嵌套,但函数的调用不可以嵌套B、 函数的定义不可以嵌套,但函数的调用可以嵌套C、 函数的定义和函数的调用均不可以嵌套D、 函数的定义和函数的调用均可以嵌套 11、 在下面循环语句中内层循环体S语句的执行总次数为( D )。 for(int i=0; in; i+) for(int j=i; jGetValue() D. x.GetValue()25、 类中定义的成员默认为( B )访问属性。A. public B. private C. protected D. friend26、 类的构造函数是在定义该类的一个( C )时被自动调用执行的。A. 成员函数 B. 数据成员 C. 对象 D. 友元函数27、 类的析构函数是一个对象被(B )时自动调用的。A. 建立 B. 撤消 C. 赋值 D. 引用28、 在一个被调用函数中,关于return语句使用的描述,( C )是错误的。A. 被调用函数中可以不用 return语句;B. 被调用函数中可以使用多个return语句;C. 被调用函数中,如果有返回值,就一定要有return语句;D. 被调用函数中,一个return语句可返回多个值给调用函数。29、 已知指针p的指向如图所示,则表达示+*p的值是( C )。A20 B30 C21 D31a0a4a3a2a11020304050P30、 假定AB为一个类,则执行 “AB r1=r2;”语句时将自动调用该类的( D )。A. 无参构造函数 B. 带参构造函数 C. 赋值重载函数 D. 拷贝构造函数二、 程序阅读题(每题 5 分,共 30 分) 得分请将答案写在答题纸上评阅人 1、 #include void main() int x=5;switch(2*x-3) case 4: coutx ;case 7: cout2*x+1 ;case 10: cout3*x-1 ; break;default: coutdefaultendl;coutswitch end.endl; 11 14 switch end.2、 #include void main() for(int i=1,s=0;i20;i+) if(i%2=0 | i%3=0) continue;couti ;s+=i;coutsendl; 1 5 7 11 13 17 19 733、 #include class CE private:int a,b;int getvalue () return (ab? a:b); public: int c;void SetValue(int x1,int x2, int x3) a=x1; b=x2; c=x3;int GetValue (); ;int CE:GetValue () int d=getvalue ();return (dc? d:c);void main()int x=5,y=12,z=8;CE ex, *ep=&ex;ex.SetValue(x,y,z);coutex.GetValue()SetValue(x+y,y-z,20);coutGetValue()endl;12204、 #includevoidfun(int*x,int*y)cout*x,*yendl;*x=10;*y=20;main()intx=1,y=2;fun(&y,&x);coutx,yendl;2,120,105、 #includeclass Sampleint x;public:void setx(int i) x=i;int getx() return x*x;void main() Sample *p;Sample A3;A0.setx(5);A1.setx(6);A2.setx(7);p=&A0;for(int j=0;j3;j+,p+)coutgetx() ;coutendl;25 36 496、 #include#includemain()chars80 =“abc259edf486gh”,d80;inti,j;for(i=0,j=0;si!=0;i+)if(si= 0&si= 9)dj=si;j+;dj=0;cout dendl;259486三、 指出程序或函数的功能(每题5分,共 20 分) 请将答案写在答题纸上得分评阅人 1、 #include#include#includevoid main() int i=10,a;while(i0) a=rand()%990+10; / rand()为产生随机数函数int j, k=int(sqrt(a)+1e-5); /sqrt(x)为求x的平方根函数 for(j=2; jk) couta ; i-;随机打印1000以内的10个质数2、 #includevoid main()int i=0; int s=0; do i+=2;s+=i*i;while(s1000);coutn=i-2endl;从0开始的偶数的平方和第一次大于1000的最后一个偶数3、 #include#includemain()chara=clanguage,t;inti,j,k;k=strlen(a);for(i=0;i=k-2;i+=2)for(j=i+2;jaj) t=ai;ai=aj;aj=t;coutaendl;将下标为偶数的字符按ASCII码从小到大排列后组成新的字符串后输出4、 #include#define N 10main() int aN=1,5,8,23,56,78,99,128,467,503, i, x; cout input a number:x; i=N-2; while( i=0 ) if (aix) ai+1=ai; i-; else break; ai+1=x; for(i=0;i=N-1;i+) coutsetw(5)aiendl;将输入的数按大小插入数列中,并除去最大的一个四、 程序设计题(每题10分,共20分) 得分评阅人 1、 编一程序求出满足不等式的最小n值并输出。#include using namespace std;double sum(int n)if(n=1) return 1;return 1.0/n+sum(n-1);void main()int n=1;while(n+)if(sum(n)=5) break;coutnendl; 2、 定义复数类,使之能实现复数的输入、加法、输出#include using namespace std;class compdouble real;double image;public:comp(double r=0,double i=0);void input(double r,double i);comp & add(comp com);void output();comp:comp(double r,double i)real=r;image=i;void comp:input(double r,double i)real=r;image=i;comp & comp:add(comp com)comp temp;temp.real=real+com.real;temp.image=image+com.image;return temp;void comp:output()coutint(real)+int(image)iendl;void main()comp x(10,20),y,z;/定义x,y,z三个复数类对象,并将x的实部置初值10,虚部置初值为20y.input

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论