c++复习题及答案_第1页
c++复习题及答案_第2页
c++复习题及答案_第3页
c++复习题及答案_第4页
c++复习题及答案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

c++复习题及答案1.在C++程序中必须包含名为main的函数。2.若a、b均为int型变量,将10赋给a,20赋给b,则对应的cin语句正确的输入方式为:cin>>a>>b;3.在C++语言中,注释可用"/*"、"*/"形式表示,也可用"//"形式表示。C++编译器在编译程序时会跳过注释,不进行处理。4.在C++程序中,严格区分大小写字母。一个C++源程序有且仅有一个main函数。在C++程序中,注释只能位于一条语句的后面。一个C++程序总是从main函数开始执行。5.C++语言相对于C语言的最根本的变化是引入了类和对象的概念。6.C++是既是面向对象的程序设计语言又是结构化程序设计语言。7.合法的标识符为DK3_8。8.字符串是常量,字符是变量。"A"与'A'是不同的,而"A"与"A"是相同的。9.下面这两段程序的执行效果是一致的。空语句是只有一个分号的语句,它其实什么也不干。语句的构成需要分号。10.合法的用户标识符组为abc和_0123。s=1;i=1;do{s=s*i;i++;}while(i<=10);C.在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操作。A.do-while的循环体至少无条件执行一次。D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来。B.for(表达式1;1;表达式3)。循环执行的次数是无限次。B.只能在循环体内和switch语句体内使用break语句。B.x>=0时什么也不输出。C++中,Cout永远不会执行D选项。最多可以输出100个非负整数。要实现交换x和y的值并正确返回结果,可以使用C选项的函数swap(int*x,int*y){intt;t=*x;*x=*y;*y=t;}。A、B、D选项都无法正确实现交换。语句"int(*p)();"的含义是C选项,即p是一个指向函数的指针,该函数的返回值是一个整型。说明int(*p)[4]中的标识符p是一个指向具有4个整型元素的一维数组的指针,即C选项。在结构体变量的成员引用中,D选项是错误的,应该是stud.birthday.year。类的析构函数可以重载,因此B选项不正确。执行语句z=2*(N+Y(5+1));后,变量z的值是C选项,即52。根据宏定义,Y(5+1)将被展开为((N+1)*(5+1)),即24。因此,z=2*(3+24+1)=56。50.类的构造函数的作用是B,即类的初始化。51.下列说法正确的是B,即内置函数在编译时是将该函数的目标代码插入每个调用该函数的地方。1.程序的三种基本的控制结构是:顺序结构、选择结构、循环结构。2.假定一个结构类型定义为:“structD{inta;union{intb;doublec;};D*d[2];};”,则该类型的大小为20字节。3.C++语言中的每条基本语句以分号作为结束符,每条复合语句以右花括号作为结束符。4.关系表达式x+y>5的相反表达式为x+y<=5。5.下面的程序段中循环体的执行次数是4。a=10;b=0;do{b+=2;a-=2+b;}while(a>=0);6.下面程序段的运行结果为“***”。x=2;do{cout<<"*";x--;}while(!x==0);7.定义内置函数的方法是在函数的返回值类型之前增加关键字inline。8.假定a为一个整型数组名,则元素a[4]的字节地址为&a[4]。9.假定一个一维数组的定义为“chara[8];”,则该数组所含元素的个数为8,所占存储空间的字节数为8。10.已知inta[3][2]={3,2,1};则表达式“a[0][0]/a[0][1]/a[0][2]”的值是3/2/1。11.若用数组名作为函数调用时的实参,则实际上传递给形参的是数组首元素的地址。12.如果一个函数无返回值,定义它时函数类型应是void。13.预处理命令以#开头。14.假定a是一个二维数组,则a[i][j]的指针访问方式为*(a[i]+j)或*(*(a+i)+j)。15.C++在编译时,可以将所调用函数的代码直接嵌入到主调函数中,而不是将流程转出去。这种嵌入到主调函数中的函数称为内联函数。16.使用内联函数可以节省运行时间,但却增加了目标代码的长度。17.C++允许用同一函数名定义多个函数,这些函数的参数个数和参数类型不同。这就是函数的重载。1.cout<<"a,b两个正整数中的最大数为:"<<max(a,b)<<endl;return0;}intmax(inta,intb){if(b>a)a=b;returna;}2.include<iostream>usingnamespacestd;intmain(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}cout<<a<<endl;return0;}3.include<iostream>usingnamespacestd;intmain(){inti,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<=3;j++){if(j%2)continue;x++;}x++;}cout<<"x="<<x<<endl;return0;}4.include<iostream>usingnamespacestd;intmain(){inti;for(i=1;i<=5;i++){if(i%2){cout<<"*";}else{continue;}cout<<"#";}cout<<"$\n";return0;}答案:1.去掉了多余的空格和换行符,将函数名和参数括号放在同一行,将函数体的左括号放在新的一行。2.去掉了多余的空格和换行符,将代码块的左括号放在新的一行。3.去掉了多余的空格和换行符,将代码块的左括号放在新的一行,将字符串常量用双引号括起来。4.去掉了多余的空格和换行符,将代码块的左括号放在新的一行,将字符串常量用双引号括起来。5.改写后:include<iostream>usingnamespacestd;intmain(){intI,j,a=0;for(I=0;I<2;I++){for(j=0;j<4;j++){if(j%2)break;a++;}a++;}cout<<a<<endl;return0;}6.改写后:include<iostream>usingnamespacestd;intmain(){charc;while((c=getchar())!='?')putchar(++c);return0;}7.改写后:include<iostream>usingnamespacestd;intmain(){intI;for(I=1;I<=5;I++){switch(I%2){case0:I++;cout<<"#";break;case1:I+=2;cout<<"*";break;default:cout<<"\n";}}return0;}8.改写后:include<iostream>usingnamespacestd;inta=5;intmain(){inta=10,b=20;{inta=0,b=0;for(inti=1;i<6;i++){a+=i;b+=a;}}cout<<a<<''<<b<<endl;return0;}9.改写后:include<iostream>usingnamespacestd;intk=1;voidf(intm){m+=k;k+=m;{chark='B';cout<<k-'A'<<'\n';}cout<<m<<','<<k<<'\n';}intmain(){i

温馨提示

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

评论

0/150

提交评论