553C++笔试题目(持续更新)

总目录

  • 1.rand()随机数函数
  • 2.函数模板(19年写一个二分查找函数模板用递归)

1.rand()随机数函数

是C标准库 <cstdlib> 中的一个随机数生成函数,用于生成伪随机数。它返回一个在0到RAND_MAX之间的整数,RAND_MAX是一个预定义的常量,通常是一个较大的整数值(至少32767)。

使用 rand() 函数之前,通常需要调用 srand() 函数来初始化随机数种子,以确保每次程序运行时都能生成不同的随机数序列。srand() 函数的参数是一个整数,通常使用当前时间作为种子,例如:

#include <cstdlib>
#include <ctime>int main() {// 使用当前时间作为随机数种子srand(time(0));// 生成一个随机数int random_number = rand();return 0;
}

需要注意的是,rand() 函数生成的随机数序列是伪随机的,因为它是根据种子值计算的,而种子值通常是由系统时间提供的,所以在同一秒钟内调用 rand() 生成的随机数是相同的。如果需要更复杂的随机数生成算法,可以考虑使用 <random> 头文件中的更高级的随机数库。

先用随机函数(rand)按列优先初始化一个3行4列的数组(数组中元素的范围是【1,9】),然后判断该数组中是否有鞍点(即是否存在既是行上最大又是列上最小的元素)

#include <iostream>
#include <cstdlib>
#include <ctime>using namespace std;// 初始化数组
void initializeArray(int array[][4], int rows, int cols) {srand(time(0)); // 使用当前时间作为随机数种子for (int j = 0; j < cols; ++j) {for (int i = 0; i < rows; ++i) {array[i][j] = rand() % 9 + 1; // 生成范围在1到9之间的随机数}}
}// 判断是否为鞍点
bool isSaddlePoint(int array[][4], int rows, int cols, int rowIndex, int colIndex) {int element = array[rowIndex][colIndex];// 检查是否为行上最大值for (int j = 0; j < cols; ++j) {if (array[rowIndex][j] > element) {return false; // 不是行上最大值,不是鞍点}}// 检查是否为列上最小值for (int i = 0; i < rows; ++i) {if (array[i][colIndex] < element) {return false; // 不是列上最小值,不是鞍点}}return true; // 既是行上最大又是列上最小,是鞍点
}int main() {int array[3][4];initializeArray(array, 3, 4);// 打印数组cout << "Array:" << endl;for (int i = 0; i < 3; ++i) {for (int j = 0; j < 4; ++j) {cout << array[i][j] << " ";}cout << endl;}// 判断是否存在鞍点bool hasSaddlePoint = false;for (int i = 0; i < 3; ++i) {for (int j = 0; j < 4; ++j) {if (isSaddlePoint(array, 3, 4, i, j)) {cout << "Saddle point found at position (" << i << ", " << j << "): " << array[i][j] << endl;hasSaddlePoint = true;}}}if (!hasSaddlePoint) {cout << "No saddle point found." << endl;}return 0;
}

2.函数模板(19年写一个二分查找函数模板用递归)

当然,请看下面的函数模板示例:

#include <iostream>
using namespace std;// 定义一个函数模板
template <typename T>
T maximum(T x, T y) {return (x > y) ? x : y;
}int main() {// 在模板函数中使用整数cout << "Maximum of 5 and 10 is: " << maximum(5, 10) << endl;// 在模板函数中使用浮点数cout << "Maximum of 3.5 and 7.8 is: " << maximum(3.5, 7.8) << endl;// 在模板函数中使用字符cout << "Maximum of 'a' and 'z' is: " << maximum('a', 'z') << endl;return 0;
}

这个例子中,maximum() 是一个函数模板,它可以比较不同类型的参数,并返回两者中的最大值。在 main() 函数中,我们分别使用了整数、浮点数和字符来调用 maximum() 函数模板,并输出了结果。在调用时,编译器会根据实参的类型自动生成对应的函数实例。

二分查找函数模板
以下是一个二分查找函数模板的示例:

