C++语法练习(牛客题库)——练习1

news2025/2/21 23:05:55

1.

下列程序的运行结果是 1*2  3*4,那么横线处缺失程序可以是()

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

#include <iostream>

using namespace std;

class Test{

public:

    Test(int a, int b) {

        x = a;

        y = b;

    }

    ~Test() {}

    void print() {

        cout << x << "*" << y << "  ";

    }

private:

    int x;

    int y;

};

int main() {

    Test t[2] = {_______};

    for(int i = 0; i < 2; i++)

        t[i].print();

    return 0;

}

A.1,2,3,4

B.(1,2),(3,4)

C.Test(1,2),Test(3,4)

D.1234

答案:C

t是一个数组,返回类型为Test的数组。B选项改为{1,2},{3,4}

2.

下面程序的输出结果是?

1

2

3

4

5

6

7

8

#include<iostream.h>

int main(){

    int n[][3]={10,20,30,40,50,60};

    int (*p)[3];

    p=n;

    cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl;

    return 0;

}

A:10,30,60

B:10,30,50

C:10,20,30

D:20,40,60

答案:

C

知识点:指针数组  vs   数组指针 (二维数组)

a[3]声明的是一维数组,则(*p)[3]也是一维数组,只不过p为指向二维数组的指针,p=n,则:

p[0][0] = n[0][0] = 10

*(p[0]+1) = n[0][1] = 20

(*p)[2] = *(*(p+0)+2) = n[0][2] = 30

3.

有如下C++代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#include <iostream>

using namespace std;

void fun(int *p1, int *p2, int *t)

{

    t = (int *)malloc(sizeof(int));

    *t = *p1 + *(p2++);

}

int main()

{

    int a[2] = { 1,2 };

    int b[2] = { 10,20 };

    int *t = a;

    fun(a, b, t);

    cout << *t << endl;

}

输出是多少?

答案:

1

知识点1:++

函数中的自增用的是p2++,是先执行语句再进行自增1,所以函数中的*t结果是1+10,而不是1+20

知识点2:实参和形参

main里面的t和fun里面的t是两个不同的变量,调用fun传参时只不过是将前者的值拷贝给了后者,在fun中对t的任何操作都不会影响main中的t,所以cout << *t << endl;还是输出t指向的原来的值,即1

4.

在下列的符号常量定义中,正确的定义格式为( )?

A:#define M1

B:const int M2 20;

C:#define M3 10

D:const char mark;

答案:

C

知识点:常量定义

A表示定义了一个预处理变量;B语句错误;C正确;D定义一个常量要初始化,必须赋值

5.

构造函数的名字必须与类名相同,其返回类型缺省为void类型。

A:正确

B:错误

答案:

B

 知识点:构造函数没有返回值

构造方法是一种特殊的方法,具有以下特点。 

(1)构造方法的方法名必须与类名相同。 

