c++
Smaircle
深圳/大一在读ai 正在学习c++中 努力掌握编程的小菜鸟~
展开
-
编写一个函数模板,求数组中的最大元素,并写出调用此函数模板的主函数,使得函数调用时,数组的类型可以是int型、double型和string类型。数组中元素个数3≤n≤20主函数中,先从键盘输入各种类
编写一个函数模板,求数组中的最大元素,并写出调用此函数模板的主函数,使得函数调用时,数组的类型可以是int型、double型和string类型。数组中元素个数3≤n≤20主函数中,先从键盘输入各种类...原创 2022-06-11 22:48:27 · 1367 阅读 · 1 评论 -
c++图像的旋转就是对这个二维矩阵进行旋转操作。输入一个n行m列的矩阵,将它旋转180°后输出。要求用二维数组实现并包装为一个函数,在主函数中输出旋转.
题题目描述(附加题) 图像旋转。图像的灰度图在计算机中以二维矩阵的形式存储。图像的旋转就是对这个二维矩阵进行旋转操作。输入一个n行m列的矩阵,将它旋转180°后输出。要求用二维数组实现并包装为一个函数,在主函数中输出旋转后的二维矩阵。输入格式输入包含4行,第一行的两个正整数n和m,表示该矩阵每行/每列多少个元素;接下来输入n行,每行有m个以空格分隔的整数,该整数在0-255之间。输出格式旋转后的矩阵,每行两个相邻的元素之间以一个空格分隔;另外,每个元素最大是三位数,为了让矩阵.原创 2022-05-01 12:35:59 · 1641 阅读 · 1 评论 -
C++筛选法求素数输入m、n(m,n<100),输出[m,n]之间的素数。要求:使用筛选法求素数。求100以内素数的筛选过程:在一张纸上写上1到100全部整数,然后逐个判断它们是否是素数, 找
筛选法求素数输入m、n(m,n<100),输出[m,n]之间的素数。要求:使用筛选法求素数。求100以内素数的筛选过程:在一张纸上写上1到100全部整数,然后逐个判断它们是否是素数, 找出所有的非素数,把它挖掉,最后剩下的就是素数。提示:可以将1100这些数存储于数组1100下标,挖掉的数据置为0。具体做法如下:<1> 先将1挖掉(因为1不是素数)。<2> 找到数组中第一个非零值(2),把2的倍数挖掉。<3> 重复步骤<2>,再把原创 2022-04-14 22:26:59 · 1586 阅读 · 1 评论 -
C++奇偶排序,从键盘输入n(n<100)个整数(以0结束),存放在一个一维数组中,将它们按奇数在前、偶数在后,同为奇数或偶数的按从小到大的顺序排序,并输出排序后的结果。
奇偶排序从键盘输入n(n<100)个整数(以0结束),存放在一个一维数组中,将它们按奇数在前、偶数在后,同为奇数或偶数的按从小到大的顺序排序,并输出排序后的结果。(本题是建立在冒泡排序基础之上,对前后元素是否交换增加限制条件)Sample Input10 2 7 9 11 5 4 3 6 8 20 0Sample Output3 5 7 9 11 2 4 6 8 10 20#include<iostream>using namespace std;c原创 2022-04-14 22:14:46 · 3891 阅读 · 2 评论 -
C++数组,求中位数
中位数从键盘输入n(n<100)个整数(以0结束),存放在一个一维数组中,输出其中位数。说明:中位数(Medians)统计学名词,是指将数据按从小到大顺序排列起来,形成一个数列,居于数列中间位置的那个数据。若数列元素个数为奇数,则中位数为最中间的元素;若数列元素个数为偶数,则中位数为最中间两个元素的平均数。例如:输入2 7 9 11 5 4 3 6 8 20 0则排序后结果为2 3 4 5 6 7 8 9 11 20,则中间两个数的平均值为6.5Sample Input2 7 9原创 2022-04-14 21:45:55 · 7591 阅读 · 3 评论 -
【C++】设计一个Rectangle类,计算周长,面积
设计一个Rectangle类。要求://(1)包含两个成员变量m_length和m_width,其默认值为1。//(2)包含成员函数Perimeter()计算长方形的周长,Area()计算长方形面积。//(3)包含成员函数SetWidth()和GetWidth()用来设置和得到m_width的值,SetLength()和GetLength()用来设置和得到m_length的值。Set…()函数应验证m_length和m_width均为0.0到20.0之间的浮点数。//(4)编写主函数,测试Rect原创 2022-04-06 19:39:40 · 3976 阅读 · 1 评论 -
[C++]类与对象,构造函数,实现显示日期。
📚 构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时由编译器自动调用。能够保证每个数据成员都有一个合适的初始值,并且在对象的生命周期内只调用一次。构造函数的意义:能够保证对象被初始化。构造函数是特殊的成员函数,主要任务是初始化,而不是开空间。(虽然构造函数的名字叫构造)🔑 解读:不给参数时就会调用无参构造函数,给参数则会调用带参构造函数。class Date {public: /* 全缺省 */ //构造函数的全缺省形式。...原创 2022-04-02 16:43:16 · 1248 阅读 · 1 评论 -
【c++】设计一个立方体类Box,它能计算并输出立方体的体积和表面积。
设计一个立方体类Box,它能计算并输出立方体的体积和表面积。要求:(1)包含成员变量m_a(立方体边长)。(2)包含函数SetA(double a)(设置立方体边长)、GetVolume()(计算体积)、GetArea()(计算表面积)。(3)包含函数Display(),用来输出计算的结果。(4)设计测试用主函数main(),用来测试Box类。#include<iostream>using namespace std;class Box {public原创 2022-03-31 14:57:18 · 7083 阅读 · 0 评论 -
【C++】数组逆序被三整除/下标为三的数
1.逆序输出从键盘输入n个整数(n<100),存放在一个一维数组中,逆序输出能被3整除 的元素,并逆序输出数组下标为3的倍数的元素。输入格式:第一个整数为个数n,后续为n个整数输出格式:第一行能被3整除的元素,第二行为下标为3的倍数的元素,各个数值之间用空格分隔。Sample Input10 2 7 9 10 5 4 3 6 8 20Sample Output6 3 920 3 10 2#include<iostream>#include<原创 2022-03-29 17:18:53 · 2420 阅读 · 0 评论 -
[C++]欧几里得辗转相除求最大公约数,练习
编程实现求解最大公约数的欧几里德算法,用户输入两个任意正整数,程序输出他们的最大公约数。算法如下:拆解步骤如下:步骤1: 如果p < q,则交换p和q。步骤2: 令r是p / q 的余数。步骤3: 如果r = 0,则令g = q并终止;否则令p = q, q = r并转向步骤2#include<iostream>#include<stdio.h>//编程实现求解最大公约数的欧几里德算法,用户输入两...原创 2022-03-29 16:42:39 · 1171 阅读 · 0 评论 -
【C++】买鸡问题练手题
【C++】买鸡问题公鸡5元1只,母鸡3元1只,小鸡1元3只,花了100元钱买100只鸡,问公鸡、母鸡、小鸡各多少只?#include<iostream>#include<stdio.h>using namespace std;//公鸡5元1只,母鸡3元1只,小鸡1元3只,花了100元钱买100只鸡,问公鸡、母鸡、小鸡各多少只?int main(){ for (int i = 1; i <= 100; i++) {...原创 2022-03-27 17:17:03 · 2417 阅读 · 0 评论 -
【C++】爱因斯坦台阶问题
C++爱因斯坦台阶问题编写一个程序解决爱因斯坦台阶问题:有人走以台阶,若以每步走2级则最后剩1级;若每步走3级则最后剩2级;若以每步走4级则最后剩3级;若以每步走5级则最后剩4级;若以每步走6级则最后剩5级;若以每步走7级则最后刚好不剩。问台阶共有几级?穷举取余即可~日常刷刷题目就是找一个i满足上述规则即可,从小的开始找呗,找到第一个最小的输出就完事了#include<iostream>#include<stdio.h>using namespace原创 2022-03-27 17:03:43 · 2431 阅读 · 0 评论 -
C++汉诺塔问题(河内塔)
C++汉诺塔问题(河内塔)这是一个非常经典的递归问题。递归:在函数内部又再次调用函数自身的问题假设有n个盘子,需要把这些盘子从第一根起始柱A移动到第三根目标柱C中。1、首先需要把n-1个盘子移动到第二根中转柱B上;2、再把最后一个也就是最大的那一个盘子移动到第三根目标柱C上;3、最后再把剩下的n-1个盘子移动到第三根目标柱C上。我们定义f ( n ) f(n)f(n)是需要移动的次数;f ( 1 ) = 1 , f ( 2 ) = 3 , f ( 3转载 2022-03-26 15:46:22 · 2755 阅读 · 5 评论 -
C++每日一练——抓交通肇事犯
C++每日一练——抓交通肇事犯————题源来自博主飞向星的客机c语言每日一练1. 问题描述一辆卡车违反交通规则,撞人后逃跑。现场有三人目击该事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;//设为i乙说:牌照的后两位数字是相同的,但与前两位不同;//设为j,且i!=j。丙是数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索求出车号。分析问题该题目是数值计算问题,求解不定方程。对于这种求解不定方程组的问题,原创 2022-03-26 15:13:38 · 2312 阅读 · 2 评论 -
[C++]已知f(x) = cosx - x。x的初值为3.14159/4,用牛顿法求解方程f(x) = 0的近似解,要求精确到10-6。f(x)的牛顿法的表达式为xn+1 = xn + (cosxn
(附加题)已知f(x) = cosx - x。x的初值为3.14159/4,用牛顿法求解方程f(x) = 0的近似解,要求精确到10-6。f(x)的牛顿法的表达式为xn+1= xn+ (cosxn–xn) / (sinxn+ 1)。请用函数编写输出格式该方程的近似解输出样例该方程的近似解为0.739085数据范围与提示精确到10-6的意思是xn+1与xn的差值绝对值小于等于10-6代码版本1:#include<iostream>#in...原创 2022-03-25 19:20:33 · 2266 阅读 · 6 评论 -
[c++]一个首项大于0且公差大于0的等差整数数列的前四项的和为26,前四项的积为880。请写一个函数,利用其递归调用形式求出该数列的第n项的值,并将其在主函数中显示出来。
一个首项大于0且公差大于0的等差整数数列的前四项的和为26,前四项的积为880。请写一个函数,利用其递归调用形式求出该数列的第n项的值,并将其在主函数中显示出来。输入格式输入一个整型数据n,代表该等差数列的第n项中的n【多组输入】输出格式该数列中第n项的值输入样例复制8输出样例复制该等差数列的第8项是:23————题来自老师的作业分析题目:N=1时值为2N>1时值为f(n-1)+3#include<iostr..原创 2022-03-25 19:07:42 · 1494 阅读 · 0 评论 -
[C++]通过重载函数add(),实现浮点型数据、整型数据、字符型数据的加法运算(字符串型数据的加法就是将两个字符串拼接成一个字符串)【多组输入】
通过重载函数add(),实现浮点型数据、整型数据、字符型数据的加法运算(字符串型数据的加法就是将两个字符串拼接成一个字符串)【多组输入】输入格式每次输入6行:包含两个整型变量、两个浮点型变量、两个字符型变量输出格式各类型数据相加的结果知识储备,重载函数:我们在平时写代码中会用到几个函数但是他们的实现功能相同,但是有些细节却不同。例如:交换两个数的值其中包括(int, float,char,double)这些个类型。在C语言中我们是利用不同的函数名来加以区分。voi原创 2022-03-25 18:53:02 · 3885 阅读 · 0 评论 -
[C++]编写一个函数primeNumber(),用来判断从键盘输入一个任意的自然数是不是素数,并将判断结果在主函数中输出。
编写一个函数primeNumber(),用来判断从键盘输入一个任意的自然数是不是素数,并将判断结果在主函数中输出。17是素数20不是素数分析题目:如何求一个数是不是素数?我们知道,如果一个数的因数只有1和它本身的话,那么这个数就是素数,所以我们可以直接使用穷举让他除以2—它本身减一的数字就好了。当然我们也可以只除到sqrt(n)可以大大的提升速度。代码如下:#include<iostream>#include<stdio.h>usi原创 2022-03-25 18:47:30 · 2268 阅读 · 0 评论 -
[C++]编写一个函数(函数名定为transfer()),用以实现将十进制正整数转换为任意的其他(二~九之间的)进制数,
编写一个函数(函数名定为transfer()),用以实现将十进制正整数转换为任意的其他(二~九之间的)进制数,——题源来自老师布置的作业并将转换后的结果在主函数中输出。从键盘输入一个任意正整数作为进制转换中的十进制源数据n,再输入一个2~9之间的整数作为想转换成的目标进制base【多组输入】分析题目:如何把十进制数变成其他的进制?将十进制数除以想要进制数,取余,直到商为零之后,倒顺序。(我们定义的函数就要做这样的事情)。例如100(十进制),变成二进制,0010011取反之后原创 2022-03-25 18:41:57 · 1428 阅读 · 2 评论 -
【c++】某公司采用公共电话传递数据,数据是4位的整数,在传递过程中是加密的加密规则如下,每位数字都加上5//如果加上后大于10就用除以10的余数代替该数字,再将第1位和第4位交换第2位和第3位交换。
某公司采用公共电话传递数据,数据是4位的整数,在传递过程中是加密的加密规则如下,每位数字都加上5//如果加上后大于10就用除以10的余数代替该数字,再将第1位和第4位交换第2位和第3位交换分析题目:1,获得每个数字,让他们加上五,若加上五超过10,则对10取余2,得到每个数字之后,要还原回去,还原的过程就是拆解数字的倒序有了这样的思想之后,我们把这些小过程拼接起来。#include<iostream>#include<stdio.h>usi原创 2022-03-23 20:50:55 · 3956 阅读 · 4 评论 -
韩信点兵(Hanxin)(C++)
韩信点兵(Hanxin)(C++)韩信真有你的!原创 2022-03-22 17:57:49 · 3011 阅读 · 0 评论 -
【C++】函数的定义与调用
函数将一段经常使用的代码封装起来,减少重复的代码返回值类型 函数名 参数表列 函数体语句 Return 表达式注意:在函数定义的时候我们给到的参数并没有真实数据,她只是一个形式上的参数,简称形参。返回值类型 函数名(参数列表){ 函数体语句 Return表达式}例如写一个实现加法的函数:Int add(int a,b){int sum=a+b;return sum;}那么函数要怎么调用?:函数名(参数)即...原创 2022-03-20 14:55:15 · 434 阅读 · 0 评论 -
[C++]二维数组基础~
二维数组一般是以矩阵的形式出现,有行也有列二维数组定义方式:1)、数据类型 数组名[ 行数 ] [列数];2)、数据类型 数组名[行数][列数] = {{数据1,数据2,数据3},{数据4,数据5}};3)、数据类型 数组名[ 行数 ][列数] ={数据1,数据2,数据3,数据4};4)、数据类型 数组名[ ] [列数] = {数据1,数据2,数据3,数据4};建议:以上4种定义方式,利用第二种更直观,提高代码的可读性;例如:int score[3][3] = {..原创 2022-03-20 14:31:51 · 490 阅读 · 0 评论 -
【C++】一维数组基础,便于了解版
数组 目录:1.一维数组1.1 一维数组定义方式1.2 一维数组数组名1.3 冒泡排序所谓数组,就是一个集合,里面存放了相同类型的数据元素。特点1:数组中的每个数据元素都是相同的数据类型特点2:数组是由连续的内存位置组成的1.一维数组1.1 一维数组定义方式①数据类型 数组名[数组长度];②数据类型 数组名[数组长度] = {值1, 值2, ...};③数据类型 数组名[] = {值1, 值2, ...};可以通过下标来访问数组中的元素,从0开始索原创 2022-03-19 17:03:32 · 150 阅读 · 0 评论 -
【C++】一维数组基础
数组 目录:1.一维数组1.1 一维数组定义方式1.2 一维数组数组名1.3 冒泡排序所谓数组,就是一个集合,里面存放了相同类型的数据元素。特点1:数组中的每个数据元素都是相同的数据类型特点2:数组是由连续的内存位置组成的1.一维数组1.1 一维数组定义方式①数据类型 数组名[数组长度];②数据类型 数组名[数组长度] = {值1, 值2, ...};③数据类型 数组名[] = {值1, 值2, ...};可以通过下标来访问数组中的元素,从0开始索原创 2022-03-19 17:00:17 · 483 阅读 · 0 评论 -
[C++]利用递归来求阶乘。
利用递归方法求5!。1.程序分析:递归公式:fn=fn_1*4!递归的思想,不断地调用函数自身,五的阶乘可以缩小为5乘以四的阶乘,4可以缩小为4乘以三的阶乘。总而言之,我们是有办法将一个很大的数字的阶乘通过一步步的简化来得到结果的,阶乘的尽头就是,1的阶乘还是1,这时我们就得到一个确切的数了。#include<iostream>using namespace std;int fun(int a){ if (a == 1)...原创 2022-03-19 15:49:56 · 3962 阅读 · 0 评论 -
【C++】题目:输入三个整数x,y,z,请把这三个数由小到大输出。
题目:输入三个整数x,y,z,请把这三个数由小到大输出。程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。 交换数值的时候不可以直接交换,我们要利用另外一个函数来存储数值,这里我用到了tmp,当然因为这里只需要排序三个数字,我们不需要设定一个交换的函数,如果很多的话,我们可以事先声明一个拿来交换的函数!~代码实现:#include<iostr..原创 2022-03-19 15:24:38 · 4667 阅读 · 2 评论 -
将一个正整数分解质因数C++
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。C++原创 2022-03-17 16:29:10 · 1420 阅读 · 2 评论 -
C++,一球从某一高度落下(整数,单位是米),每次落地后跳回原来高度的一半,再落下。编程计算球在第5次落地时,共经过多少米?第5次反弹多高?【多组输入】
C++,一球从某一高度落下(整数,单位是米),每次落地后跳回原来高度的一半,再落下。编程计算球在第5次落地时,共经过多少米?第5次反弹多高?【多组输入】原创 2022-03-17 13:18:54 · 6372 阅读 · 2 评论 -
c++给定一个正整数a,以及另外的5个正整数。求这5个整数中小于a的整数的和。【多组输入】
给定一个正整数a,以及另外的5个正整数。求这5个整数中小于a的整数的和。【多组输入】输入格式输入一行,只包括6个小于100的正整数,其中第一个正整数就是a输出格式输出一行,给出一个正整数,是5个数中小于a的数的和思路:逐个检查的办法即可,因为已知就五个数字,判断出小于a时,创建一个x来存储加和的数值。#include<iostream>#include<stdio.h>using namespace std;int main() {...原创 2022-03-17 13:02:22 · 2621 阅读 · 1 评论 -
输入日期的年份和月份,求该月有多少天。【多组输入】c++
输入日期的年份和月份,求该月有多少天。【多组输入】提示:月份为1、3、5、7、8、10、12的月份天数为31,月份为4、6、9、11的月份天数为30,月份为2时要结合年份考虑闰年的情况。原创 2022-03-17 12:55:58 · 5544 阅读 · 0 评论 -
水仙花数+质因数c++
题目描述(附加题)水仙花数是一个三位数,其个位数的立方+十位数的立方+百位数的立方=这个数本身,例如153是一个水仙花数。试找出100-999间的所有水仙花数,并对每个水仙花数找出其所有质因数,例如153的质因数有3,3,17原创 2022-03-16 23:42:58 · 259 阅读 · 0 评论 -
斐波那契数列c++
附加题) 斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2)。【多组输入】原创 2022-03-16 23:31:59 · 2695 阅读 · 1 评论