#include <iostream>
#include <vector>
using namespace std;// 定义一个函数模板
template<typename T>
int binarySearch(const vector<T>& sortedArray, const T& key) {int left = 0;int right = sortedArray.size() - 1;while (left <= right) {int mid = left + (right - left) / 2;if (sortedArray[mid] == key) {return mid; // 找到了} else if (sortedArray[mid] < key) {left = mid + 1; // 在右半部分继续查找} else {right = mid - 1; // 在左半部分继续查找}}return -1; // 没有找到
}int main() {vector<int> numbers = {1, 3, 5, 7, 9, 11, 13, 15};int key = 7;int index = binarySearch(numbers, key);if (index != -1) {cout << "Element found at index: " << index << endl;} else {cout << "Element not found." << endl;}return 0;
}

这个示例中,binarySearch() 函数模板接受一个已排序的数组和一个要查找的关键字,并返回关键字在数组中的索引(如果存在),否则返回 -1。在 main() 函数中,我们使用一个已排序的整数向量调用了 binarySearch() 函数模板,并输出了结果。

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

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

相关文章

【前端】-初始前端以及html的学习

&#x1f496;作者&#xff1a;小树苗渴望变成参天大树&#x1f388; &#x1f389;作者宣言&#xff1a;认真写好每一篇博客&#x1f4a4; &#x1f38a;作者gitee:gitee✨ &#x1f49e;作者专栏&#xff1a;C语言,数据结构初阶,Linux,C 动态规划算法&#x1f384; 如 果 你 …

Vue开发实例(八)Vuex状态管理store

Vuex状态管理store 一、Vuex的安装与配置二、store使用方法1、基础使用2、提交变更3、getters使用4、在其他页面&#xff08;组件&#xff09;中显示5、modules多模块 做vue项目的时候&#xff0c; store状态管理器可以帮助我们完成一些数据的存储和管理&#xff0c;通俗理解是…

如何将任何文本转换为概念图(GC)

原文地址&#xff1a;how-to-convert-any-text-into-a-graph-of-concepts 使用 Mistral 7B 将任何文本语料库转换为知识图的方法 2023 年 11 月 10 日 使用递归 RAG 方法来实现具有多跳推理的 QnA&#xff0c;以回答基于大型文本语料库的复杂查询。 知识图增强生成与递归 R…

ResNet的特点?BN层的目的?模型验证的时候可以用BN吗?

ResNet&#xff08;残差神经网络&#xff09; 残差思想&#xff1a;主要目的是为了解决深度神经网络训练过程中的梯度消失和梯度爆炸问题&#xff0c;同时帮助网络更好地学习到特征表示&#xff0c;突出微小的变化&#xff0c;提高网络的性能和泛化能力。从而突出微小的变化 …

unity-urp:视野雾

问题背景 恐怖游戏在黑夜或者某些场景下&#xff0c;需要用雾或者黑暗遮盖视野&#xff0c;搭建游戏氛围 效果 场景中&#xff0c;雾会遮挡场景和怪物&#xff0c;但是在玩家视野内雾会消散&#xff0c;距离玩家越近雾越薄。 当前是第三人称视角&#xff0c;但是可以轻松的…

Python 的闭包,你知道多少?一起聊聊

你好&#xff0c;我是 shengjk1&#xff0c;多年大厂经验&#xff0c;努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注&#xff01;你会有如下收益&#xff1a; 了解大厂经验拥有和大厂相匹配的技术等 一、前言 看到了很多函数套函数的函数&#xff0c;总之对于 Java 的…

Java 继承、接口与抽象类教程

Java 继承、接口与抽象类教程 在Java编程中&#xff0c;继承、接口和抽象类是面向对象编程&#xff08;OOP&#xff09;的三大核心概念。它们提供了代码重用、多态性和扩展性的基础。本教程将详细解释这三个概念&#xff0c;并通过示例展示如何在Java中使用它们。 一、继承 …

android so载入过程

源自android 9 看源代码的网页 /bionic/libdl/libdl_static.c 好像没用。都是空的 /bionic/libdl/libdl.cpp 主角 22// These functions are exported by the loader 23// TODO(dimitry): replace these with reference to libc.so101// Proxy calls to bionic loader 102_…

工具方法 - 任务跟踪清单

1&#xff0c;先创建Primary Task&#xff0c;不要超过三条。重要的工作任务&#xff0c;一些约好的活动等。 2&#xff0c;再创建Secondary Task&#xff0c;不要超过两条。一些学习任务&#xff0c;杂事琐事等。 3&#xff0c;任务跟踪周期为一周&#xff0c;每日早晚更新状态…

LeetCode | 搜索插入位置

Problem: 35. 搜索插入位置 文章目录 思路解题方法复杂度Code 思路 用python对列表特有的操作——index。 解题方法 见上 复杂度 时间复杂度: O(n) 空间复杂度: O(1) Code class Solution:def searchInsert(self, nums: List[int], target: int) -> int:try:return …

【C++】十大排序算法之 归并排序 快速排序

本次介绍内容参考自&#xff1a;十大经典排序算法&#xff08;C实现&#xff09; - fengMisaka - 博客园 (cnblogs.com) 排序算法是《数据结构与算法》中最基本的算法之一。 十种常见排序算法可以分为两大类&#xff1a; 比较类排序&#xff1a;通过比较来决定元素间的相对次序…

力扣--滑动窗口438.找到字符串中所有字母异位词

思路分析&#xff1a; 使用两个数组snum和pnum分别记录字符串s和p中各字符出现的次数。遍历字符串p&#xff0c;统计其中各字符的出现次数&#xff0c;存储在pnum数组中。初始化snum数组&#xff0c;统计s的前m-1个字符的出现次数。从第m个字符开始遍历s&#xff0c;通过滑动窗…

史上最细,接口自动化测试用例设计编写总结,一篇带你打通...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 说到自动化测试&a…

ArrayList 和 LinkedList 的区别

ArrayList ArrayList 是基于动态数组实现的&#xff0c; 它使用一块连续的内存空间来存储元素&#xff0c;因此访问元素的速度非常快&#xff08;时间复杂度为 O(1)&#xff09;&#xff0c; 但是&#xff0c;在插入或删除元素时&#xff0c;如果位置不在数组末尾&#xff0…

亚信安慧AntDB:“融合+实时”引领数据库创新

在当今多变的数据应用场景中&#xff0c;AntDB作为行业领先的超融合流式实时数仓&#xff0c;秉承着“融合实时”的研发理念&#xff0c;全面应对企业日益复杂的数据处理需求。通过SQL接口访问多种执行引擎&#xff0c;AntDB在实现交易、分析等多重能力的“超融合”方面取得了显…

SQL设计时增加说明列

后关闭sql Studio,然后打开注册表,注册表地址: 计算机\HKEY_CURRENT_USER\SOFTWARE\Microsoft\SQL Server Management Studio\18.0_IsoShell\DataProject 如有版本不同,红色内容有所变化,修改内容如下: SSVPropViewColumnsSQL70,SSVPropViewColumnsSQL80 全修改为 1,2,6,7…

魔方,3循环是你的秘密[嗑瓜子]。​

引理1.任意Sn中的元素&#xff1a;(N_1N_2N_3...N_m) 证明&#xff1a; (N_1N_2N_3...N_m) (N_1N_m)(N_1N_m-1)...(N_1N_2) 举例&#xff1a; 比如(1234) (14)(13)(12) (3214) (34)(31)(32) 2.任意An可以表示成3循环的乘积&#xff0c; 证明&#xff1a; 1.An中的元素属于…

sql | 左连接、右连接、内连接、全连接

其实这个内容算是老掉牙了 左连接、右连接、内连接、全连接从字面上都好理解 接下来我们来一一解疑 左连接&#xff1a;以左表为主表&#xff0c;根绝条件匹配右表&#xff0c;当右表部分记录因为条件不匹配显示为空&#xff0c;所以最终结果是左表全显示&#xff0c;右表存在字…

抖店无货源模式,采购商品、平台渠道正规吗?相关基础问题解答

我是王路飞。 无货源模式&#xff0c;相信你们也都不陌生了。 每个电商平台都存在这种模式&#xff0c;且我以为&#xff0c;每个电商平台的发展壮大&#xff0c;最应该感谢的就是这些无货源商家了。 而现在说到无货源&#xff0c;最适合普通人的无疑就是抖音小店了。 今天…

[云原生] k8s之存储卷

一、emptyDir存储卷 当Pod被分配给节点时&#xff0c;首先创建emptyDir卷&#xff0c;并且只要该Pod在该节点上运行&#xff0c;该卷就会存在。正如卷的名字所述&#xff0c;它最初是空的。Pod 中的容器可以读取和写入emptyDir卷中的相同文件&#xff0c;尽管该卷可以挂载到每…