竞争性编程中最常用的 10 个内置 C++ 函数
在本文中,我们将讨论 10 个最常用的 C++ 内置函数,它们将帮助您在竞争性编程中节省时间并使代码简洁。
List of top 10 inbuilt functions in C++
- pow()
- sqrt()
- min()
- max()
- swap()
- gcd()
- toupper()
- tolower()
- floor()
- ceil()
1. pow( )
这个函数有助于找到一个数字的值,它提升到另一个数字。它总是将 double 数据类型的值作为参数(也接受 int 数据类型),结果是 double 数据类型。
头文件:
pow() function is defined inside the cmath header file.
#include
句法:
pow(base, exponent)
The result of this function will be baseexponent
时间复杂度: O(指数)。
下面是一些示例来说明 C++ 中 pow() 方法的工作原理:
C++
// CPP program to illustrate
// power function
#include
using namespace std;
int main()
{
double x = 6.1, y = 4.8;
// Storing the answer in result.
double result = pow(x, y);
// Printing the result upto 2
// decimal place
cout << fixed << setprecision(2) << result << endl;
return 0;
}
C++
// CPP Program to demonstrate errors in double sqrt()
#include
#include
using namespace std;
// Driver Code
int main()
{
int x = 24;
double answer;
answer = sqrt(x);
// Printing square root of 24.
cout << answer << endl;
return 0;
}
C++
// C++ program to demonstrate the use of std::min
#include
#include
using namespace std;
int main()
{
int a = 5;
int b = 7;
cout << std::min(a, b) << "\n";
return 0;
}
C++
// C++ program to demonstrate use of max()
#include
#include
using namespace std;
int main()
{
int a = 112, b = 123;
// Comparing a and b
cout << std::max(a, b) << "\n";
// Returns the first one if both the numbers
// are same
cout << std::max(7, 7);
return 0;
}
C++14
// C++ program for illustration
// of swap() function
#include
#include
using namespace std;
int main()
{
int a = 10;
int b = 20;
cout << "Value of a before: " << a << endl;
cout << "Value of b before: " << b << endl;
// swap values of the variables
swap(a, b);
cout << "Value of a now: " << a << endl;
cout << "Value of b now: " << b << endl;
return 0;
}
C++
// CPP program to illustrate
// gcd function of C++ STL
#include
#include
// #include for C++17
using namespace std;
int main()
{
int a = 6, b = 20;
int ans = __gcd(a, b);
// int ans = gcd(a, b) for C++17
cout << "gcd(6, 20) = " << ans << endl;
return 0;
}
C++
// C++ program to illustrate toupper() method
#include
#include
using namespace std;
int main()
{
int j = 0;
char str[] = "geekforgeeks";
char ch;
while (str[j]) {
ch = str[j];
putchar(toupper(ch));
j++;
}
return 0;
}
C++
// C++ program to illustrate tolower() method
#include
#include
using namespace std;
int main()
{
int j = 0;
char str[] = "GEEKSFORGEEKS";
char ch;
while (str[j]) {
ch = str[j];
putchar(tolower(ch));
j++;
}
return 0;
}
C++
// C++ program to demonstrate floor function
#include
#include
using namespace std;
// Driver function
int main()
{
// Using floor function which returns
// floor of input value
cout << "Floor is: " << floor(2.3) << "\n";
cout << "Floor is: " << floor(-2.3) << "\n";
return 0;
}
C++
// C++ program to demonstrate ceil function
#include
#include
using namespace std;
// Driver function
int main()
{
// Using ceil function which return
// floor of input value
cout << " Ceil is: " << ceil(2.3) << "\n";
cout << " Ceil is: " << ceil(-2.3) << "\n";
return 0;
}
5882.79
2. sqrt()
此函数有助于找到任何数字的平方根。它采用浮点指针或整数数据类型作为参数。结果根据需要的数据类型四舍五入后返回。
头文件:
sqrt function is defined inside cmath header file.
#include
句法:
sqrt(N);
时间复杂度: θ(log(N))
下面是一些示例来说明 C++ 中 sqrt() 方法的工作原理:
C++
// CPP Program to demonstrate errors in double sqrt()
#include
#include
using namespace std;
// Driver Code
int main()
{
int x = 24;
double answer;
answer = sqrt(x);
// Printing square root of 24.
cout << answer << endl;
return 0;
}
4.89898
3. 分钟() :
此函数有助于找到两个数字之间的最小值。它接受两个相同数据类型的数字作为参数,并返回最小值。
头文件:
This function is defined in algorithm header file.
#include
句法:
min(value1, value2);
时间复杂度: O(1)
下面是一些示例来说明 C++ 中 min() 方法的工作原理:
C++
// C++ program to demonstrate the use of std::min
#include
#include
using namespace std;
int main()
{
int a = 5;
int b = 7;
cout << std::min(a, b) << "\n";
return 0;
}
5
4 .最大限度()
它有助于找到两个值之间的最大值。此函数将两个相同数据类型的值作为参数,并返回最大元素的值。
头文件:
This function is defined in algorithm header file.
#include
句法:
max(value1, value2);
时间复杂度: O(1)。
下面是一些示例来说明 C++ 中 max() 方法的工作原理:
C++
// C++ program to demonstrate use of max()
#include
#include
using namespace std;
int main()
{
int a = 112, b = 123;
// Comparing a and b
cout << std::max(a, b) << "\n";
// Returns the first one if both the numbers
// are same
cout << std::max(7, 7);
return 0;
}
123
7
5. 交换()
此函数用于交换两个数字。它将两个相同数据类型的值作为参数并交换它们的值。
头文件:
#include
#include
#include
句法:
swap(value1, value2);
时间复杂度: O(1)
下面是一些示例来说明 C++ 中 swap() 方法的工作原理:
C++14
// C++ program for illustration
// of swap() function
#include
#include
using namespace std;
int main()
{
int a = 10;
int b = 20;
cout << "Value of a before: " << a << endl;
cout << "Value of b before: " << b << endl;
// swap values of the variables
swap(a, b);
cout << "Value of a now: " << a << endl;
cout << "Value of b now: " << b << endl;
return 0;
}
Value of a before: 10
Value of b before: 20
Value of a now: 20
Value of b now: 10
6.gcd()
该函数用于求两个数的 GCD。它接受两个相同数据类型的值作为参数,并返回它们的 GCD。
头文件:
This function is defined in algorithm header file for C++14
#include
#include
句法:
__gcd(value1, value2); [for C++14]
gcd(value1. value2); [for C++17]
时间复杂度: O(log(max(value1, value2))))。
下面是一些示例来说明 C++ 中 gcd() 方法的工作原理:
C++
// CPP program to illustrate
// gcd function of C++ STL
#include
#include
// #include for C++17
using namespace std;
int main()
{
int a = 6, b = 20;
int ans = __gcd(a, b);
// int ans = gcd(a, b) for C++17
cout << "gcd(6, 20) = " << ans << endl;
return 0;
}
gcd(6, 20) = 2
7. toupper()
该函数用于将小写字符转换为大写。
头文件:
This function is defined in cctype header file
#include
句法:
toupper(‘ch’); where ch is lower case character.
时间复杂度:O(1)。
下面是一些示例来说明 C++ 中 toupper() 方法的工作原理:
C++
// C++ program to illustrate toupper() method
#include
#include
using namespace std;
int main()
{
int j = 0;
char str[] = "geekforgeeks";
char ch;
while (str[j]) {
ch = str[j];
putchar(toupper(ch));
j++;
}
return 0;
}
GEEKFORGEEKS
8. 低() :
该函数用于将大写字符转换为小写。
头文件:
This function is defined in cctype header file.
#include
句法:
tolower(ch); where ch is an uppercase character.
时间复杂度: O(1)。
下面是一些示例来说明 C++ 中 tolower() 方法的工作原理:
C++
// C++ program to illustrate tolower() method
#include
#include
using namespace std;
int main()
{
int j = 0;
char str[] = "GEEKSFORGEEKS";
char ch;
while (str[j]) {
ch = str[j];
putchar(tolower(ch));
j++;
}
return 0;
}
geeksforgeeks
9. 地板() :
此函数返回小于或等于给定参数的最大可能整数值。它接受一个浮点数作为参数并返回一个整数值。
头文件:
floor function is defined in cmath header file
#include
句法:
floor(value);
时间复杂度:O(1)
下面是一些示例来说明 C++ 中 floor() 方法的工作原理:
C++
// C++ program to demonstrate floor function
#include
#include
using namespace std;
// Driver function
int main()
{
// Using floor function which returns
// floor of input value
cout << "Floor is: " << floor(2.3) << "\n";
cout << "Floor is: " << floor(-2.3) << "\n";
return 0;
}
Floor is: 2
Floor is: -3
10. Ceil() :
此函数与 floor() 正好相反,它返回大于或等于给定参数的最小可能整数值。它接受一个浮点值作为参数并返回一个整数值。
头文件:
ceil function is defined in cmath header file
#include
句法:
ceil(value);
时间复杂度: O(1)
下面是一些示例来说明 C++ 中 ceil() 方法的工作原理:
C++
// C++ program to demonstrate ceil function
#include
#include
using namespace std;
// Driver function
int main()
{
// Using ceil function which return
// floor of input value
cout << " Ceil is: " << ceil(2.3) << "\n";
cout << " Ceil is: " << ceil(-2.3) << "\n";
return 0;
}
Ceil is: 3
Ceil is: -2