![](https://img-blog.csdnimg.cn/20210324110717246.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
C++习题/笔记
C++的一些学习心得、解题思路等。
调参侠鱼尾
编程小白多多指教!
展开
-
【C++笔记】find函数的用法
C++笔记:find函数的用法一级目录二级目录三级目录原创 2021-05-26 14:25:37 · 1224 阅读 · 0 评论 -
【C++笔记】vector容器用法(持续更新)
C++笔记:vector容器用法原创 2021-05-16 15:54:36 · 591 阅读 · 0 评论 -
【C++笔记】array的基本操作(持续更新)
C++笔记:array的基本操作原创 2021-05-13 20:55:14 · 322 阅读 · 0 评论 -
C++练习25:计算输入字符串中每个字母出现的次数
C++练习25:计算输入字符串中每个字母出现的次数题目输出示例代码方法1:方法2:题目计算输入字符串中每个字母出现的次数,不区分大小写。输入格式:输入长度不超过100的仅包含26个英文字母的字符串。输出格式:输出每个字母出现的次数。输出示例Input:SupercaliociousOutput:the number of a : 1the number of c : 2the number of e : 1the number of i : 2the number of l : 1原创 2021-07-11 16:56:49 · 10748 阅读 · 2 评论 -
C++练习24:整数反转(LeetCode)
C++练习24:整数反转题目代码题目给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有 符号整数的范围 [−2^31, 2^31 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。来源:力扣(LeetCode)链接:题目链接.代码#include <iostream>using namespace std;class Solution {public: int reverse(in原创 2021-07-06 20:25:39 · 70 阅读 · 0 评论 -
C++练习23:矩阵旋转
C++练习23:题目代码输出示例题目写一个程序来旋转矩阵:输入三个正整数r, c和m,其中r和c应不大于10,m应大于或等于0。输入一个有r行和c列的整数矩阵。编写一个函数rotate(row, len, m)来将包含len元素的行向量旋转m。在main()函数中调用rotate()来旋转输入矩阵的每一行,并输出结果。示例如下:代码在这里插入代码片输出示例...原创 2021-07-03 18:44:39 · 549 阅读 · 0 评论 -
C++练习22:21点游戏
C++练习7:21点游戏题目代码题目在21点游戏中,无论花色如何,从2到10的牌都是按牌面数的;所有带脸的牌(杰克、王后和国王)都算为10;一张ace被算作1或11,这取决于玩家手中所有牌的总数。只有当玩家手中所有牌的总价值不超过21时,ace才算11;否则,它被算作1。使用这些信息,编写一个c++程序,接受三个纸牌值作为输入(1对应于ace, 2对应于2,等等),计算手牌的总价值,并显示这三张纸牌的值。代码#include<stdio.h>int main(){ int a[原创 2021-07-01 21:14:37 · 438 阅读 · 0 评论 -
C++练习21:矩阵转置
C++练习21:矩阵转置题目代码输出示例题目编写程序,输入矩阵行和列,输出转置后矩阵。代码#include <iostream>using namespace std;int main(){ int row_num, col_num, i, j; int data[100][100]; cout << "请输入矩阵的行数和列数" << endl; cout << "行数row_num:"; cin &原创 2021-07-01 21:04:35 · 590 阅读 · 1 评论 -
C++练习20:类的使用
C++练习20:类的使用题目代码题目a. 构造一个雇员class。每个员工由一个整数ID号、双精度工资率和员工每周应工作的最大小时数。该类提供的服务有,为新雇员输入数据的功能,为新雇员更改数据的功能,以及为新雇员显示现有数据的功能。b. 要求为三个雇员输入数据,然后显示输入的数据。c. 修改程序,使其包含一个为用户提供以下选择的菜单:添加员工修改员工数据删除员工退出菜单程序应该启动一个操作来实现用户的选择。代码在这里插入代码片...原创 2021-06-12 00:00:51 · 136 阅读 · 2 评论 -
C++练习19:宝石与石头
C++练习19:宝石与石头(力扣771)题目思路代码题目给定字符串J代表石头中宝石的类型,和字符串 S代表你拥有的石头。 S中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。J中的字母不重复,J 和 S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。示例 1:输入: J = “aA”, S = “aAAbbbb”输出: 3示例 2:输入: J = “z”, S = “ZZ”输出: 0注意:S 和J最多含有50个字母。J 中的字符不重原创 2021-05-22 14:20:35 · 254 阅读 · 0 评论 -
C++练习18:判断回文字符串
C++练习18:判断回文字符串题目方法1(反转对比法):思路代码方法2(扫描法):思路代码题目输入一个字符串并打印该字符串是否是回文(回文是向后和向前读取相同内容的字符串)。方法1(反转对比法):思路使用reverse()反转字符串,再与原字符串对比,若一样则原字符串为回文,反之。代码#include<iostream>#include<string>#include<algorithm>using namespace std;int main()原创 2021-05-20 08:34:54 · 2754 阅读 · 0 评论 -
C++练习17:统计字符串中有多少个单词
C++练习15:统计字符串中有多少个单词题目遇到的困难最终代码题目编写一个c++程序,计算字符串中的单词数。每当遇到从空白到非空白字符的转换时,就会遇到单词。字符串只包含由空格分隔的单词。遇到的困难一开始感觉这题没啥特别的,比较简单,但是遇到了个坑(原本的代码如下):#include <string>#include <iostream>using namespace std;int main(){ string s; cout << "请输入一原创 2021-05-19 10:51:37 · 5538 阅读 · 4 评论 -
C++练习16:冒泡排序
C++练习16:冒泡排序题目思路代码参考文章题目用户输入N个实数,使用冒泡排序方法对这N个元素排序,输出排序后的数据。思路两两比较待排序序列中的元素,并交换不满足顺序要求的各对元素,直至全部满足顺序要求为止代码#include <iostream>using namespace std;int main(){ int i, j, temp, moves = 0,N = 10; int nums[N] = {22,5,67,98,45,32,101,99,73,10}原创 2021-05-03 11:43:52 · 714 阅读 · 0 评论 -
C++练习15:求出一组数中的最大值
C++练习15:题目思路代码题目求出一组数中的最大值思路将数据储存在数组中,设第一个数据为max,利用for循环遍历数组中每个数据,若某个数据大于max,则将其赋值给max。代码#include <iostream>using namespace std;int main(){ const int MAXELS = 5; int i, max, nums[MAXELS] = {2, 18, 1, 27, 16}; max = nums[0]; for (i =原创 2021-05-02 20:51:08 · 4474 阅读 · 0 评论 -
C++练习14:求两个数的最大公约数gcd
C++练习14:求两个数的最大公约数gcd题目思路代码题目求两个不相等正整数的最大公约数gcd思路欧几里得法(辗转相除法):欧几里得算法又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数。假如需要求 1997 和 615 两个正整数的最大公约数,用欧几里得算法,是这样进行的:1997 / 615 = 3 (余 152)615 / 152 = 4(余7)152 / 7 = 21(余5)7 / 5 = 1 (余2)5 / 2 = 2 (余1)2 / 1 = 2 (余0)至此,最大原创 2021-05-01 20:11:01 · 1434 阅读 · 4 评论 -
C++练习13:国王赏米
C++练习13:国王赏米题目思路代码题目思路代码原创 2021-04-20 13:53:34 · 1086 阅读 · 0 评论 -
C++练习12:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1
C++练习12:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1题目方法1方法2题目给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。Input:leetcodeOutput:0方法1#include <iostream>using namespace std;int main(){ string s; cout << "请输入一个字符串:"; cin >> s; i原创 2021-04-19 08:56:38 · 1485 阅读 · 1 评论 -
C++练习11:计算a+aa+aaa+aa…a+…
C++练习11:计算a+aa+aaa+aa…a+…题目方法1(for循环):方法2(while循环):题目输入2个正整数a和n,计算a+aa+aaa+aa…a+…例如,输入2和3,计算2+22+222,输出246。方法1(for循环):#include <iostream>using namespace std;int main(){ int a,b,n,s=0; cout << "请输入a:"; cin >> a原创 2021-04-18 20:28:57 · 3122 阅读 · 4 评论 -
C++练习10:判断完全数
C++练习10:判断完全数题目方法1题目如果一个数它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身,则称该数为“完全数” 。例如:第一个完全数是6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6。第二个完全数是28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。第三个完全数是496,有约数1、2、4、8、16、31、62、124、248、496,除去其本身496外,其余9个数相加,1+2+4+8+16原创 2021-04-14 10:52:07 · 1841 阅读 · 0 评论 -
C++练习9:猜数字小游戏
C++练习9:猜数字小游戏题目思路代码题目编写一个c++程序,生成一个1到100之间的随机数。然后你的程序应该让玩家猜测数值。每次猜错之后,玩家都要计算自己的猜测次数,告诉玩家猜错的次数是太多还是太少,然后再让玩家猜一次。当玩家找到正确的数字时,你的程序应该显示猜测的次数。在第7次猜对之后,不管猜对与否,程序都会停止。思路代码...原创 2021-04-07 16:35:10 · 679 阅读 · 0 评论 -
C++练习8:倒序输出Z-A
C++练习8:倒序输出Z-A题目代码题目C++编写一个程序:从Z到A倒着显示字母表的大写字母代码#include <iostream>using namespace std;int main() { for (char i ='Z' ; i >= 'A'; i--) { cout << i << endl; } return 0;}...原创 2021-04-07 09:46:18 · 688 阅读 · 0 评论 -
C++练习7:判断一个数是否为2的幂次方
C++练习4:判断一个数是否为2的幂次方题目解题方法1(对数法):方法2(累除法):题目判断一个数是否为2的幂次方,如果存在一个整数x使n = 2^x,那么整数n是2的幂次方。解题方法1(对数法):#include<iostream>#include<cmath>using namespace std;int main(){ double num,x; //以2为底的对数函数 cout<<"请输入一个数字:"<<endl; c原创 2021-04-05 15:29:37 · 2393 阅读 · 0 评论 -
C++练习6:整数反转
C++练习6:整数反转题目官方参考答案方法1(取模运算法):方法2(字符串法):题目给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−2^31 , 2 ^31-1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321示例 3:输入:x = 120输出:21示例 4:输入:x = 0输出:0来源:力扣原创 2021-03-28 12:49:14 · 475 阅读 · 0 评论 -
C++练习5:字符串压缩
C++练习5:字符串压缩题目思路&参考资料完整代码题目实现一种使用重复字符计数来执行基本字符串压缩的方法。例如,字符串aabcccccaaa将变成a2blc5a3。如果“压缩”的字符串不会比原始字符串更小,那么方法应该返回原始字符串。可假设字符串只有大写字母和小写字母(a - z)。思路&参考资料一些字符串的基本操作:#include <iostream>#include <string>using namespace std;int main(原创 2021-03-26 23:20:38 · 1232 阅读 · 0 评论 -
C++练习4:求数组中最大三个数的积
C++练习4:求数组中最大三个数的积题目二级目录代码题目二级目录代码#include<iostream>#include<algorithm>using namespace std;int main(){ int i,m; cout<<"请输入数组大小:"<<endl; cin>>m; // 设置数组大小 cout<<"请输入数据(用空格分开):"<<endl; //输入数据 in原创 2021-03-25 14:11:46 · 676 阅读 · 0 评论 -
C++练习3:判断丑数
判断丑数题目基本思路代码题目输入一个整数,判断其是否为丑数Ugly Number。(把只包含质因子2,3和5的数称作丑数。例如6、8都是丑数,但7、14不是,因为它们包含质因子7。 习惯上我们把1当做是第一个丑数。)基本思路使用bool()函数进行丑数判断代码#include<iostream>using namespace std; bool UglyNumber(int num){ while(num%2==0) { num/=2; } while(num%原创 2021-03-24 11:04:27 · 1152 阅读 · 1 评论 -
C++练习2:判断回文数
C++练习1题目方法一:题目判断一个数字是否为回文数。回文数是指正序(从左到右)和倒序(从右到左)读都是一样的数字。例如:12321方法一:#include <iostream>#include <math.h>using namespace std; int main(){ int n; printf("输入一个整数: "); scanf("%d", &n); if (n > pow(2,23)-1 || n &原创 2021-03-23 22:13:36 · 919 阅读 · 0 评论 -
C++练习1:估算π的值
C++练习题目代码题目π的估算可以使用以下序列:利用这个公式编写c++程序估算π值(可使用该公式的前任意项估算)代码#include <iostream>#include <math.h>using namespace std;int main(){ double a,j,i,m,n=0,s=0; cout << "Please enter how many terms you want to calculate this series" &l原创 2021-03-22 08:13:21 · 734 阅读 · 0 评论