当前位置: 首页 > news >正文

C++语言题库(一)—— 基本知识类

目录

1. Hello World!

2. 据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤的数值是公斤数值的两倍。现给定某人身高,请你计算其标准体重应该是多少?

3. 给定一个华氏温度F,计算对应的摄氏温度C。计算公式:C=5×(F−32)/9。题目保证输入与输出均在整型范围内。

4. 计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。

5. 程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。

 6. 输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。

7. 将输入的任意3个整数从小到大输出。

8. 对于给定的正整数N,求它的位数及其各位数字之和。

9. 给定N个正整数,请统计奇数和偶数各有多少个?

10. 将输入的一系列整数中的最小值与第一个数交换,然后将最大值与最后一个数交换,最后输出交换后的序列。注意:题目保证最大和最小值都是唯一的。

11. 从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。

12. 对于给定的正整数N,需要你计算 S=1!+2!+3!+...+N!。

13. 对任意给定的一位正整数N,输出从1*1到N*N的部分口诀表。下面是一个完整的下三角九九口诀表:

14. 求一个给定的m×n矩阵各行元素之和。

15. 求两个给定正整数的最大公约数和最小公倍数。


1. Hello World!

本题要求编写程序,输出一个短句“Hello World!”。输入格式:
本题目没有输入。输出格式:
在一行中输出短句“Hello World!”。

答案:

#include<iostream>
using namespace std;int main(){cout<<"Hello World!";
}

2. 据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤的数值是公斤数值的两倍。现给定某人身高,请你计算其标准体重应该是多少?

输入格式:
输入第一行给出一个正整数H(100 < H ≤ 300),为某人身高。输出格式:
在一行中输出对应的标准体重,单位为市斤,保留小数点后1位。输入样例:
169输出样例:
​124.2

答案:

#include <iostream>
#include <cstdio>
using namespace std;
int main() {double n;scanf("%lf", &n);printf("%.1lf", (n - 100) * 1.8);return 0;
}

3. 给定一个华氏温度F,计算对应的摄氏温度C。计算公式:C=5×(F−32)/9。题目保证输入与输出均在整型范围内。

​输入格式:
输入在一行中给出一个华氏温度。输出格式:
在一行中按照格式“Celsius = C”输出对应的摄氏温度C的整数值。输入样例:
150输出样例:
Celsius = 65

答案:

#include<iostream>
using namespace std;int main(){int f; cin>>f;int c = 5*(f-32)/9;cout<<"Celsius = "<<c;return 0;
}

4. 计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。

输入格式:
输入在一行中给出4个整数,其间以空格分隔。输出格式:
在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位。输入样例:
1 2 3 4
输出样例:
Sum = 10; Average = 2.5

答案:

#include <cstdio>
#include <iostream>
using namespace std;int main() {int a, b, c, d;scanf("%d%d%d%d", &a, &b, &c, &d);int sum = a + b + c + d;printf("Sum = %d; Average = %.1lf", sum, sum / 4.0);return 0;
}

5. 程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。

​输入格式:
每个测试是一个3位的正整数。输出格式:
输出按位逆序的数。输入样例:
123
输出样例:
321

答案:

#include <cstdio>
#include <iostream>
using namespace std;int main() {int t, a = 0;cin >> t;while (t) {a = a * 10 + t % 10;t /= 10;}cout << a;return 0;
}

 6. 输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。

输入格式:
输入在一行中给出21世纪的某个截止年份。输出格式:
逐行输出满足条件的所有闰年年份,即每个年份占一行。
输入若非21世纪的年份则输出"Invalid year!"。若不存在任何闰年,则输出“None”。输入样例1:
2048
输出样例1:
2004
2008
2012
2016
2020
2024
2028
2032
2036
2040
2044
2048输入样例2:
2000
输出样例2:
Invalid year!

答案:

#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;int main() {int n, cnt = 0;cin >> n;if (n <= 2000 || n > 2100) {cout << "Invalid year!";return 0;}for (int i = 2001; i <= n; i++) {if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) {cout << i << endl;cnt++;}}if (cnt == 0)cout << "None";return 0;
}

7. 将输入的任意3个整数从小到大输出。

输入格式:
输入在一行中给出3个整数,其间以空格分隔。输出格式:
在一行中将3个整数从小到大输出,其间以“->”相连。输入样例:
4 2 8
输出样例:
2->4->8

答案:

