C++基础-编程练习题1
文章目录
- 一、哥德巴赫猜想
- 二、哥德巴赫猜想2
- 三、打印成绩单
- 四、成绩输入输出
- 五、数组输出奇数位偶数位
一、哥德巴赫猜想
【试题描述】
哥德巴赫提出了以下的猜想:任何一个大于 2 的偶数都可以表示成 2 个质数之和。 质数是指除了 1 和本身之外没有其他约数的数, 如 2 和 11 都是质数,而 6 不是质数,因为 6 除了约数 1 和 6 之外还有约数 2 和 3。 需要特别说明的是 1 不是质数。
请你编一个程序验证哥德巴赫猜想
【输入要求】
n 的值
【输出要求】
多组由两个素数之和组成的表达式, 每组第一个数字要从小到大排列
【输入样例】
14
【输出样例】
3+11
7+7
#include <bits/stdc++.h>
using namespace std; // 函数用于检查一个数是否为质数
bool isPrime(int n) { //小于等于1的数不是质数if (n <= 1) return false; //2是质数if (n == 2) return true; //除2外能被2整除的数不是质数if (n % 2 == 0) return false; for (int i = 3; i < n; i += 1) {//能被小于自身的数整除,说明不是质数if (n % i == 0) return false; } return true;
} // 函数用于验证哥德巴赫猜想
void goldbachConjecture(int n) { if (n <= 2 || n % 2 != 0) { cout << "输入错误,请输入大于 2 的偶数." << endl; return; } //从2开始循环找到满足条件的两个质数for (int i = 2; i <= n / 2; ++i) {//第一个质数if (isPrime(i)) { //第二个质数int second = n - i; if (isPrime(second)) { //质数之和,并输出结果 cout << i << "+" << second << endl; }} } } int main() { //定义变量n,存放输入的大于2的偶数int n; //输入大于 2 的偶数cin >> n; //调用goldbachConjecture函数goldbachConjecture(n); return 0;
}
二、哥德巴赫猜想2
【试题描述】
求出哥德巴赫猜想的所有解(将一个大于 9 的奇数拆分成三个素数之和),并按从小到大的顺序写出。
【输入要求】
一行, 一个大于 9 的奇数。
【输出要求】
每行一个解。
【输入样例】
15
【输出样例】
15=2+2+11
15=3+5+7
15=5+5+5
#include <bits/stdc++.h>
using namespace std;
// 判断是否为素数的函数
bool isPrime(int num) { if (num <= 1) return false; if (num == 2) return true; if (num % 2 == 0) return false; for (int i = 3; i < num; i += 1) { if (num % i == 0) return false; } return true;
}/*** 求解哥德巴赫猜想 * /
void goldbachConjecture(int oddNum) { //取oddNum前三分之一段的数,因2是质数故从2开始for (int i = 2; i <= oddNum / 3; ++i) { //i第一个质数//取剩下的前半段数for (int j = i; j <= (oddNum - i) / 2; ++j) { //j第二个质数//求第三个质数kint k = oddNum - i - j; //三个数均为素数时,满足要求if (isPrime(i) && isPrime(j) && isPrime(k)) { //按题目要求输出cout << oddNum << "=" << i << "+" << j << "+" << k << endl; } } }
} int main() { int oddNum; //输入大于9的奇数cin >> oddNum; if (oddNum <= 9 || oddNum % 2 == 0) { cout << "输入错误,请输入一个大于9的奇数." << endl; return 1; } goldbachConjecture(oddNum); return 0;
}
三、打印成绩单
【试题描述】
输入 N 个同学的语文成绩, 算出总分, 打印出成绩单
【输入要求】
N 个同学的成绩
【输出要求】
N 个同学的成绩及总分。
【输入样例】
5
98 78 98 65 90
【输出样例】
total:429
98
78
98
65
90
#include <bits/stdc++.h>
using namespace std;
/**输入 N 个同学的语文成绩, 算出总分, 打印出成绩单*/
int main() { int n; cin >> n; // 读取同学的数量 int scores[n]; // 创建一个存储成绩的数组 int total = 0; // 用于计算总分的变量 // 读取每个同学的成绩 for (int i = 0; i < n; ++i) { cin >> scores[i]; //将每个成绩相加,得到总分total = total+ scores[i]; } // 打印总分 cout << "total:" << total << endl; // 打印每个同学的成绩 for (int i = 0; i < n; ++i) { cout << scores[i] << endl; } return 0;
}
四、成绩输入输出
【试题描述】
全班 n 个同学的成绩需要按学号读入计算机并输出, 请编程实现。
【输入要求】
两行, 第一行为一个正整数 n, 第二行为 n 个实数。
【输出要求】
n 行, 包括所有同学的成绩, 每行包括学号和成绩, 之间用一个“: ” 分隔, 成绩保留一
位小数。
【输入样例】
5
92 97.5 93 87 89
【输出样例】
1: 92.0
2: 97.5
3: 93.0
4: 87.0
5: 89.0
#include <bits/stdc++.h>
using namespace std;
/**全班 n 个同学的成绩需要按学号读入计算机并输出* @return */
int main() { int n; cin >> n; // 读取学生数量 double scores[n]; // 创建包含n个元素的double类型数组用于存储成绩 for (int i = 0; i < n; ++i) { cin >> scores[i]; // 读取每个学生的成绩 } // 遍历数组并输出每个学生的学号和成绩 for (int i = 0; i < n; ++i) { //fixed确保了使用固定小数点格式,而setprecision(1)则设置了小数点后要显示的位数cout << (i + 1) << ": " << fixed << setprecision(1) << scores[i] << endl; } return 0;
}
五、数组输出奇数位偶数位
【试题描述】
对输入的数据分两行输出, 第一行为输入顺序的奇数位置数据, 第二行为输入顺序的偶数位置数据。
【输入要求】
共两行。
第一行为整数 n。
第二行为 n 个整数。
【输出要求】
两行。
第一行为奇数位置的数。
第二行为偶数位置的数。
注意: 每个元素右边都有一个空格。
【输入样例】
9
1 5 4 7 8 5 6 9 3
【输出样例】
1 4 8 6 3
5 7 5 9
#include <bits/stdc++.h>
using namespace std;
/**
* 对输入的数据分两行输出, 第一行为输入顺序的奇数位置数据, 第二行为输入顺序的偶数位置数据。
**/
int main() { int n; cin >> n; // 读取整数n int nums[n]; // 创建一个大小为n的数组来存储整数 for (int i = 0; i < n; ++i) { cin >> nums[i]; // 读取整数并存入数组} // 输出奇数位置的数 for (int i = 0; i < n; i =i+ 2) { cout << nums[i]; if ((i + 2) < n) { cout << " "; // 如果不是最后一个数,则输出一个空格 } } cout << endl; // 换行 // 输出偶数位置的数 for (int i = 1; i < n; i += 2) { cout << nums[i]; if (i + 2 < n) { cout << " "; // 如果不是最后一个数,则输出一个空格 } } cout << endl; // 换行 return 0;
}
相关文章:
C++基础-编程练习题1
文章目录 一、哥德巴赫猜想二、哥德巴赫猜想2三、打印成绩单四、成绩输入输出五、数组输出奇数位偶数位 一、哥德巴赫猜想 【试题描述】 哥德巴赫提出了以下的猜想:任何一个大于 2 的偶数都可以表示成 2 个质数之和。 质数是指除了 1 和本身之外没有其他约数的数&a…...
四十九坊股权设计,白酒新零售分红制度,新零售策划机构
肆拾玖坊商业模式 | 白酒新零售体系 | 新零售系统开发 坐标:厦门,我是易创客肖琳 深耕社交新零售行业10年,主要提供新零售系统工具及顶层商业模式设计、全案策划运营陪跑等。 不花钱开3000多家门店,只靠49个男人用一套方法卖白酒…...
如何将公众号添加到CSDN个人主页
1. 创作中心- 推广管理 输入个人公众号名字并开启微信公众号推广 2. 将公众号的二维码图片加入拓展信息 个人主页的左下角就能看到推广 如果希望能看到是二维码 操作如下: 写篇文章贴上二维码 然后点击鼠标右键获得此页面链接 ,例如我的个人公众号 htt…...
64K方法数限制原理及解决方案
64K限制的原因 Android APK文件本质上是一个压缩文件,它包含的classes.dex文件是可执行的Dalvik字节码文件,这个.dex文件中存放的就是编译后的Java代码。Dalvik可执行文件规范限制了单个.dex文件最多引用的方法数是65536个。其中包含联网Android Framew…...
产品品牌CRUD
文章目录 1.renren-generator生成CRUD1.数据库表设计1.数据表设计2.分析 2.代码生成器生成crud1.查看generator.properties(不需要修改)2.修改application.yml 连接的数据库修改为云数据库3.启动renren-generator模块4.浏览器访问 http://localhost:81/5…...
惠普发布全新AI战略,重塑办公空间 引领企业智能化新浪潮
近日、全球知名科技公司惠普在北京隆重举办了以“用智能,开启无限可能”为主题的2024惠普商用AI战略暨AI PC新品发布会,此次盛会标志着惠普在人工智能领域迈出了重要一步,惠普紧跟时代步伐,推出了更高效、更安全、更灵活的AI PC产…...
python中的数据可视化:极坐标散点图
【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 python中的数据可视化: 极坐标散点图 [太阳]选择题 关于以下代码输出结果的说法中正确的是? import matplotlib.pyplot as plt import numpy as np n 150 r 2 * np.r…...
5.12.1 Detecting and classifying lesions in mammograms with Deep Learning
计算机辅助检测 (CAD) 系统的开发是为了帮助放射科医生分析筛查性乳房 X 光检查,深度 CNN 有可能彻底改变医学图像分析。我们提出了一种基于最成功的对象检测框架之一 Faster R-CNN 的 CAD 系统。该系统无需任何人为干预即可检测乳房 X 光照片上的恶性或良性病变并对…...
Python爬虫——如何使用urllib的HTTP基本库
怎样通过 urllib库 发送 HTTP 请求? urllib库主要由四个模块组成: urllib.request 打开和读取 URLurllib.error 包含 urllib.request 抛出的异常urllib.parse 用于解析 URLurllib.robotparser 用于解析 robots.txt 文件 1. 使用urllib.parse解析URL 使用urlparse(…...
OceanBase v4.3特性解析:新功能“租户克隆”的场景与应用指南
熟悉或曾用过OceanBase的朋友,对于“多租户”这一理念定不陌生。OceanBase的租户概念,与我们熟知的传统数据库实例颇为相似。举例来说,OceanBase的租户支持MySQL兼容模式,对于用户而言,选用一个MySQL兼容模式的租户&am…...
RS3236-3.3YUTDN4功能和参数介绍及PDF资料
RS3236-3.3YUTDN4功能和参数介绍及PDF资料-公司新闻-配芯易-深圳市亚泰盈科电子有限公司 品牌: RUNIC(润石) 封装: XDFN-4-EP(1x1) 描述: 带过温保护 输出类型: 固定 最大输入电压: 7.5V 输出电压: 3.3V 最大输出电流: 500mA RS3236-3.3YUTDN4 是一款低压差线性稳压器&#x…...
Vue如何引入公用方法
文章目录 1. 在全局范围内引入2. 在单文件组件中引入3. 使用Vuex或Vue Composition API4. 使用mixins5. 使用插件 1. 在全局范围内引入 在你的main.js或main.ts文件中引入并注册你的公用方法,使得它们可以在整个Vue应用中使用。 // 引入你的公用方法文件 import {…...
Java面试题:ConcurrentHashMap
ConcurrentHashMap 一种线程安全的高效Map集合 jdk1.7之前 底层采用分段的数组链表实现 一个不可扩容的数组:segment[] 数组中的每个元素都对应一个HashEntry数组用以存放数据 当放入数据时,根据key的哈希值找到对应的segment数组下标 找到下标后就会添加一个reentrantlo…...
现在闪侠惠递寄快递有福利了,千万不要因没把握住而后悔呀!
闪侠惠递平台寄快递现在真的是太便宜了,优惠价格把握不住,后悔都来不及!大家可以在闪侠惠递上面寄快递,价格真的非常优惠呢,比咱们平常寄快递的价格都优惠呢,真的,小编都亲自替大家尝试过了呢。…...
vue+ant-design+formBuiler表单构建器——技能提升——form design——亲测有效
最近看到后端同事在弄一个后台管理系统,额,前端真的是夹缝中生存啊,AI抢饭碗,后端也想干前端的活儿。。。 他用到了表单构建器,具体效果如下: 网上有很多适用于ElementUi和ant-design的form design插件,下…...
Git 如何管理标签命令(tag)
1.查看本地仓库tag --1.查看本地仓库tag UserDESKTOP-2NRT2ST MINGW64 /e/GITROOT/STARiBOSS/STARiBOSS-5GCA (gw_frontend_master) $ git tag 1stBossUpgrade V10.0.1_20220224_test V10.0.1_20220301_test tag-gwfrontend-V1.0.12-230625 tag-gw_frontend-23.08.29 tag-gw_f…...
零样本身份保持:ID-Animator引领个性化视频生成技术新前沿
在最新的研究进展中,由Xuanhua He及其团队提出的ID-Animator技术,为个性化视频生成领域带来了突破性的创新。这项技术的核心在于其零样本(zero-shot)人物视频生成方法,它允许研究者和开发者根据单一的参考面部图像生成…...
在Go语言中,可以这样使用Json
在Go语言中,处理JSON数据通常涉及编码(将Go结构体转换为JSON字符串)和解码(将JSON字符串转换为Go结构体)。Go标准库中的encoding/json包提供了这些功能。第三方插件可以使用"github.com/goccy/go-json"也有同…...
React useEffect Hook: 理解和解决组件双重渲染问题
在React中,useEffect可能会在组件的每次渲染后运行,这取决于它的依赖项。如果你发现useEffect运行了两次,并且你正在使用React 18或更高版本的严格模式(Strict Mode),这可能是因为在开发模式下,…...
【C语言】—— 动态内存管理
【C语言】——动态内存管理 一、动态内存管理概述1.1、动态内存的概念1.2、动态内存的必要性 二、 m a l l o c malloc malloc 函数2.1、函数介绍2.2、应用举例 三、 c a l l o c calloc calloc 函数四、 f r e e free free 函数4.1、函数介绍4.2、应用举例 五、 r e a l l o …...
华为云AI开发平台ModelArts
华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命
在华东塑料包装行业面临限塑令深度调整的背景下,江苏艾立泰以一场跨国资源接力的创新实践,重新定义了绿色供应链的边界。 跨国回收网络:废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点,将海外废弃包装箱通过标准…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题
分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...
