C++程序设计(上)练习-答案.doc
《C++程序设计(上)练习-答案.doc》由会员分享,可在线阅读,更多相关《C++程序设计(上)练习-答案.doc(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流一、二、三、四、五、 C+程序设计(上)练习-答案【精品文档】第 22 页六、 单项选择题1. 编写C+程序一般需经过的几个步骤依次是()A. 编辑、调试、编译、连接B. 编辑、编译、连接、运行C. 编译、调试、编辑、连接D. 编译、编辑、连接、运行答案:B2. 设有定义int i;double j5;,则10+i+j值的数据类型是()A. intB. doubleC. floatD. 不确定答案:B3. 有关C+编译指令,以下叙述正确的是()A. C+每行可以写多条编译指令B. #include指令中的文件名可含有路径信息C. C+的编译指令可以以#或
2、/开始D. C+中不管if后的常量表达式是否为真,该部分都需要编译答案:B4. 在下列成对的表达式中,运算结果类型相同的一对是()A. 7.02.0和7.02B. 52.0和52C. 7.02和72D. 82和6.02.0答案:A5. 在C+中不返回任何类型的函数应该说明为()A. intB. charC. voidD. double答案:C6. 决定C+语言中函数的返回值类型的是()A. return语句中的表达式类型B. 调用该函数时系统随机产生的类型C. 调用该函数时的主调用函数类型D. 在定义该函数时所指定的数据类型答案:D7. 在C+中,函数原型不能标识()A. 函数的返回类型B.
3、函数参数的个数C. 函数参数类型D. 函数的功能答案:D8. 在int a=3,int *p=&a;中,*p的值是()A. 变量a的地址值B. 无意义C. 变量p的地址值D. 3答案:D9. 一个函数功能不太复杂,但要求被频繁调用,则应把它定义为 ()A. 内联函数B. 重载函数C. 递归函数D. 嵌套函数答案:A10. 适宜采用inline定义函数情况是()A. 函数体含有循环语句B. 函数体含有递归语句C. 函数代码少、频繁调用D. 函数代码多、不常调用答案:C11. 在函数定义中的形参属于()A. 全局变量B. 局部变量C. 静态变量D. 寄存器变量答案:B12. C+语言中所有在函数中
4、定义的变量,连同形式参数,都属于()A. 全局变量B. 局部变量C. 静态变量D. 函数答案:B13. 下列有关重载函数的说法中正确的是()A. 重载函数必须具有不同的返回值类型B. 重载函数参数个数必须相同C. 重载函数必须有不同的形参列表D. 重载函数名可以不同答案:C14. 使用地址作为实参传给形参,下列说法正确的是()A. 实参是形参的备份B. 实参与形参无联系C. 形参是实参的备份D. 实参与形参是同一对象答案:D15. 在C+中,使用流进行输入输出,其中用于屏幕输入()A. cinB. cerrC. coutD. clog答案:A16. 若有以下定义,则说法错误的是()int a=
5、100,*p=&a;A. 声明变量p,其中*表示p是一个指针变量B. 变量p经初始化,获得变量a的地址C. 变量p只可以指向一个整型变量D. 变量p的值为100答案:D17. C+对C语言做了很多改进,即从面向过程变成为面向对象的主要原因是()A. 增加了一些新的运算符B. 允许函数重载,并允许设置缺省参数C. 规定函数说明符必须用原型D. 引进了类和对象的概念答案:D183.可替换#define PI 3.1415926的语句是( )A. float PI 3.1415926; B. const float PI=3.1415926;C. const PI(3.1415926);D. con
6、st 3.1415926;答案:B19如果一个函数没有返回值,则应选择下列说明符中的( )。A. double B. void C. int D. char答案:B208.下列哪种默认参数的声明是不正确的(C)A. int max(int a,int b,int c,int d=0);B. int max(int a,int b,int c=0,int d=0);C. int max(int a=0,int b,int c=0,int d=0);D. int max(int a,int b=0,int c=0,int d=0);21包含哪种语句的函数不能声明为内联函数(A)A.循环 B.变量自
7、增自减 C.if.else D.变量声明22已知:const char *ptr ; 那么ptr 应该是( A )。A、 指向字符串常量的指针B、 指向字符串的常量指针C、 指向字符的常量的指针D、 指向字符常量的指针2311、在C+中,关于下列设置参数默认值的描述中,正确的是( C ). A. 不允许设置参数的默认值 B.设置参数默认值只能在定义函数时设置 C.设置参数默认值时,应该是先设置右边的再设置左边的 D.设置参数默认值时,应该全部参数都设置 七、 填空题1. 开发一个C+语言程序的步骤通常包括编辑、_、连接、运行和调试。答案:编译2. 假设int a=1,b=2;则表达式(+a/b
8、)*b-的值为_。答案:23. 下面程序的输出结果为_。#include void main()int num=2,i=6;doi-;num+;while(-i);coutnumendl;答案:54. 由const修饰的对象称为_。答案:常对象5. 表达式cout7. C+程序的源文件扩展名为_。答案:cpp8. 在#include命令中所包含的头文件,可以是系统定义的头文件,也可以是_的头文件。答案:自定义9. C+语言中如果调用函数时,需要改变实参或者返回多个值,应该采取_方式。答案:传地址或引用10. 若函数的定义处于调用它的函数之前,则在程序开始可以省去该函数的_语句。答案:声明11.
9、 在C+中有两种参数传递方式:传值和_。答案:传引用或地址12. 在函数前面用_保留字修饰时,则表示该函数表为内联函数。答案:inline13. C+是通过引用运算符_来定义一个引用的。答案:&14. 局部对象和全局对象中,在同一程序中_生存期最长。答案:全局对象15布尔类型标识符是()答案:bool16若要使用C+标准类库,需要指定相应的命名空间,所用的语句是。答案:using namespace std;17使用new为int数组动态分配10个存储空间是_。答案:new int10;18在已经定义了整型指针ip后,为了得到一个包括10个整数的数组并由ip所指向,应使用语句_。答案:int
10、*ip=new int10;198. C+中语句const char * const p=“hello”;所定义的指针p和它所指的内容都不能被_。答案:修改20 如果要把PI声明为值为3.14159类型为双精度实数的符号常量,该声明语句是_。答案:const double PI(3.14159);或者const double PI3.14159;21面向对象程序设计的3个主要性质是:_、继承、_。答案:封装,多态22使用cin和cout进行输入输出操作的程序必须包含头文件_答案:iostream.h三、改错题1. #include void main()int i,*p;i=10;*p=i;c
11、out*pendl;答案:*p=i;指针即地址没有被赋值。修改p=&i;2. 以下程序实现交换a,b变量的值,请用下横线标出错误所在行并给出修改意见。#include void swap(int &a,int &b)a=a+b;b=a-b;a=a-b;void main()int a=19,b=15;couta=a,b=bendl;swap(&a,&b);couta=a,b=bendl;答案:swap(&a,&b);函数的形参是变量的引用,调用时的实参应该是地址。修改swap(a, b);四、完成程序题(本大题共5小题,每小题4分,共20分)1. 下面是一个三角形三边,输出其面积C+程序,在下
12、划线处填上正确的语句。#include #include void area()double a,b,c;coutc&a+cb&c+ba)double l=(a+b+c)/2;_coutThe area is:sendl;elsecoutErrorabc;,double s=sqrt(l*(l-a)*(l-b)*(l-c);解析输入三个边的长度,由公式得出三角形的面积double s=sqrt(l*(l-a)*(l-b)*(l-c);2. 下面是一个输入半径,输出其面积和周长的C+程序,在下划线处填上正确的语句。#include _;_;void main()double rad;coutra
13、d;double l=2.0*pi*rad;double s=pi*rad*rad;coutn The long is:lendl;coutThe area is:sendl;答案:using namespace std,#define pi 3.14159解析进行输入或输出要引入iostream, 所以using namespace std;从标点看没有分号,所以使用宏定义,#define pi 3.14159。3. 程序实现大写字母转换成小写字母。#include void main()char a;_;cina;if(_)a=a+i;couta=A & a=Z解析大写字母变小写字母相差3
14、2,需要对i声明并初始化。大写字母变小写字母。要判断字符是大写字母。4. 在下面程序横线处填上适当内容,使程序执行结果为:S=2S=5S=9#include void sum(int i)static int s;_;couts=sendl;void main (void)int i;for (i=0;_)sum(i);答案:s=s+i+2;,i3,i+5. 下面程序段用来求三角形的面积,首先判断三边不符合组成三角形时,返回-1,符合时输出三角形面积。#include #include double area(double a,double b,double c)if(_)return -1;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 程序设计 练习 答案
限制150内