您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > C++习题第02章-基本数据类型、运算符与表达式
第02章基本数据类型、运算符与表达式1.选择题(1)在32位机中,int型字宽为()字节。A)2B)4C)6D)8(2)下列十六进制的整型常数表示中,错误的是()。A)0xadB)0X11C)0xAD)4ex(3)设n=10,i=4,则执行赋值运算n%=i-1后,n的值是()。A)0B)1C)2D)3(4)若有a=2,b=4,c=5,则条件表达式ab?a:bc?a:c的值为()。A)0B)2C)4D)5(5)若有a=1,b=2,则表达式++a==b的值为()。A)0B)1C)2D)32.简答题(1)指出下列数据中哪些可作为C++的合法常数?(a)588918(b)0129(c)0x88a(d)e-5(e)″A″(f).55(g)’\\’(h)0XCD(i)8E7(j)π(2)指出下列符号中那些可作为C++的合法变量名?(a)ab_c(b)β(c)3xyz(d)if(e)cin(f)a+b(g)NAME(h)x!(i)_temp(j)main(3)根据要求求解下列各表达式的值或问题。(a)(int)3.5+2.5(b)(float)(5/2)2.4(c)21/2+(0xa&15)(d)设inti=10,则表达式i&&(i=0)&&(++i)的值是多少?该表达式运算结束后变量i的值为多少?(e)设inta=1,b=2,c=3;,求表达式ab!=c的值。(f)设inti=1;,则i++||i++||i++的值是多少?表达式运算结束后变量i的值是多少?(g)设inta,b;,求表达式(a=1,a++,b=1,a&&b++)?a+1:a+4的值。(h)设intx=5;,求表达式x+=x-=x*x的值。(i)设intx=0,y=2;,则语句if(x=0)y++;执行完毕后变量y的值是多少?(j)设inta=2,b=3;,执行表达式c=b*=a-1后变量c的值是多少?(k)写出判断字符型变量s1的值为’0’~’9’的正确的C++表达式。(l)若给定条件表达式(N)?(c++):(c--),写出与N功能等价的表达式。3.读程序写结果(1)设有以下程序段,请根据要求回答相应问题。Inta,b,c,x;a=2;b=3;c=7;d=19;x=d/b%a;x=d%c+b/a*5+5;(2)设有以下程序段,请根据要求回答相应问题。Inta,b,c;a=b=c=0;a=(++b)+(++c);a=b=c=0;a=(b--)+(--c);(3)写出与下列数字表达式相对应的C++表达式。(a)a2+2ab+b2(b)4/3πR3(c)5/9(F-32)(d)a≤b≤c(4)#includeiostream.hvoidfunc(intx,inty=10,intz=20);voidmain(){func(11,12,13);func(11);func(11,12);}voidfunc(intx,inty,intz){coutx+y+zendl;}(5)#includeiostream.hviodmain(){intx,y=5;If(x=y!=0)cout″x=″xendl;elsecout″x=″x++endl;coutendl;}4.编程题(1)编写程序,提示用户输入三角形的三条边长,判断该三角形是否为直角三角形,若是则输出结果以及三角形面积。(2)编写程序,求解各种数据类型的存储长度并显示出来,在其中找出存储长度最大和最小的两种数据类型并输出。(3)编写程序输入一个华氏温度,将其转换为摄氏温度并输出。已知华氏稳定转换为摄氏度的计算公式如下:C=(F-32)*5/9其中,F为华氏温度,C为摄氏温度。(4)编写程序输入一个十进制表示的正整数,将其转化为二进制表示并输出结果。习题参考答案第1章C++语言概述1.填空题(1)函数说明,函数体(2)声明区,主程序区,函数定义区(3)多态性(4)namespace,using(5)std(6)cin,(7)//(8)对数据的操作2.判断题(1)对(2)错(3)错(4)错(5)错3.改错题(1)没有函数体,应改为voidmain(){};(2)语句没有分号,应改为usingnamespacemyspace;(3)cout和操作符共同完成输出的功能,应改为coutInputyourname:;(4)应改为#includeiostream.h4.简答题(略)5.编程题(略)第2章基本数据类型、运算符与表达式1.选择题(1)B(2)D(3)B(4)D(5)B2.简答题(1)(a)、(c)(e)、(f)、(g)、(h)、(i)(2)(a)、(g)、(i)、(j)(3)(a)5.5(b)0(c)20(d)0,0(e)1(f)1,2(g)3(h)-40(i)2(j)3(k)s1='0'&&s1='9'(l)N!=03.读程序写结果(1)0,15(2)(1、1、1),(-1、-1、-1)(3)(a)a*a+2*a*b+b*b(b)4.0/3.0*3.1415926*R*R*R(c)5.0/9.0*(F-32)(d)b=a&&b=c(4)364143(5)x=14.编程题(略)第3章C++的控制语句1.选择题(1)B(2)A(3)A(4)C(5)A2.判断题(1)错(2)对(3)对(4)错(5)错3.读程序写结果(1)122333444455555(2)1121123211234321123454321(3)j的值为0;i的值为2;4.编程题(略)第4章函数1.填空题(1)void(2)静态全局变量,static(3)函数重载(4)inline(5)递归函数(6)宏定义命令,文件包含命令,条件编译命令2.判断题(1)错(2)错(3)错(4)错(5)错(6)对(7)错(8)错(9)对(10)对3.读程序写结果(1)x=7,y=4x=9,y=5(2)34.56101(3)162228(4)1215182124(5)2,1,4,1,3,2,1,4.简答题(略)5.编程题(略)第5章构造数据类型1.选择题(1)C(2)D(3)A(4)B(5)C2.判断题(1)错(2)对(3)对(4)错(5)错3.读程序写结果(1)153(2)42256810(3)65535,21(4)419(5)6904(6)432104.编程题(略)第6章类和对象1.填空题(1)类,对象,类(2)数据成员,成员函数(3)不能(4)private,protected,public,private(5)成员函数(6)friend(7)类名,作用域运算符(8)对象名.成员名,指针变量名-成员名,(*指针变量名).成员名(9)构造,析构,构造,析构(10)常量数据,引用数据(11)全局,数据类型,所属的类(12)常成员,只读(13)成员,友元(14)类数据成员,类成员函数(15)this(16)浅拷贝2.选择题(1)C(2)C(3)B(4)C(5)B(6)C(7)D(8)B(9)C(10)D(11)A(12)C(13)D(14)D(15)B3.改错题(1)man1.salary=1000.00;不能在类外访问类的私有成员(2)floatr=0;和floatc=0;类本身是抽象的,不能在类的定义体中给其数据成员赋值}后缺少分号“;”(3)成员函数voidsetdata(floatx1,floaty1,floatr);没有实现(4)构造函数名point()应与类名同名,为Point没有头文件包含#includeiostream.h4.读程序写结果题(1)x=0,y=0x=100,y=200(2)x=100,y=200x=1000,y=2000t=3.14(3)Sta::fun2()=10s.fun2()=11r.a=20(4)Constructor1called!x=0Constructor2called!x=100Destructorcalled!Destructorcalled!(5)575.简答题(略)6.编程题(略)第7章继承和派生1.填空题(1)继承(2)基类,派生类(3)private,protected,public,private(4)不可访问,保护,公有(5)私有(6)单(一),多(重)(7)赋值兼容规则(8)静态,动态(9)抽象类2.选择题(1)B(2)A(3)B(4)C(5)B(6)A(7)D(8)B(9)B(10)B(11)D(12)B3.改错题(1)本题的错误主要是数据成员的访问权限问题:基类的私有成员在派生类中不可访问,如fb()函数中的a3=30;语句;类的私有和保护成员在类外不能访问,如main函数中的x.a2=20;.a3=30;,y.a2=200;,y.a3=300;,y.b2=2000;和y.b3=3000;语句。(2)本题的错误主要是成员函数的访问权限问题:由于派生类Derived是基类Base的保护派生类,所以基类中的私有成员变成派生类的不可访问成员,而基类的保护和公有成员则变成派生类的保护成员。对于类的不可访问和保护成员在类外是不能访问的,故main函数中的语句obj.funl();,obj.fun2();和obj.fun3();是错误的。4.读程序写结果题(1)d=110b=190d=110d=110(2)d=110b=190d=110b=90(3)基类B1的构造函数被调用基类B3的构造函数被调用基类B2的构造函数被调用派生类D的构造函数被调用派生类D的析构函数被调用基类B2的析构函数被调用基类B3的析构函数被调用基类B1的析构函数被调用(4)ABCDD(5)ABDD(6)AABDD(7)ABCDD(8)5255.简答题(略)6.编程题(略)第8章运算符重载1.填空题(1)函数重载(2)重载为类的成员函数,重载为类的友元函数(3)Operator(4)1,2(5)友元2.选择题(1)B(2)D(3)A(4)D(5)B(6)C(7)C(8)C3.简答题(略)4.编程题(略)第9章模板1.填空题(1)类模板,函数模板(2)类,对象(3)数据类型(4)fun(5)2.选择题(1)C(2)B(3)C(4)B(5)D3.简答题(略)4.编程题(略)第10章文件1.填空题(1)FILE,stdio.h(2)stdio.h,fopen,fclose(3)顺序,随机(4)cin,,cout,(5)ios(6)fstream,open,close(7)文件指针的当前位置,文件开头,文件尾2.选择题(1)B(2)B(3)A(4)D(5)B(6)D(7)C(8)B(9)A(10)B3.简答题(略)4.编程题(略)第11章string类与标准模板库STL1.填空题(1)字符数组,string类(2)string(3)容器,迭代器,算法(4)顺序,关联(5)指针(6)函数模板2.简答题(略)3.编程题(略)第12章异常处理1.填空题(1)throw,try,catch(2)多(3)数据类型(4)catch(…)(5)相反2.判断题(1)错(2)对(3)错(4)错(5)错3.简答题(略)4.编程题(略)
本文标题:C++习题第02章-基本数据类型、运算符与表达式
链接地址:https://www.777doc.com/doc-4299748 .html