
C++
文章平均质量分 56
梦幻之光_dream
快乐学习每一天
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2050:【例5.20】字串包含
【题目描述】字符串移位包含问题。对于一个字符串来说,定义一次循环移位操作为:将字符串的第一个字符移动到末尾形成新的字符串。给定两个字符串s1和s2,要求判定其中一个字符串是否是另一字符串通过若干次循环移位后的新字符串的子串。例如CDAA是由AABCD两次移位后产生的新串BCDAA的子串,而ABCD与ACBD则不能通过多次移位来得到其中一个字符串是新串的子串。【输入】一行,包含两个字符串,中间由单个空格隔开。字符串只包含字母和数字,长度不超过30。【输出】如果一个字符串是另一字符串通过若干次循环原创 2022-01-16 10:01:28 · 2564 阅读 · 2 评论 -
2049:【例5.19】字符串判等
【题目描述】判断两个由大小写字母和空格组成的字符串在忽略大小写,且忽略空格后是否相等。【输入】两行,每行包含一个字符串。【输出】若两个字符串相等,输出YES,否则输出NO。【输入样例】a A bb BB ccc CCCAa BBbb CCCccc【输出样例】YES【提示】本评测系统基于linux,不支持函数strupr、strlwr。#include<iostream>#include<cstring> using namespace std;//小写原创 2022-01-16 09:43:38 · 3340 阅读 · 1 评论 -
升降序实战-被筛选的元素
文章目录一.偶数中的降序1.问题描述2.代码二.素数中的升序1.问题描述2.代码三.升降序中的平均数1.问题描述2.代码一.偶数中的降序1.问题描述在无序的数列中,找出偶数,并且进行降序排序。输入样例:53 2 16 1 4输出样例:偶数中的降序:16 4 22.代码#include<iostream>#include<algorithm>using namespace std;//降序 bool cmp(int a,int b){ return a&g原创 2021-12-31 13:55:02 · 390 阅读 · 5 评论 -
1180:分数线划定
文章目录1.分数线划定2.代码3.总结1.分数线划定【题目描述】世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的150%划定,即如果计划录取m名志愿者,则面试分数线为排名第m×150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。现在就请你编写程序划定面试分数线,并输出所有进入面试的选手的报名号和笔试成绩。【输入】第一行,两个整数n原创 2021-12-02 23:37:46 · 356 阅读 · 0 评论 -
1072:鸡尾酒疗法
文章目录1.题目描述2.循环版3.数组版1.题目描述【题目描述】鸡尾酒疗法,指“高效抗逆转录病毒治疗”。人们在鸡尾酒疗法的基础上又提出了很多种改进的疗法。为了验证这些治疗方法是否在疗效上比鸡尾酒疗法更好,可用通过临床对照实验的方式进行。假设鸡尾酒疗法的有效率为x,新疗法的有效率为y,如果y-x大于5%,则效果更好,如果x-y大于5%,则效果更差,否则称为效果差不多。下面给出n组临床对照实验,其中第一组采用鸡尾酒疗法,其他n-1组为各种不同的改进疗法。请写程序判定各种改进疗法效果如何。【输入】第一行原创 2021-11-22 14:03:34 · 623 阅读 · 0 评论 -
C++笔记-字符串中的函数运用
文章目录1.getline函数2.size函数3.sort函数4.erase函数5.swap函数6.find函数7.头文件1.getline函数作用:输入一行字符串。用法:getline(cin,s);#include<iostream> #include<cstring>using namespace std;int main(){ string s; getline(cin,s); cout<<s; return 0;}原创 2021-11-03 20:08:58 · 376 阅读 · 0 评论 -
1162:字符串逆序
【题目描述】输入一串以‘!’结束的字符,按逆序输出。【输入】如题述。【输出】如题述。【输入样例】abc!【输出样例】cba#include<iostream>using namespace std;char ch[10000];void com(int n){ //3.利用递归逆序输出 if(ch[n]!='!'){ com(n+1); } else{ return; //返回语句,从哪调用就返回到哪 } cout<<ch[n];原创 2021-11-03 14:25:46 · 2252 阅读 · 0 评论 -
1157:哥德巴赫猜想
【题目描述】哥德巴赫猜想的命题之一是:大于6 的偶数等于两个素数之和。编程将6~100所有偶数表示成两个素数之和。【输入】(无)【输出】分行输出:例如:6=3+38=3+5…(每个数只拆开一次,请保证第一个加数最小)【输入样例】(无)【输出样例】(无)#include<iostream>using namespace std;bool isPrime(int x){ //3.判断x是否是素数 if(x<2) return false; //2之前的原创 2021-10-31 19:10:11 · 2089 阅读 · 1 评论 -
最大值函数
文章目录1.最大值函数的描述2.刚开始的代码3.第一次优化4.程序多次优化后的结果1.最大值函数的描述输入三个数,调用函数,进行最大值判断,打印最大的值。输入样例1:1 2 3输入样例2:1 3 2输入样例3:2 1 3输入样例4:2 3 1输入样例5:3 1 2输入样例6:3 2 1输出样例:32.刚开始的代码用if…else…嵌套的方法,来写最大值函数。#include<iostream> using namespace std;int com(int x,in原创 2021-10-24 15:35:27 · 1921 阅读 · 0 评论 -
getline函数与cin的区别
文章目录一.cin二.getline三.通过例子得出结论四.getline的实战案例一.cin#include<iostream>#include<cstring>using namespace std;int main(){ string s; cin>>s; cout<<s; return 0;}二.getline#include<iostream>#include<cstring>using na原创 2021-10-21 15:46:24 · 1078 阅读 · 0 评论 -
2044:【例5.12】回文字串
文章目录题目描述解法1:算法头文件中的函数解法2:一维数组题目描述输入一串字符,字符个数不超过100,且以“.”结束。 判断它们是否构成回文。【输入】一行字符串。【输出】是否为回文串。是输出“Yes”,否输出“No。”【输入样例】abccb【输出样例】No解法1:算法头文件中的函数#include<bits/stdc++.h> //万能头文件,包含多个子头文件 #include<algorithm> //算法头文件 using namespace st原创 2021-10-20 20:37:05 · 3118 阅读 · 0 评论 -
2043:【例5.11】杨辉三角形
文章目录1.杨辉三角形2.源码3.图文题解1.杨辉三角形【题目描述】例5.11 打印杨辉三角形的前n(2≤n≤20)行。杨辉三角形如下图:当n=5时 1 1 1 1 2 1 1 3 3 11 4 6 4 1输出:11 11 2 11 3 3 11 4 6 4 1【输入】输入行数n。【输出】输出如题述三角形。n行,每行各数之间用一个空格隔开。【输入样例】5【输出样例】11 11 2 1原创 2021-10-18 20:37:24 · 3119 阅读 · 1 评论 -
2034:【例5.1】反序输出
【题目描述】输入n个数,要求程序按输入时的逆序把这n个数打印出来,已知整数不超过100个。也就是说,按输入相反顺序打印这n个数。【输入】输入一行共有n个数,每个数之间用空格隔开。【输出】如题要求:一行,共有n个数,每个数之间用一个空格隔开。【输入样例】1 7 3 4 5【输出样例】5 4 3 7 1#include<iostream>using namespace std;int main(){ int a[105]; int n=0,x; while(cin&原创 2021-10-18 15:53:42 · 13057 阅读 · 4 评论 -
2042:【例5.10】稀疏矩阵
【题目描述】n×m矩阵大部分元素是0的矩阵称为稀疏矩阵,假设有k个非0元素,则可把稀疏矩阵用K×3的矩阵简记之,其中第一列是行号,第二列是列号,第三列是该行、该列下的非元素的值。如:0 0 0 50 2 0 00 1 0 0写简记成:1 4 5 //第1行第4列有个数是52 2 2 //第2行第2列有个数是23 2 1 //第3行第2列有个数是1试编程读入一稀疏矩阵,转换成简记形式,并输出。【输入】第一行为n和m,n为行数,m为列数;接下来是一个n×m的原创 2021-10-18 15:31:43 · 1983 阅读 · 3 评论 -
2041:【例5.9】新矩阵
文章目录1.题目2.源码3.图文题解4.当分不清楚i与j的时候,就可以用代码验证的方法进行下标的区分1.题目【题目描述】已知一个n×n(2≤n≤20)的矩阵(方阵),把矩阵二条对角线上的元素值加上10,然后输出这个新矩阵。【输入】第一行为n;下面为一个n×n,矩阵中各正整数小于100。【输出】输出新的矩阵。共n行,每行n数,各数之间用一个空格隔开。【输入样例】513 66 53 89 5511 72 61 62 4690 10 38 10 5595 20 43 27 1960原创 2021-10-18 15:01:14 · 1994 阅读 · 0 评论 -
2023:【例4.8】数据统计
【题目描述】输入一些整数,求出它们的最小值、最大值和平均值(保留3位小数)。输入保证这些数都是不超过1000的整数。【输入】一行,若干个整数。【输出】一行,即,最小值、最大值和平均值(保留3位小数)。【输入样例】1 2 3【输出样例】1 3 2.000【提示】【数据范围】数据个数不超过100。#include<iostream>using namespace std;#include<cstdio>int main(){ int x,n=0,min原创 2021-10-08 01:05:42 · 3968 阅读 · 5 评论 -
C++实现九九乘法表
文章目录一.题目:利用双重循环打印九九乘法表二.实现思路①外层循环i的规律:从1开始,每加一次1,就会换行1次。i可以从1循环到9,要用循环语句。②内层循环j的规律:从1循环到i ,例如i循环到3的时候,j就循环到3,i循环到4的时候,j就循环到4。③掌握规律之后,逐步分解,从少到多。阶梯式源码④接下来,可以试着加乘号、等号、相乘之后得到的结果,完成从少到多的过程。三.源码一.题目:利用双重循环打印九九乘法表1X1=11X2=2 2X2=41X3=3 2X3=6 3X3=91X4=4 2X原创 2021-09-17 17:16:14 · 26874 阅读 · 3 评论 -
1154:亲和数
【题目描述】自然数a的因子是指能整除a的所有自然数,但不含a本身。例如12的因子为:1,2,3,4,6。若自然数a的因子之和为b,而且b的因子之和又等于a,则称a,b为一对“亲和数” 。求最小的一对亲和数(a<>b)。【输入】(无)【输出】1行,分别为a和b(a<b)。【输入样例】(无)【输出样例】(无)#include<iostream>using namespace std;int factSum(int x){ int sum=0; for(原创 2021-09-17 16:41:07 · 398 阅读 · 3 评论 -
1050:骑车与走路
【题目描述】在清华校园里,没有自行车,上课办事会很不方便。但实际上。并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间。假设找到自行车,开锁并骑上自行车的时间为27秒;停车锁车的时间为23秒;步行每秒行走1.2米,骑车每秒行走3.0米。请判断走不同的距离去办事,是骑车快还是走路快。如果骑车快,输出一行"Bike";如果走路快,输出一行"Walk";如果一样快,输出一行"All"。【输入】输入一行,包含一个整数,表示一次办事要行走的距离,单位为米。【输出】输出一行,如原创 2021-09-10 17:29:10 · 316 阅读 · 0 评论 -
2058:【例3.10】简单计算器
【题目描述】一个最简单的计算器支持+,-,,/四种运算。输入只有一行:两个参加运算的数和一个操作符(+,-,,/)。输出运算表达式的结果。考虑下面两种情况:(1)如果出现除数为0的情况,则输出:Divided by zero!(2)如果出现无效的操作符(即不为+,-,*,/之一),则输出:Invalid operator!【输入】一行,前面两个数,再一个运算符号。【输出】运算表达式的结果。【输入样例】34 56 +【输出样例】90【提示】【样例2】输入:2 1.2 -输出:原创 2021-09-10 16:53:04 · 993 阅读 · 0 评论 -
用三重循环求三个未知数的解
题目描述 通过下列的等式,求出爸爸、妈妈、儿子各几岁?爸爸+妈妈=70爸爸+儿子=52妈妈+儿子=50#include<iostream>using namespace std; int main(){ for(int x=1;x<100;x++) { for(int y=1;y<100;y++) { for(int z=1;z<100;z++) { if(x+y==70&&x+z==52&原创 2021-09-09 20:07:44 · 606 阅读 · 0 评论 -
2025:【例4.11】体操队
【题目描述】校体操队到操场集合,排成每行2人,最后多出1人;排成每行3人,也多出1人;分别按每行排4,5,6人,都多出1人;当排成每行7人时,正好不多。求校体操队至少多少人?【输入】如题述,无。【输出】校体操队人数。例如:人数为15,直接输出15就可以啦。【输入样例】无【输出样例】无解法1#include<iostream>using namespace std;int main(){ for(int peo=2;;peo++) { if(peo%2==原创 2021-09-09 19:51:31 · 1272 阅读 · 0 评论 -
2024:【例4.10】末两位数
【题目描述】求n个1992的乘积的末两位数是多少?【输入】输入n。【输出】如题述的末两位数。【输入样例】3【输出样例】88【提示】【数据范围】对于所有数据:n<2000。#include<iostream>using namespace std;int main(){ int n,f=1; cin >> n; int i=1; do{ f=f*1992; f=f%100; //防止数据溢出 i++; }while(i&原创 2021-09-09 19:19:37 · 1269 阅读 · 0 评论 -
2069:【例2.12 】糖果游戏
2069:【例2.12 】糖果游戏【题目描述】某幼儿园里,有5个小朋友编号为1、2、3、4、5,他们按自己的编号顺序围坐在一张圆桌旁。他们身上都有若干个糖果(键盘输入),现在他们做一个分糖果游戏。从1号小朋友开始,将自己的糖果均分三份(如果有多余的糖果,则立即吃掉),自己留一份,其余两份分给他的相邻的两个小朋友。接着2号、3号、4号、5号小朋友同样这么做。问一轮后,每个小朋友手上分别有多少糖果。【输入】5个小朋友的糖果数。【输出】游戏后5个小朋友的糖果数。(按5位宽度输出)【输入样例】8 9原创 2021-09-09 18:46:45 · 1670 阅读 · 0 评论 -
C++基础教程13-结构体
文章目录1.结构体的定义和使用1.结构体的定义和使用原创 2021-04-22 16:42:33 · 511 阅读 · 0 评论 -
C++基础教程12-指针
文章目录1.指针的概述2.指针的定义和使用3.用图形理解指针4.指针所占的内存空间5.空指针6.野指针7.使用const修饰8.指针和数组9.指针和函数10.指针、数组、函数的综合案例篇章1.指针的概述指针的作用:可以间接访问内存地址。可以利用指针变量保存地址。内存地址的编号:地址是十六进制组成,所以内存编号是从0开始,F结束。十六进制不能出现16,也就是G。十六进制的两位数表示方式:A=10 B=11 C=12 D=13 E=14 F=152.指针的定义和使用指针变量定义的语法:数据类原创 2021-04-21 18:45:03 · 780 阅读 · 2 评论 -
C++基础教程11-函数
文章目录一.函数的作用二.函数的定义三.函数的调用1.函数的调用2.总结四.值传递1.值传递2.一张图理解这个案例五.函数的常见样式1.无参无返2.有参无返3.无参有返4.有参有返六.函数的声明七.函数的分文件编写八.系统函数篇章一.函数的作用函数的作用:将一段经常使用的代码封装起来,减少代码的重复使用。例如,一个较大的程序分成了若干个部分,每个部分都要写特定的功能。二.函数的定义函数的定义语法:返回值类型 函数名(参数列表){ 函数体语句 return 表达式}#inclu原创 2021-04-21 00:31:02 · 1559 阅读 · 5 评论 -
C++基础教程10-数学运算
文章目录1.数学函数2.用数学函数进行公式运算3.随机数篇章1.数学函数#include <iostream>using namespace std;#include <cmath> //引入数学函数的头文件 ,采用C语言的风格 #define pi 3.1415926 //定义一个常量π int main(){ printf("整数运算:1+2=%d",1+2); //整数运算,%d是将数字字符串转成整数字符串,进行自动地运算 printf("\n"); //换行原创 2021-04-20 17:58:00 · 1134 阅读 · 1 评论 -
C++基础教程9-二维数组
文章目录一. 二位数组的概述二.定义二位数组的四种方法1.定义二维数组的第一种方法2.定义二维数组的第二种方法3.定义二维数组的第三种方法4.定义二维数组的第四种方法三.二维数组的案例四.一张图理解二维数组五.总结篇章一. 二位数组的概述二维数组:从字面意思来看,二维数组只是比一维数组多了一个维度。二.定义二位数组的四种方法①数据类型 数组名 [ 行数 ] [ 列数 ];int arr[2][3]②数据类型 数组名 [行数] [列数] = {{数据1,数据2},{数据3,数据4}};int原创 2021-04-19 19:56:22 · 3871 阅读 · 0 评论 -
C++基础教程8-一维数组
文章目录一.数组的概述二.定义一维数组的三种方法1.定义一维数组的第一种方法2.定义一维数组的第二种方法3.定义一维数组的第三种方法三.一维数组名的用途1.统计整个数组内存中的长度2.获取数组在内存中的首地址四.一维数组的案例1.求最大值2.元素逆置五. 总结一.数组的概述数组(array):从字面意思来看,是数据的组合。从数学的角度来讲,就一些数字组合在一起,变成了集合。特点1:数据类型相同的数据才能存放到一起,不同数据类型的数据是不能放在一起的。例如·,整型和字符串型不能放在一起。特点2原创 2021-04-18 01:51:17 · 4242 阅读 · 0 评论 -
C++基础教程7-循环结构
文章目录一.循环类型1.for循环①从小到大②从大到小2.while循环①从小到大②从大到小3.do...while循环二.循环控制语句1.break2.continue3.goto三.无限循环篇章一.循环类型循环:一直做同一件事。嵌套循环:一个循环里有多个循环,多个循环有多个子循环。1.for循环①从小到大格式: for(定义和变量赋值;变量<=3;变量++) { }流程图:源码:#include<iostream>using namespace std原创 2021-04-17 20:29:12 · 911 阅读 · 0 评论 -
C++基础教程5-顺序结构
文章目录一.理解顺序结构1.流程图2.根据流程图写的代码3.运行结果二.聊天机器人1.源码2.运行效果篇章一.理解顺序结构顺序结构:相当于流程图,写在前面的代码先执行。1.流程图2.根据流程图写的代码#include<iostream>using namespace std;int main(){ int num; cout << "请输入一个数" << endl; cin >> num; cout <<原创 2021-04-16 13:40:39 · 843 阅读 · 0 评论 -
C++基础教程6-选择结构
文章目录1.if语句2.if..else语句3.if...elseif语句4.if综合案例5.switch语句6.嵌套if1.if语句if:如果…那么#include<iostream>using namespace std;int main(){ int a; cin >> a; if(a>90) //满足条件 ,才能输出下面的结果 { cout << "a是一个大于90的数" ; } return原创 2021-04-16 00:19:12 · 877 阅读 · 0 评论 -
C++基础教程4-运算符
文章目录一.算术运算符1.加减乘除2.取余运算3.递增运算二.赋值运算符三.比较运算符四.逻辑运算符五.三目运算符一.算术运算符1.加减乘除逻辑思路:我们先要输入两个数,再得到四个结果。所以,我们需要定义6个变量。接着,我们需要用到算术运算符来进行加(+)、减(-)、乘(*)、除(/),得到四个结果,来实现一键式的四则运算。知识扩展强制转换:将一种数据类型转换成另一种数据类型。算术运算符的表达式:四则运算一键式#include<iostream>using namespa原创 2021-04-15 22:52:32 · 575 阅读 · 0 评论 -
C++基础教程3-数据类型
文章目录一.换行的两种方式1.使用具有换行功能的函数(endl)2.使用转义符("\n")二.基本的数据类型1.整型(int)2.实型①.浮点型(float)②.双浮点型(double)③实型的综合案例4.字符型(char)5.字符串类型(string)6.布尔型(bool)三.转义字符四.sizeof关键字五.数据的输入和输出一.换行的两种方式1.使用具有换行功能的函数(endl)#include<iostream>using namespace std;int main(){原创 2021-04-15 19:56:19 · 544 阅读 · 0 评论 -
C++基础教程2-变量与常量
文章目录一.编程必备的快捷键二.单行注释和多行注释三.变量与常量1.变量2.常量3.变量与常量的区别四.C++中的关键字五.变量命名规则一.编程必备的快捷键Ctrl+/ :单行注释Ctrl+S :保存Ctrl+Z :还原Ctrl+C :复制Ctrl+V :粘贴Ctrl+X :剪切Ctrl+N:新建一个cpp文件Ctrl+W: 关闭一个cpp文件二.单行注释和多行注释单行注释://#include<iostream>using namespace std;int m原创 2021-04-15 17:51:36 · 571 阅读 · 0 评论 -
C++基础教程1-基本的语法结构
文章目录1.编译器的安装2.代码最基本的格式1.输出HelloWorld2.如何理解头文件3.如何理解命名空间4.如何理解主函数和花括号{ }5.如何理解cout6.如何理解 <<7.如何理解return 0;1.编译器的安装传送门2.代码最基本的格式1.输出HelloWorld#include<iostream> //头文件,控制输入和输出using namespace std; //告诉编译器使用std命名空间int main()//主函数{ //代码块开始原创 2021-04-14 20:13:22 · 770 阅读 · 0 评论 -
C++编译器安装的三种方法
文章目录1.百度网盘2.官网下载Dev-C++3.visual studio 2019官网安装1.百度网盘链接:https://pan.baidu.com/s/1A12Fe5JhX3PiLCelQQG2Xw提取码:b3vz复制这段内容后打开百度网盘手机App,操作更方便哦2.官网下载Dev-C++官网下载链接:https://bloodshed-dev-c.en.softonic.com/或者直接百度搜索Dev-C++官网,也是可以搜索到的3.visual studio 2019官网安装原创 2021-04-09 23:03:12 · 2732 阅读 · 0 评论 -
C++游戏开发1-猜数字
文章目录一.编译器二.猜数字1.逻辑思路2.代码展示三.程序演示效果一.编译器Dev-C++二.猜数字1.逻辑思路①生成随机数创建空指针,将系统随机的时间传入空指针。②寻找随机数,并且进行判断用for循坏来遍历,如果找到随机数就输出结果,如果没找到就继续输入、扣分。③对输出的分数进行等级评测用switch语句来判断分数处在哪一个等级。2.代码展示#include <iostream> //头文件:输入、输出 #include <cstdlib> //原创 2021-04-09 22:45:20 · 457 阅读 · 0 评论