c++程序设计测试(带答案)及习题

上传人:飞****9 文档编号:127628623 上传时间:2020-04-04 格式:DOC 页数:47 大小:421.51KB
返回 下载 相关 举报
c++程序设计测试(带答案)及习题_第1页
第1页 / 共47页
c++程序设计测试(带答案)及习题_第2页
第2页 / 共47页
c++程序设计测试(带答案)及习题_第3页
第3页 / 共47页
c++程序设计测试(带答案)及习题_第4页
第4页 / 共47页
c++程序设计测试(带答案)及习题_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《c++程序设计测试(带答案)及习题》由会员分享,可在线阅读,更多相关《c++程序设计测试(带答案)及习题(47页珍藏版)》请在金锄头文库上搜索。

1、C+程序设计测试及习题1.一个最简单的C+程序,可以只有一个( )。 (C)(a) 库函数 (b) 自定义函数 (c) main函数 (d) 空函数2.用C+语言编制的源程序要变为目标程序必须要经过( )。 (D)(a) 解释 (b) 汇编 (c) 编辑 (d) 编译3. C+程序中的简单语句必须以( )结束。 (B)(a) 冒号 (b) 分号 (c) 空格 (d) 花括号4.有说明 int a=0; double x=5.16; 以下语句中,( )属于编译错误。 (C)(a) x=a/x; (b) x=x/a; (c) a=a%x; (d) x=x*a;5. 执行C+程序时出现的“溢出”错误

2、属于( )错误。 (D)(a) 编译 (b) 连接 (c) 运行 (d) 逻辑6.下列选项中,全部都是C+关键字的选项为( )。 (C) (a) while IF Static (b) break char go(c) sizeof case extern (d) switch float integer7. 按C+标识符的语法规定,合法的标识符是( )。 (A)(a) _abc (b) new (c) (d) “age“8下列选项中,( )不能作为C+的分隔符。 (A)(a) 标识符 (b) ; (c) : (d) +9下列正确的八进制整型常量表示是( )。 (B)(a) 0a0 (b) 0

3、15 (c) 080 (d) 0x1010下列错误的十六进制整型常量表示是( )。 (C)(a) 0x11 (b) 0xaf (c) 0xg (d) 0x1f11 在下列选项中,全部都合法的浮点型数据的选项为( )。 (B)(a) -1e3.5 15. 2e-4 (b) 12.34 -1e+5 0.1E-12(c) 0.2e-2 -12345. e-5 (d) 5.0e(1+4) 0.1 8e+212下列正确的字符常量为( )。 (D)(a) “a” (b) name (c) a (d) 10113下列选项中,( )不能交换变量a和b的值。 (D)(a) t=b; b=a; a=t; (b)

4、a=a+b; b=a-b; a=ab;(c) t=a; a=b; b=t; (d) a=b; b=a; 14关于下列语句叙述错误的是( )。 (A)int i=10, *p=&i;(a) p的值为10 (b) p指向整型变量i(c) *p表示变量i的值 (d) p的值是变量i的地址15有以下变量声明,下面不正确的赋值语句是( )。 (B)int a=5, b=10, c; int *p1 = &a, *p2 = &b; (a) *p2 = b ; (b) p1 = a ;(c) p2 = p1 ; (d) c = *p1 *( *p2 ) ;16有以下变量声明,下面正确的语句是( )。 (B)

5、 int a=10, b; int &pa=a, &pb=b; (a) &pb = a; (b) pb = pa; (c) pb = &pa; (d) *pb = *pa;17执行下面语句序列后,a和b的值分别为( )。 (B)int a = 5 , b = 3 , t ;int &ra = a ;int &rb = b ;t = ra ; ra = rb ; rb = t ;(a) 3和3 (b) 3和5 (c) 5和3 (d) 5和518. 在下列运算符中,( )优先级最高。 (D)(a) = (b) *= (c) + (d) *19.在下列运算符中,( )优先级最低。 (D)(a) !

6、(b) & (c) != (d) ? :20设 int i=1, j=2; 则表达式 i+j 的值为( )。 (C)(a) 1 (b) 2 (c) 3 (d) 421设 int i=1, j=2; 则表达式 +i+j 的值为( )。 (D)(a) 1 (b) 2 (c) 3 (d) 422在下列表达式选项中,( )是正确。 (C)(a) +(a+) (b) a+b (c) a+b (d) a+b23已知 int i=0, j=1, k=2; 则逻辑表达式 +i|-j&+k 的值为( )。 (B)(a) 0 (b) 1 (c) 2 (d) 324. 执行下列语句后,x的值是( ) (D)。int

