好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

天津大学c++期末考试样卷及答案.docx

12页
  • 卖家[上传人]:鲁**
  • 文档编号:553260791
  • 上传时间:2022-08-18
  • 文档格式:DOCX
  • 文档大小:21.77KB
  • / 12 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 天津大学C++期末考试样卷及答案一. 单项选择题(每题1分,共20分) 1.C++源程序文件的扩展名是 BA).C B).CPP C).DLL D).EXE2. 下列属于C++合法的字符常量是 C A)'\97' B)“A” C)'\t' D) “\0” 3.设const int B=6; int a[12]; 则下列错误的是 ______AA)B+=3; B)a[5]=B+3; C)int x[B+3]; D)a[B+3]=25;4. a、b均为int型且b≠0,则表达式a-a/b*b的值为 C A)0 B)  a C)a被b除的余数部分 D)a被b除商的整数部分5. 设int a=5,b=6,c=7; 则cout<<((a+b)

      A) 3 B) 12 C) 40 D) 108.下列关于C++函数的叙述中,正确的是 A)每个函数至少要有一个形参   B)C每个函数都必须有返回值C)函数在被调用之前必须先声明   D)函数不能自己调用自己 9.下面有关重载函数的说法中正确的是 C A) 重载函数必须具有不同的返回值类型  B) 重载函数形参个数必须不同C) 重载函数必须有不同的形参表    D) 重载函数名可以不同10. 表达式strcmp("box","boss") 的值是 A A) 正整数 B) 负整数 C) 0 D) 不确定的数 11.设int a[3][4],*p=a[0]; 以下不能正确访问数组元素a[i][j]的是 A A) *(a+i+j) B) *(*(a+i)+j) C) *(a[i]+j) D) p[4*i+j] 12.当一个派生类公有继承一个基类时,基类的所有public成员成为派生类的 D A) 友元 B) private成员 C) protected成员 D) public成员13.设int a=3,*p=&a; 则*p的值是 D A) 变量a的地址值 B) 无意义 C) 变量p的地址值 D) 314.设int i=5,f=15; 则执行语句 if(i=0) f-=5; 后i和f的值分别是 C 。

      A) 5,15 B) 5,10 C) 0,15 D) 0,10 15.设int *p;以下对new运算符的正确使用形式是 C A) p=new a[10]; B) *p=new int[10];C) p=new int[10]; D) p=new int[5]={1,2,3,4,5,6};16.下列关于动态联编的描述错误的是 CA) 动态联编在运行时选择联编函数 B) 动态联编也称为动态多态性C) 函数重载和运算符重载属于动态联编 D) 动态联编可用来选择虚函数17.设二叉树的高度为k(k≥0),若其包含的结点总数为2k+1-1,则该二叉树是 B A) 完全二叉树 B) 满二叉树 C) 二叉排序树 D) 普通的二叉树18.设用一个大小为6的一维数组存储顺序循环队列,若当前front和rear的值分别为3和5,当从队列中删除一个元素,再加入两个元素后,front和rear的值分别是 D A)5和0 B)4和7 C)无法完成要求的操作 D)4和119.以下关于关键字的描述中错误的是 C A)关键字可由元素的一个或多个数据项组成 B) 可以按关键字进行查找C) 不同元素的关键字值可以相同 D) 每个元素的关键字必须是唯一的20.直接插入排序在被排序的数据 B 时效率较高。

      A) 完全无序 B) 基本有序 C) 逆序排列 D) 最大值与最小值相差不大 二.写出以下程序的运行结果(每题4分,共20分) 1. #include void main(){int a[8]={12,25,33,5,8,16,51,22},i;int *p=a;for(i=0;i<4;i++) cout<<*(p+i*2)<int fun(){ static int d2=0,d1=1;int t=d2+d1;d1=d2; d2=t;return d2;}void main(){for(int i=0;i<6;i++) cout<class A{public:A(){ a=b=10; }A(int i,int j) { a=i; b=j; }void operator+=(const A &x){ a+=x.a; b+=x.b; }void print();private:int a,b;};void A::print(){ cout<<"a="<< a<<",b="<< b<void main(){int x=3,y=3;switch(x%2) {case 1: switch (y%x){case 0:cout<<"first\n";case 1:cout<<"second\n";break; default: cout<<"hellow\n";}case 2:cout<<"third\n"; }}程序运行的结果是:firstsecond third5. #include #include void fun(char *str){char t;int i,j;for(i=1;i=0&&tclass point{private:int x,y;public:point(int x1=0,int y1=0){x=x1;y=y1;}virtual void move(int x1,int y1){x+=x1;y+=y1;}virtual void disp(){cout<<"点:("<move (4,4);p.disp ();cout<disp ();cout<

      下面程序的功能是生成该数列的前20项并存入一个数组x,然后将这20个数存入文本文件data.txt #include #include void main() {int x[20],i;x[0]=0;x[1]=1i=2;do{x[i]= ; //x[i-1]+x[i-2]x[i+1]=abs(x[i-1]-x[i]);i= ; //i+2}while( ); //i<19;if(!fout) return;for( ;i<20 ; j++){ //i=0fout<class Cstack{ //定义字符栈 char s[80];int top; //栈顶指示器 public:Cstack() { top=-1 ;} //把栈置为空 void push(char ch){ //将ch入栈 if(top==79) return;s[++top]= ch ; }char pop(){ //出栈并返回栈顶元素值(栈空时返回0) if(top==-1)return 0;return ; //s[top--]}};void itos(int num, char *str){ //将num转换为字符串并存入strCstack s1;while(num!=0){s1.push( ); // ’0’+num%10num/=10;}char ch;for(int i=0;(ch=s1.pop())!=0;i++) ; //str[i]=chstr[i]=0;}void main(){ char s[80]; itos(1234,s); cout<

      #include void DelSpace(char *s){for(int i=strlen(s)-1;i>=0;i--) if(s[i]!=' ') break; //删除后面的空格 s[ ]=0; //i+1char *p=s;while(*s!=0 ) s++; //&&*s==’ ‘ //删除前面的空格 strcpy( ); //p,s}4.以下程序输出数组a中重复出现最多的那个数以及该数重复出现的次数和首次出现的位置。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.