#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;int main() {int a, b, c;cin >> a >> b >> c;if (a > b) {int t = a;a = b;b = t;}if (a > c) {int t = a;a = c;c = t;}if (b > c) {int t = b;b = c;c = t;}cout << a << "->" << b << "->" << c;return 0;
}

8. 对于给定的正整数N,求它的位数及其各位数字之和。

输入格式:
输入在一行中给出一个不超过109的正整数N。输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。输入样例:
321
输出样例:
3 6

答案:

#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;int main() {int n; cin >> n;int a = 0, b = 0;while (n) {a++;b += n % 10;n /= 10;}cout << a << " " << b;return 0;
}

9. 给定N个正整数,请统计奇数和偶数各有多少个?

输入格式:
输入第一行给出一个正整N(≤1000);第2行给出N个非负整数,以空格分隔。输出格式:
在一行中先后输出奇数的个数、偶数的个数。中间以1个空格分隔。输入样例:
9
88 74 101 26 15 0 34 22 77
输出样例:
3 6

答案:

#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;int main() {int n, a = 0, x;cin >> n;for (int i = 1; i <= n; i++) {cin >> x;if (x % 2 == 0){a++;}}cout << n - a << " " <<a;return 0;
}

10. 将输入的一系列整数中的最小值与第一个数交换,然后将最大值与最后一个数交换,最后输出交换后的序列。注意:题目保证最大和最小值都是唯一的。

输入格式:
输入在第一行中给出一个正整数N(≤10),第二行给出N个整数,数字间以空格分隔。输出格式:
在一行中顺序输出交换后的序列,每个整数后跟一个空格。输入样例:
5
8 2 5 1 4
输出样例:
1 2 5 4 8 

答案:

#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;int main() {int a[11], n;cin >> n;for (int i = 1; i <= n; i++)cin >> a[i];int id = 1;for (int i = 1; i <= n; i++) {if (a[id] > a[i])id = i;}swap(a[id], a[1]);for (int i = 1; i <= n; i++) {if (a[id] < a[i])id = i;}swap(a[id], a[n]);for (int i = 1; i <= n; i++)cout << a[i] << " ";//每个整数后跟一个空格return 0;
}

11. 从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。

​输入格式:
输入在第一行中给出两个正整数N(≤20)和X,第二行给出N个整数。数字均不超过长整型,其间以空格分隔。输出格式:
在一行中输出X的位置,或者“Not Found”。输入样例1:
5 7
3 5 7 1 9
输出样例1:
2输入样例2:
5 7
3 5 8 1 9
输出样例2:
Not Found

答案:

#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;int main() {int a[21], n, x, id = 0;cin >> n >> x;for (int i = 0; i < n; i++)cin >> a[i];for (int i = 0; i < n; i++) {if (a[i] == x) {id = i;}}if (a[id] != x)cout << "Not Found";elsecout << id;return 0;
}

12. 对于给定的正整数N,需要你计算 S=1!+2!+3!+...+N!。

输入格式:
输入在一行中给出一个不超过10的正整数N。输出格式:
在一行中输出S的值。输入样例:
3
输出样例:
9

答案:

#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;int main() {int n, s = 0, t = 1;cin >> n;for (int i = 1; i <= n; i++) {t = t * i;  // t = i!s += t;}cout << s;return 0;
}

13. 对任意给定的一位正整数N,输出从1*1N*N的部分口诀表。下面是一个完整的下三角九九口诀表:

1*1=1   
1*2=2   2*2=4   
1*3=3   2*3=6   3*3=9   
1*4=4   2*4=8   3*4=12  4*4=16  
1*5=5   2*5=10  3*5=15  4*5=20  5*5=25  
1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  
1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  
1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  
1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81  
输入格式:
输入在一行中给出一个正整数N(1≤N≤9)。输出格式:
输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。输入样例:
4
输出样例:
1*1=1   
1*2=2   2*2=4   
1*3=3   2*3=6   3*3=9   
1*4=4   2*4=8   3*4=12  4*4=16  

答案:

#include <cstdio>
#include <iostream>
using namespace std;int main() {int n;scanf("%d", &n);for (int i = 1; i <= n; i++) {for (int j = 1; j <= i; j++) {printf("%d*%d=%-4d", j, i, i * j);}puts("");}return 0;
}

14. 求一个给定的m×n矩阵各行元素之和。

输入格式:
输入第一行给出两个正整数m和n(1≤m,n≤6)。随后m行,每行给出n个整数,其间以空格分隔。输出格式:
每行输出对应矩阵行元素之和。输入样例:
3 2
6 3
1 -8
3 12
输出样例:
9
-7
15