(2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。 

(3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。 

(4)构造方法不能由编程人员调用,而要系统调用。 

(5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构  造器,这个构造器不执行任何代码。 

(6)构造方法可以重载,以参数的个数,类型,或排列顺序区分。

6.

以下代码的输出为()

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

#include <iostream>

using namespace std;

struct A {

    A() { std::cout << "A"; }

};

struct B {

    B() { std::cout << "B"; }

};

class C {

public:

    C() : a(), b() { std::cout << "C"; }

private:

    B b;

    A a;

};

int main() {

    C();

}

A:ABC

B:CBA

C:BAC

D:ACB

答案:

C

知识点 :结构体的调用顺序

结构体的调用顺序是根据类中声明的顺序来

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/701832.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【运维知识进阶篇】zabbix5.0稳定版详解6(zabbix自动化监控:自动发现+自动注册+监控项目主动式)

本篇文章继续给大家介绍zabbix自动化监控&#xff0c;包括zabbix自动注册&#xff0c;zabbix自动发现&#xff0c;将主机添加进服务端之后需要做的监控项目更改为主动式&#xff0c;zabbix说多不多&#xff0c;说少不少&#xff0c;其实远没有监控那么简单&#xff0c;更深层次…

【运维知识进阶篇】zabbix5.0稳定版详解7(zabbix分布式监控:使用场景+功能详解+快速部署+基本使用)

如果你有几百上千台客户端的数据需要上报给zabbix服务端&#xff0c;即便是你做了主动注册&#xff0c;监控项目主动式&#xff0c;那服务端压力还是会很大&#xff0c;所以我们可以考虑zabbix分布式监控。 zabbix proxy可以代替zabbix server收集性能和可用性数据&#xff0c…

【HTTP 协议1】图文详解 HTTP 请求和应答报文

文章目录 前言一、认识 HTTP 协议1, 什么是 HTTP 协议2, HTTP 协议的报文格式 二、HTTP 请求报文1, 认识方法1.1, GET 和 POST 辨析(重点)1.2, 其他方法 2, 认识 URL3, 认识 Header3.1, Host3.2, Content-Length3.3 Content-Type3.4, User-Agent3.5, Referer3.6, Cookie(重点) …

源代码|大屏可视化系统 数据可视化

代码拿来即可用&#xff0c;按照下文步骤配置&#xff0c;傻瓜式教程&#xff0c;几分钟即可搞定。 需要代码源文件&#xff0c;请移步至gzh【李桥桉】&#xff0c;s辛【可视化】。 可视化效果图 运行环境&#xff1a;VScode 文末附《大屏可视化系统》源代码获取方式~ 一、打…

数据结构--顺序栈的实现

数据结构–顺序栈的实现 顺序栈的定义 顺序栈的定义代码实现 #define MaxSize 10 typedef struct {ElemType data[MaxSize]; //静态数组存放栈中元素int top; //栈顶指针 } SqStack;int main() {SqStack S; //声明一个顺序栈(分配空间)//... ...return 0; }一些常见操作 初始…

大数据的金融数据读取及分析(-)

由于考虑商业数据问题&#xff0c;我们用开源数据做演示 一.tushare开源数据 Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工到数据存储的过程&#xff0c;能够为金融分析人员提供快速、整洁、和多样的便于分析的数据&#x…

postgresql_internals-14 学习笔记(七)—— parallel 并行

不完全来自这本书&#xff0c;把查到的和之前的文章重新汇总整理了一把。 一、 核心参数 几个容易弄混的进程和参数&#xff0c;关系图如下 1. max_worker_processes 整个实例可以同时运行的Background workers Processes最大数量默认值为8&#xff0c;设置为0表示禁用并行&…

STM32与树莓派:嵌入式系统开发与教育计算的区别

STM32和树莓派是两种不同的硬件平台&#xff0c;用于不同的应用领域。 STM32&#xff1a;STM32是一系列由STMicroelectronics&#xff08;意法半导体&#xff09;生产的32位ARM Cortex-M微控制器。它们被广泛用于嵌入式系统开发&#xff0c;包括消费电子产品、工业自动化、汽车…

CNN池化总结(最大池化与平均池化)

目录 概念 两种主要池化方式 最大池化 平均池化 尺寸变化过程 池化优点 总结 概念 池化&#xff08;Pooling&#xff09;&#xff0c;用于减小卷积神经网络&#xff08;CNN&#xff09;或其他类型神经网络的特征图&#xff08;Feature Map&#xff09;的尺寸&#xff0…

java 网络教学平台Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

一、源码特点 JSP 网络教学平台 是一套完善的系统源码&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;以及相应配套的设计文档&#xff0c;系统主要采用B/S模式开发。 研究的基本内容是基于Web的网络教学平台&…

【SWAT水文模型】SWAT-CUP参数率定过程问题总结

SWAT-CUP参数率定过程问题总结 Q1 SWAT-CUP中calibrate按钮一直是灰色无法点击?1.1 问题描述1.2 解决办法 Q2 “SWAT”不是内部命令1.1 问题描述1.2 解决办法 参考 Q1 SWAT-CUP中calibrate按钮一直是灰色无法点击? 1.1 问题描述 软件是从2W2E上下载的SWAT-CUP2019&#xff…

XILINX ZYNQ 7000 BOOT

参考UG585 内容 下面这张图是ZYNQ启动的关键流程 1.POR表示硬件复位&#xff0c;不关心Power-up也就是说冷热启动都行。Nor-POR就是非POR复位&#xff0c;有点软件应用复位的意思。 2.POR复位会复位所有寄存器。并且采集 HardWare boot pin的状态。这点很关键&#xff0c; 3.是…

mysql一些常用函数

group_concat()函数首先根据group by指定的列进行分组&#xff0c;并且用分隔符分隔&#xff0c;将同一个分组中的值连接起来&#xff0c;返回一个字符串结果。 group_concat([distinct] 字段名 [order by 排序字段 asc/desc] [separator 分隔符])-- 指定排序方式和分隔符 se…

STM32F407 滴答定时器

介绍STM32F407滴答定时器配置方法、使用方式&#xff0c;封装延时函数得到精确的时间。 【1】介绍滴答定时器的章节 STM32F407参考手册中第10章介绍了滴答定时器的校准值。 M4权威指南介绍滴答定时器的章节&#xff0c;M3权威指南中与M4权威指南中的介绍一样。 【2】滴答定时…

Windows 引导启动流程详述(BIOS-UEFI)

Windows 启动流程详述 BIOS 和 UEFI 的由来BIOS 存在哪里BIOS 程序的功能BIOS 和 UEFI 的发展由来如何查看当前计算机是什么方式引导启动呢&#xff1f;Linux 下如何查看 BIOS 大小&#xff1f; 启动流程详述使用 BIOS 进行系统启动流程使用 UEFI 进行系统启动流程SEC阶段PEI阶…

专项练习15

目录 一、选择题 1、如果要打开名为 “window2"的新窗口&#xff0c;可以通过&#xff08;&#xff09; 2、下列事件哪个不是由鼠标触发的事件&#xff08;&#xff09; 3、Angular指令中哪种作用域可以继承父scope 4、下列哪些事件不支持冒泡?&#xff08;&#xff09;…

微信小程序学习记录2 案例分享<智能家居UI>

效果 思路 页面分为4块 前三块 采用同样的class 替换三张矢量图 绑定三个单片机返回的JSON值 最后一块又分为左右两部分 左边部分 采用switch组件 绑定三个事件 右边部分则是普通的文字

记录生产mysql死锁解决过程

最近生产上每个星期都会有几次死锁告警异常&#xff0c;今天终于给处理了&#xff0c;待后续观察&#xff0c;记录下整个过程。 环境&#xff1a;springboot、mybatis、mysql(RC隔离级别) 表结构&#xff1a; CREATE TABLE table1 (id bigint NOT NULL AUTO_INCREMENT,prize…

ASP.NET Core MVC 从入门到精通系列文章(完)

随着技术的发展&#xff0c;ASP.NET Core MVC也推出了好长时间&#xff0c;经过不断的版本更新迭代&#xff0c;已经越来越完善&#xff0c;本系列文章主要讲解ASP.NET Core MVC开发B/S系统过程中所涉及到的相关内容&#xff0c;适用于初学者&#xff0c;在校毕业生&#xff0c…

redis高可用与持久化

文章目录 一、Redis 高可用1. 概念2. 高可用技术以及作用2.1 持久化2.2 主从复制2.3 哨兵2.4 集群 二、Redis 持久化1. 持久化的功能2. Redis 持久化方式 三、RDB 持久化1. 概述2. 触发条件2.1 手动触发2.2 自动触发2.3 其他自动发机制 3. 执行流程4. 启动时加载 四、AOF 持久化…