C++是使用最广泛的编程语言之一。它每天都被数百万程序员使用,是竞争性编程的首选语言。在这里,我们将列出11 C++代码片段,可以帮助您解决日常编程问题。因此,事不宜迟,让我们开始吧。
我们嗯可以使用 size() 函数找到向量的大小。
#include <bits/stdc++.h>using namespace std; int main(){ vector <int> arr1 = {1, 2, 3, 4}; vector <int> arr2 = {}; vector <float> arr3 = {1.2, 3.8, 3.0, 2.7, 6.6}; cout << "Size of arr1: " << arr1.size() << endl; cout << "Size of arr2: " << arr2.size() << endl; cout << "Size of arr3: " << arr3.size() << endl; return 0;}
输出:
Size of arr1: 4Size of arr2: 0Size of arr3: 5
我们可以使用 shuffle() 函数在C++中随机排列数组。
#include <bits/stdc++.h>using namespace std; int main(){ vector <int> arr = {1, 2, 3, 4}; unsigned seed = 0; cout << "Original array:"; for (int ele: arr) { cout << ele << " "; } cout << endl; shuffle(arr.begin(), arr.end(), default_random_engine(seed)); cout << "Shuffled array:"; for (int ele: arr) { cout << ele << " "; } return 0;}
输出:
Original array:1 2 3 4Shuffled array:2 3 1 4
我们可以使用C++ STL 库的内置 swap() 函数交换C++中的两个变量。
#include <bits/stdc++.h>using namespace std; int main(){ int x = 5, y = 10; string str1 = "MakeUseOf", str2 = "MUO"; cout << "Before Swapping: " << endl; cout << "x: " << x << endl; cout << "y: " << y << endl; cout << "str1: " << str1 << endl; cout << "str2: " << str2 << endl; swap(x, y); swap(str1, str2); cout << "After Swapping: " << endl; cout << "x: " << x << endl; cout << "y: " << y << endl; cout << "str1: " << str1 << endl; cout << "str2: " << str2 << endl; return 0;}
输出:
Before Swapping:x: 5y: 10str1: MakeUseOfstr2: MUOAfter Swapping:x: 10y: 5str1: MUOstr2: MakeUseOf
我们可以使用以下过程找到数字的数字总和:
#include <bits/stdc++.h>using namespace std; int main(){ int num = 4635, sum = 0, temp; while (num != 0) { temp = num%10; sum = sum+temp; num = num/10; } cout << "Sum: " << sum << endl; return 0;}
输出:
Sum: 18将一个矢量复制到另一个矢量
C++可以使用赋值运算符或将向量作为构造函数传递来执行相同的操作。
#include <bits/stdc++.h>using namespace std; void printVector(vector <int> vec){ for (auto ele: vec) { cout << ele << " "; } cout << endl;} int main(){ vector <int> vec = {1, 2, 3, 4, 5}; printVector(vec); // Method 1: Using Assignment Operator vector <int> newVec1 = vec; printVector(newVec1); // Method 2: By passing vector as constructor vector <int> newVec2(vec); printVector(newVec2); return 0;}
输出:
1 2 3 4 51 2 3 4 51 2 3 4 5
我们可以分别使用max_element()和min_element()函数从数组中找到最大和最小元素。
#include <bits/stdc++.h> using namespace std; int main(){ int arr[] = {23, 56, 87, 12, 56}; int size = sizeof(arr)/sizeof(arr[0]); cout << "Max element: " << *max_element(arr, arr+size) << endl; cout << "Min element: " << *min_element(arr, arr+size) << endl; return 0;}
输出:
Max element: 87Min element: 12
我们可以使用 insert() 函数在集合中插入元素。此函数接受元素作为将插入到集合中的参数。
#include <bits/stdc++.h>using namespace std; int main(){ set<string> st; st.insert("Make"); st.insert("Use"); st.insert("Of"); st.insert("Of"); for (auto it = st.begin(); it != st.end(); it++) { cout << *it << " "; } return 0;}
输出:
Make Of Use
可以使用以下方法从字符串中删除重复字符:
#include <bits/stdc++.h>using namespace std; void removeDuplicateCharacters(char str[], int size){ int newIndex=0; // Traversing through all the characters for (int i = 0; i < size; i++) { int j; // Traversing loop from the first character to current character for (j = 0; j < i; j++) { if (str[i] == str[j]) { break; } } if (j == i) { str[newIndex++] = str[i]; } } // After removing duplicates, we make // the vacant part of string to null str[newIndex] = '/0';}int main(){ char str[] = "MakeUseOf"; int size = strlen(str); cout << "Original String: " << endl; cout << str << endl; removeDuplicateCharacters(str, size); cout << "New String: " << endl; cout << str << endl; return 0;}
输出:
Original String:MakeUseOfNew String:MakeUsOf
您可以使用 length() 函数查找C++字符串的长度。或者,您也可以使用 size() 函数(它是长度() 函数的别名)。
#include <bits/stdc++.h>using namespace std; int main(){ string str1 = "MakeUseOf"; cout << "Length of " << str1 << " : " << str1.length() << endl; string str2 = "lorem ipsum"; cout << "Length of " << str2 << " : " << str2.size() << endl; return 0;}
输出:
Length of MakeUseOf : 9Length of lorem ipsum : 11
可以使用以下方法从数组中删除元素:
#include <bits/stdc++.h>using namespace std; int deleteElementFromArray(int arr[], int size, int elementToBeDeleted){ int i, j; // Search if elementToBeDeleted is present // in the array or not for (i = 0; i < size; i++) { if (arr[i] == elementToBeDeleted) { break; } } // If elementToBeDeleted is found in the array if (i < size) { // We need to reduce the size of the array // and shift the rest elements size = size - 1; for (j = i; j < size; j++) { arr[j] = arr[j+1]; } } // New array size is returned return size;} void printArrayElements(int arr[], int size){ for (int i = 0; i < size; i++) { cout << arr[i] << " "; } cout << endl;}int main(){ int arr[] = {1, 2, 3, 4, 5}; int size = sizeof(arr)/sizeof(arr[0]); cout << "Original Array: " << endl; printArrayElements(arr, size); int elementToBeDeleted = 3; size = deleteElementFromArray(arr, size, elementToBeDeleted); cout << "New array: " << endl; printArrayElements(arr, size); return 0;}
输出:
Original Array:1 2 3 4 5New array:1 2 4 5
有时,直接理解复杂的代码并不容易。您应该遵循一些基本的编程原则,如记录代码、重构等,以使代码更加健壮。
您可以通过多种方式循环访问向量。以下是迭代向量的三种最常用的方法:
(1) 使用范围:
#include <bits/stdc++.h>using namespace std; int main(){ vector <int> vec = {1, 2, 3, 4, 5}; // Method 1: Using range for for (auto element: vec) { cout << element << " "; } return 0;}使用索引#include <bits/stdc++.h>using namespace std; int main(){ vector <int> vec = {1, 2, 3, 4, 5}; // Method 2: Using indexing for (int i = 0; i < vec.size(); i++) { cout << vec[i] << " "; } return 0;}
(2) 使用迭代器的引用:
#include <bits/stdc++.h>using namespace std; int main(){ vector <int> vec = {1, 2, 3, 4, 5}; // Method 3: Using reference of the iterator for (auto it = begin(vec); it != end(vec); it++) { cout << *it << " "; } return 0;}
以上三个代码将显示相同的输出:
1 2 3 4 5
(3) 利用C++代码片段
利用这些C++代码片段来解决日常编程问题。无论您是使用C++编写简单程序还是竞争编程,这些代码片段都可以派上用场。
本文链接:http://www.28at.com/showinfo-26-100336-0.html介绍 11 个常用的 C++ 代码
声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com
上一篇: Python 五分钟学会五种定时大法
下一篇: 听说异步和解耦才是消息队列最有价值的功能