答案:

#include <iostream>
using namespace std;int main() {int m, n;cin >> m >> n;for (int i = 0; i < m; i++) {int sum = 0, a;for (int j = 0; j < n; j++) {cin >> a;sum += a;}cout << sum << endl;}return 0;
}

15. 求两个给定正整数的最大公约数和最小公倍数。

输入格式:
输入在一行中给出两个正整数M和N(≤1000)。输出格式:
在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。输入样例:
511 292
输出样例:
73 2044

答案:

#include <iostream>
using namespace std;int main() {int a, b;cin >> a >> b;int x = a, y = b, tmp = 0;while (y != 0) {tmp = x % y;x = y;y = tmp;}cout << x << " " << a * b / x;return 0;
}

相关文章:

C++语言题库(一)—— 基本知识类

目录 1. Hello World! 2. 据说一个人的标准体重应该是其身高&#xff08;单位&#xff1a;厘米&#xff09;减去100、再乘以0.9所得到的公斤数。已知市斤的数值是公斤数值的两倍。现给定某人身高&#xff0c;请你计算其标准体重应该是多少&#xff1f; 3. 给定一个华氏温度F…...

gemini1.5 API调用

https://ai.google.dev/pricing?hlzh-cn 查询可用的model https://generativelanguage.googleapis.com/v1beta/models?keyxxx 使用postman调用 https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-pro-latest:generateContent?keyxxx https://ai.google…...

C++从入门到精通——const与取地址重载

const与取地址重载 前言一、const正常用法const成员函数问题const对象可以调用非const成员函数吗非const对象可以调用const成员函数吗const成员函数内可以调用其它的非const成员函数吗非const成员函数内可以调用其它的const成员函数吗总结 二、取地址及const取地址操作符重载概…...

手写spring IOC底层源码来模拟spring如何利用多级缓存解决循环依赖的问题

在文章开始之前&#xff0c;先来看一张spring IOC加载过程的脑图吧 Spring IOC的加载过程 首先,当我们去new了一个applicationContext,它底层呢就会把我们配置的bean进行扫描,然后创建成一个一个的beanDefinition放在我们的beanDefinitionMap中,此时就有了一切创造bean的原料信…...

C++11 Thead线程和线程池

参考资料&#xff1a; 2、5.lock_guard 与 std::unique_lock-陈子青的编程学习课堂 (seestudy.cn) 3、C11 多线程编程-小白零基础到手撕线程池_哔哩哔哩_bilibili 一、 C11 Thead线程库的基本使用 # include <thread> std::thread t(function_name, args...); // 线…...

Windows版Apache 2.4.59解压直用(免安装-绿色-项目打包直接使用)

windows下Apache分类 Apache分为 安装版和解压版 安装版: 安装方便&#xff0c;下一步------下一步就OK了&#xff0c;但重装系统更换环境又要重新来一遍&#xff0c;会特别麻烦 解压版&#xff08;推荐&#xff09;&#xff1a; 这种方式&#xff08;项目打包特别方便&#x…...

刀具表面上的微结构

刀具表面微结构通常指在刀具表面对特定功能设计的微观纹理&#xff0c;这些纹理可以是沟槽、凹坑、凸起或任何其他形式的微观图案。这些微结构的设计和应用是为了改善刀具的切削性能&#xff0c;减少切削力和切削温度&#xff0c;提高切削效率和精度&#xff0c;同时降低切削液…...

css3实现微信扫码登陆动画

在做微信扫码登陆时&#xff0c;出现一个背景光图上下扫码动画&#xff0c;用css3图片实现。 实现原理&#xff1a; 1.准备一个渐变的背景.png图 2.css动画帧实现动画 看效果&#xff1a; css代码&#xff1a; #wx-scan{position: absolute;top:0px;left: 50%;z-index: 3;ma…...

vue3 导入excel数据

所需包 "xlsx": "^0.18.5"页面导入包 import * as XLSX from xlsx; import {genFileId, UploadProps, UploadRawFile,ElTable } from element-plus;页面 <el-upload accept".xlsx" :on-change"changeExcel" :on-exceed"ha…...

C# linq 根据多字段动态Group by

实现类&#xff1a; public static class LinqHepler {/// <summary>/// 根据单个字段动态Group/// </summary>/// <typeparam name"T"></typeparam>/// <param name"source"></param>/// <param name"prop…...

C语言学习/复习22----阶段测评编程题

一、阶段测评练习 题1&#xff1a; 题2&#xff1a;...