7、 x, y ;x = y = 1; + x | + y ;(a) 不确定 (b) 0 (c) 1 (d) 225. 执行下列语句后,y的值是( )。 (C)int x, y ;x = y = 1; + x | + y ;(a) 不确定 (b) 0 (c) 1 (d) 226.设X为整型变量,不能正确表达数学关系 1X5 的C+逻辑表达式是( )。 (A)(a) 1 X 5 (b) X=2|X=3|X=4(c) 1X&X5 (d) !(X=5)27. 已知 int x=5; 执行下列语句后,x的值为( )。 (C)x += x -= x * x; (a) 25 (b) 40 (c) 40 (d)

8、 2028. 设 int a=1, b=2, c=3, d=4; 则以下条件表达式的值为( )。 (A)a b ? a : c d ? c : d(a) 1 (b) 2 (c) 3 (d) 429. 以下逗号表达式的值为( )。 (D)( x = 4 * 5, x * 5 ), x + 25 (a) 25 (b) 20 (c) 100 (d) 451.1 把下列数学表达式写成c+算术表达式1. 2. xxx(ax+b)+c+d+e3. ln(1+|10) 4.5. cot 6. lg(a2+ab+b2) 1.2 用关系表达式或逻辑表达式表示下列条件 1. i 被j整除 2. n是小于正整数k的

9、偶数 3. 1x10 4. x,y其中有一个小于z5. y 100,10,并且 y 10,1006. 坐标点(x, y)落在以(10, 20)为圆心,以35为半径的圆内 7. 三条边a,b和c构成三角形 8. 年份Year能被4整除,但不能被100整除或者能被400整除1.3 阅读下列程序,写出执行结果1.#include void main() int a = 1, b = 2, x, y; cout a+b endl; cout a % b b;? y = x- & b; cout x endl; cout y endl; 2#include void main() int x,y,z,f

10、; x = y = z = 1; f = -x | y- & z+; cout x = x endl; cout y = y endl; cout z = z endl; cout f = f endl; 3#include #include void main() int a=123; int &ra=a; int *pa=&a; coutsetw(5)decasetw(5)octrasetw(5)hex*paendl; 1.4 思考题 1什么叫数据类型?数据的类型定义有什么作用? 2数据对象在C+中有什么不同的访问方式?请编写一个程序验证之。 3普通数据类型变量和指针类型变量的定义、存储、

11、使用方式上有何区别?请编写一个程序验证之。 4什么叫数据对象的引用?对象的引用和对象的指针有什么区别?请用一个验证程序说明之。 5为了约束只能对数据对象的值做读操作,C+采用什么方式?请做出简要归纳。 6什么叫表达式?表达式值的类型由什么因素决定?使用不同运算符连接以下3个变量,请写出5个以上获得值等于1的表达式。 int a=1, b=2; double x=0.5;1.5 编程题 1.输入一个三位整数,将它反向输出。2.输入平面上某点横坐标x和纵坐标y,若该点在由图1表示的方块区域内,则输出1;否则,输出0。 图1 正方形3.输入三个整数,求出其中最小数(要求使用条件表达式)。1.6 操作

12、题建立简单控制台程序。使用VC6开发环境来调试以下源程序。 #include #include void main() double a, b, c, s, area; cout a b c; / 输入三角形的三条边 s = ( a + b + c ) / 2.0; area = sqrt( s * ( s-a ) * ( s-b ) * ( s-c ) ); / 求三角形的面积 cout area = area endl; (1)根据操作过程填写以下表格。 内容 操作说明或结果分析 进入VC6 在D盘建立一个名为“ex1.cpp”的控制台程序 输入代码 编译连接程序 运行程序 (2)记录编辑

13、运行程序所需时间。 (3)采用以下各组数据输入测试,记录输出结果。分析原因,思考如何解决? 3 4 5 3 4 12 0 6 2 -2 7 9(4)修改程序。 a) 把double 改为 int,重新编译程序,会出现什么编译信息?什么原因? b) 把s和area定义为double可以消除编译错误吗?为什么? c) 采用以下数据输入测试,记录输出结果,分析原因。增加输出a、b、c变量值的语句,观察不同输入时变量值的变化。 3.45 5.618 4.012选择题1已知 int i=0, x=1, y=0 ; 在下列选项使i的值变成1的语句是( )。 (C) (a) if( x & y ) i + ; (b) if( x = y ) i + ; (c) if( x | y ) i + ; (d) if( !x ) i + ;2设有函数关系为,下面选项中能

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 管理论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号