c++语言编程实例100题,C++填空、选择必练100题

本文提供了一组C++编程的填空和选择题,涵盖变量、运算符、流程控制、类与对象、继承、多态等多个核心概念。题目涉及了C++中的数据类型、逻辑运算、流程控制语句、函数重载、运算符重载、类的构造与析构、虚函数、继承与派生、多态性等多个方面,旨在帮助学习者巩固C++的基础知识和编程技巧。
摘要由CSDN通过智能技术生成

原标题:C++填空、选择必练100题

daf3fd4f072e65d1cf262ad2c5fc3948.png

填空题

1

C++语言在给出逻辑运算结果时,以1代表“真”,以0代表“假”,但在判断一个量是否为“真”时,以代表“真”

答案

非0

2

C++的标识符由字母、____________和数字组成,而且第一个字符不能为数字。

答案

下划线

3

为了避免在嵌套的条件语句if-else中产生二义性,C++规定:else子句总是与______配对。

答案

其前面最近的if。本题考查if else语句。C语言规定,else总是与它前面的最近的if配对。

4

表达式x=x+1表示成增量表达式为________。

答案

++x或x++

5

设float x=-3.2;调用函数floor(x)的结果为____

答案

-4.0 。y = floor(x)。

则y等于:不大于x的最大整数。

6

表达式 3+5%(4 – 5/2) 的计算结果是_____。

答案

4

7

设有语句 int i=2,j=3, 执行语句 cout<=j?i+j:i-j); 后输出的值是________

答案

-1

8

若有说明语句:int x = 3, y = 0; 则以下循环语句结束时, y的值为____。 for(;x!=0;x- -) y+=3;

答案

9

9

执行语句:cout<

答案

7

10

变量分为全局和局部两种,________变量没有赋初值时,将由系统自动置为0。

答案

全局

11

数组定义为 int a[4][5],则a[1]+3表示元素________的地址

答案

a[1][3]。a表示数组的首地址,可以把a数组看成是一个元素为一维数组的数组(把a看成一个由4个元素组成的数组,每个元素是一个由5个int型数组成的数组)。

a[i]和*(a+i)等价,所以a[i]+j和*(a+i)+j是a[i][j]的地址

12

C++语言中,变量的默认存储类型是______

答案

auto或自动变量。用auto(或省略)来区分说明的局部变量。当执行进入局部变量所在的块时,在栈上为变量分配存储,退出块时,存储单元被回收。

13

一个单目运算符作为类的成员函数重载时有个参数;如果作为独立函数重载,则有1个参数。

答案

0

14

若多个基类及其派生类中都定义了同名函数成员,要访问相应函数时,就需要在函数名前加上和类区分符

答案

基类名

15

在保护继承中,基类中的、保护成员是可见的。

答案

公有成员

16

引进虚基类的根本目的是为了消除

答案

二义性

17

AA operator +(AA x )表示为运算符重载。

答案

+

18

若要使用string类,需要引入的头文件是

答案

string.h

19

int n=0; while(n=1)n++; while循环执行次数是

答案

无限次

while(n=1) 中,是 n=1,而不是 n==1。

在 C 语言中,= 是赋值,==是判断。

20

重载的运算符保持其原有的___、优先级和结合性不变。

答案

操作数

21

编译时的多态性通过___函数实现。

答案

重载 .编译多态性,实现的方法主要通过函数的重载或运算符的重载

22

预处理语句有三种,分别是宏定义、文件包含和___

答案

条件编译

23

派生类的成员一般分为两部分,一部分是___,另一部分是自己定义的新成员。

答案

从基类继承的成员

24

C++中ostream的直接基类___

答案

ios

25

若函数的定义处于调用它的函数之前,则在程序开始可以省去该函数的___语句。

答案

声明

26

执行下列代码

int i=230;

cout <

程序的输出结果为___。

答案

i=e6

27

在C++中有两种参数传递方式即值传递和___传递

答案

地址

28

使用new为int数组动态分配10个存储空间是

答案

new和 delete动态开辟空间和删除空间。new int[10],注意不要写成new

int(10),使用小括号只能开辟一个空间,使用10来初始化该值。

29

在switch语句中,每个语句标号所含关健字case后面的表达式必须是

答案

常量表达式

30

已知语句:char *p=”Hello! ”,则语句cout<

答案

H

31

假定a是一个一维指针数组,则a+i表示数据元素a[i]的

答案

地址

32

含随机函数的表达式rand()%20的值在 区间内

答案

用rand()的返回值(一个0-65535之间的数)对20求余,求余的结果就是0-19。也就是0~(20-1)之间。

如果我们要产生10~20之间的随机数,可以rand()%((20-10)+1)+10

含义是,20-10是产生0~9,((20-10)+1)是产生0~10,在这个基础上。再加10,就是10~20

33

指针变量pv和pc定义为“void *pv =”Hello, word!”; char pc[30];”,要将pv值赋给pc,则正确的赋值语句是_______

答案

pc=( char* )pv

34

若int a=10,则执行表达式a+=a*=a-=a/3后a的值为

答案

98

35

以下程序中

void main()

{ int i=0;

while(i<10)

{ if(i<1) continue;

if(i==5) break;

i++;

}

}

则while循环的循环次数是

答案

break语句只能在循环体和switch语句体内使用,

  • 6
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值