LeetCode-1766. 互质树【树 深度优先搜索 广度优先搜索 数组 数学 数论】

LeetCode-1766. 互质树【树 深度优先搜索 广度优先搜索 数组 数学 数论】 题目描述&#xff1a;解题思路一&#xff1a;DFS 中记录节点值的深度和编号&#xff0c;回溯写法。关键点是1 < nums[i] < 50解题思路二&#xff1a;0解题思路三&#xff1a;0 题目描述&#xff1…...

“数据安全服务能力”评定资格认证!不容错过

数据安全服务能力评定是指对数据安全服务提供商从事数据安全服务综合能力的评定&#xff0c;包括技术能力、服务能力、质量保证能力、人员构成与素质、经营业绩、资产状况等要素。 一、能力评定类型与等级 数据安全服务能力分为二个类型&#xff1a;数据安全评估、数据安全建…...

【MATLAB 分类算法教程】_3麻雀搜索算法优化支持向量机SVM分类 - 教程和对应MATLAB代码

分类代码案例3:麻雀搜索算法优化支持向量机SVM分类 - MATLAB完全代码教程 1. 初始化代码2.读取数据代码3.数据预处理代码4.利用麻雀搜索算法SSA求解最佳的SVM参数c和g代码5.根据最佳的参数进行SVM模型训练代码6.SVM模型预测代码7.准确率分析以及分类结果对比作图代码本文以红酒…...

利用机器学习库做动态定价策略的例子

动态定价是一个复杂的问题&#xff0c;涉及到市场需求、库存、竞争对手行为、季节性因素等多个变量。在实际应用中&#xff0c;动态定价通常需要复杂的模型和大量的数据分析。我选择使用Python&#xff08;Golearn库&#xff09;进行机器学习模型的训练和部署&#xff0c;而将G…...

Tcpdump -r 解析pcap文件

当我们使用命令抓包后&#xff0c;想在命令行直接读取筛选怎么办&#xff1f;-r参数就支持了这个 当你使用 tcpdump 的 -r 选项读取一个之前捕获的数据包文件&#xff0c;并想要筛选指定 IP 地址和端口的包时&#xff0c;你可以在命令中直接加入过滤表达式。这些过滤表达式可以…...

[dvwa] sql injection(Blind)

blind 0x01 low 1’ and length(version()) 6 # syntax: substr(string , from<start from 1>, cut length) 1’ and substr(version(),1,1) ‘5’ # 1’ and substr(version(),2,1) ‘.’ # 1’ and substr(version(),3,1) ‘7’ # 1’ and substr(version(),4,…...

linux 挂载云盘 NT只能挂载2T,使用parted挂载超过2T云盘

一、删除原来挂载好的云盘和分区 1、查看挂载号的云盘 fdisk -l 发现我们有5千多G但是只挂载了2T&#xff0c;心里非常的慌张&#xff01;十分的不爽&#xff01; 好&#xff0c;我们把它干掉&#xff0c;重新分区&#xff01; 2、解除挂载 umount /homeE 没保存跳转到&…...

用Skimage学习数字图像处理(021):图像特征提取之线检测(下)

本节是特征提取之线检测的下篇&#xff0c;讨论基于Hough变换的线检测方法。首先简要介绍Hough变换的基本原理&#xff0c;然后重点介绍Skimage中含有的基于Hough变换的直线和圆形检测到实现。 目录 10.4 Hough变换 10.4.1 原理 10.4.2 实现 10.4 Hough变换 Hough变换&…...

ArduPilot飞控之Gazebo + SITL + MP的Jetson Orin环境搭建

ArduPilot飞控之Gazebo SITL MP的Jetson Orin环境搭建 1. 源由2. Linux环境整理3. 安装Gazebo环境3.1 安装Gazebo3.2 安装插件3.3 配置插件3.4 测试Gazebo 4. 安装Arudpilot-SITL环境4.1 克隆工程4.2 编译准备4.3 环境配置4.4 配置编译4.5 测试运行 5. 测试运行6. 参考资料 1…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

如何在看板中体现优先级变化

在看板中有效体现优先级变化的关键措施包括&#xff1a;采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中&#xff0c;设置任务排序规则尤其重要&#xff0c;因为它让看板视觉上直观地体…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析

Java求职者面试指南&#xff1a;Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问&#xff08;基础概念问题&#xff09; 1. 请解释Spring框架的核心容器是什么&#xff1f;它在Spring中起到什么作用&#xff1f; Spring框架的核心容器是IoC容器&#…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...