目录

万能头文件:#include

优化c++输入输出流的速度:ios::sync_with_stdio(0);

别名:

typedef 类型 别名:

 using 别名=类型:

 强制转换

 static_cast<类型>(变量):将变量强制转换为<>中的类型

数学函数

向上取整函数:ceil(number)

向下取整函数:floor(x)

四舍五入取整函数:round(x)

圆周率近似值:acos(-1)

开三次方:cbrt()

计算整数的绝对值:int re=abs(int x)

计算平方根 :double sqrt(double x)

求浮点数的绝对值:fabs(a);

指数函数:pow(4,2);//表示4的2次方

求斜边函数:hypot(直角边长1,直角边长2);

保留小数位

保留小数位数函数:cout<<

常用

排序:

sort(begin,end,cmp)【默认升序排列】(其中begin是排序数组的起始地址,end是排序数组的结束地址(最后一位要排序元素的地址即元素的下一位)这两个参数都是地址如果a的下标从1开始,排序的起始位置就为a+1)

若要写降序排列

求两者之间的最小值:min(a,b);

求两者之间的最大值:max(a,b);

求绝对值:abs(a);

 将字符型数组转换为整型函数:atoi(s)

主要头文件

交换函数:swap(a,b);

终止程序函数:exit(0);

按任意键继续程序:getchar();

判断是否为字母:isalpha():

判断是否为小写:islower():

判断是否为大写:isupper():

转换为小写:tolower():

转换为大写:toupper():

判断是否为数字函数:isdigit():

是数字则返回1,否则返回0

判断是否为数字或者字母函数:isalnum():

找到int类型的最大值:INT_MAX

自动初始化类型函数:auto()

常见用法:

for(auto A:B)

 for(auto &a:b)

system函数:

暂停:system("pause")

颜色:system("color 5A")

attr 指定控制台输出的颜色属性

清除屏幕:system("cls")

类型判断

1.isalnum(char c):判断字符是否为字母或数字字符。c不是返回0,是则返回非0

2.isalpha(char c):判断字符是否为字母。c为字母则返回非0,否则返回0

3.isdigit(char c):判断字符是否为数字字符。c为数字字符则返回非0,否则返回0

注:c可以是单引号引起来的字符,也可以是字符对应的ASCCI码值

4.islower(char c):判断是否小写字符。c不是返回0,是则返回非0

5.isupper(char c):判断是否为大写字符。c不是返回0,是则返回非0

6.tolower(char c):将大写转小写,若为其他字符则转为ASCCI码值

7.toupper(char c):将小写转大写,若为其他字符则转为ASCCI码值

:

求最大公约数:gcd(a,b);

求最小公倍数:lcm(a,b);

字符串:

find函数字符串的查找:被查找的字符串.find(要查找的字符串,开始的位置(如果不写默认从0开始))

to_string函数:用于将整数转换为字符串

substr函数:用于截取字符串

函数说明:

1.pos是必填参数,表示从下标pos开始截取

2.n为截至参数,表示截取的字符串的个数

erase:用于删除字符串中的字符 、

to_string:将整数转换为字符串

memset 初始化函数

memset(a,1,sizeof(a))

int类型:只能赋值0和-1

char类型:可以赋值任意字符

C++标准库:

less<数据类型>()//从小到大排序

greater<数据类型>()//从大到小排序sort(a,a+10,less());

随机数生成函数:

exit函数:

获取当前时间函数:


万能头文件:#include<bits/stdc++.h>

优化c++输入输出流的速度:ios::sync_with_stdio(0);


别名:

typedef 类型 别名:

//比如我们要给long long命名为LL
typedef long long LL;

 using 别名=类型:

using LL=long long;

 强制转换

 static_cast<类型>(变量):将变量强制转换为<>中的类型

注意:转成int类型时对小数进行向下取整

【代码实现】:

#include <iostream>
using namespace std;

int main() {
    double num = 3.14;
    int convertedNum = static_cast<int>(num);
    cout << "Original number: " << num << endl;
    cout << "Converted number: " << convertedNum << endl;
    return 0;
}


数学函数<cmath>

向上取整函数:ceil(number)

向下取整函数:floor(x)

四舍五入取整函数:round(x)

圆周率近似值:acos(-1)

const double pi=acos(-1)

开三次方:cbrt()

计算整数的绝对值:int re=abs(int x)

计算平方根 :double sqrt(double x)

求浮点数的绝对值:fabs(a);

指数函数:pow(4,2);//表示4的2次方

求斜边函数:hypot(直角边长1,直角边长2);


保留小数位<iomanip>

保留小数位数函数:cout<<fixed<<setprecision(保留小数位数)<<变量


常用<algorithm>

排序:

sort(begin,end,cmp)【默认升序排列】(其中begin是排序数组的起始地址,end是排序数组的结束地址(最后一位要排序元素的地址即元素的下一位)这两个参数都是地址如果a的下标从1开始,排序的起始位置就为a+1)

#include<bits/stdc++.h>
using namespace std;
int main(){
    int a[11]={};
    for(int i=0;i<10;i++){
        cin>>a[i];
    }
    sort(a+0,a+10);//下标从0开始
    for(int i=0;i<10;i++){
        cout<<a[i]<<" ";
    }
​
    return 0;
}

若要写降序排列

bool cmp(student a,student b){
    return a.total>b.total;//直接定义需要排序的对象
}

求两者之间的最小值:min(a,b);

求两者之间的最大值:max(a,b);

求绝对值:abs(a);


<cstdlib>

 将字符型数组转换为整型函数:atoi(s)

#include <cstdlib> // 包含头文件以使用 atoi 函数

// 假设 ss 是一个字符串
const char* ss = "123";//或者char ss[10001];也可以
int x = atoi(ss); // 将字符串 "123" 转换为整数并赋值给 x

主要头文件<iostream>

交换函数:swap(a,b);

终止程序函数:exit(0);

按任意键继续程序:getchar();

判断是否为字母:isalpha():

判断是否为小写:islower():

判断是否为大写:isupper():

转换为小写:tolower():

转换为大写:toupper():

判断是否为数字函数:isdigit():

是数字则返回1,否则返回0

判断是否为数字或者字母函数:isalnum():

找到int类型的最大值:INT_MAX

自动初始化类型函数:auto()

int i = 0, &ri = i;​
auto a = i; //a为int型变量
auto a1 = ri; //a1为int型变量
auto p = &i;// &i 是一个普通int指针,p是一个整型指针int *
auto p1 = &ri; //同上

常见用法:

  • for(auto A:B)

利用 A 遍历并获取 B 容器中的每一个值,但不会影响容器 B 的内容;

  •  for(auto &a:b)

加了引用符号,可以对容器中的内容进行赋值,即可通过对a赋值来做到容器b的内容填充。

system函数:

暂停:system("pause")

颜色:system("color 5A")

attr 指定控制台输出的颜色属性

颜色属性由两个十六进制数字指定

第一个:对应于背景,

第二个:对应于前景。

例:color 5A

设置默认的控制台前景和背景颜色。

5 :紫色背景色

A :淡绿色的字体颜色

每个数字可以为以下任何值:

0 = 黑色 8 = 灰色 1 = 蓝色 9 = 淡蓝色 2 = 绿色 A = 淡绿色

3 = 浅绿色 B = 淡浅绿色 4 = 红色 C = 淡红色 5 = 紫色 D = 淡紫色

6 = 黄色 E = 淡黄色 7 = 白色 F = 亮白色

img

清除屏幕:system("cls")

用于清除屏幕的内容

img


类型判断<cctype>

1.isalnum(char c):判断字符是否为字母或数字字符。c不是返回0,是则返回非0

2.isalpha(char c):判断字符是否为字母。c为字母则返回非0,否则返回0

3.isdigit(char c):判断字符是否为数字字符。c为数字字符则返回非0,否则返回0

注:c可以是单引号引起来的字符,也可以是字符对应的ASCCI码值

4.islower(char c):判断是否小写字符。c不是返回0,是则返回非0

5.isupper(char c):判断是否为大写字符。c不是返回0,是则返回非0

6.tolower(char c):将大写转小写,若为其他字符则转为ASCCI码值

7.toupper(char c):将小写转大写,若为其他字符则转为ASCCI码值


<numeric>:(c++14才有这两个函数)

求最大公约数:gcd(a,b);

求最小公倍数:lcm(a,b);

c++11可以用:

求最大公约数:__gcd(a,b);


字符串:

<string>

str.find函数字符串的查找:被查找的字符串.find(要查找的字符串,开始的位置(如果不写默认从0开始))

用于查找字符串和指定字符,如果找不到则返回值为string::npos(18446744073709551615),若找到了则返回指定字符串在查找字符串中第一次出现的位置

string1.find(string2);

str.length()【str.size()】求字符串长度 

str.replace字符串替换函数:.replace(start,len,string)

string str = "Hello, World!";
str.replace(7, 5, "C++");  // 从第7个字符开始,替换5个字符为"C++"
cout << str << endl;  // 输出: Hello, C++!   

str.substr函数:用于截取字符串

string s.substr(int pos=0,int n);

函数说明:

1.pos是必填参数,表示从下标pos开始截取
2.n为截至参数,表示截取的字符串的个数
#include<iostream>
#include<string>
using namespace std;
int main(){
    string s="ABCD";
    cout<<s.substr(2)<<endl;//从字符串下标为2的地方开始截取
                           //截取到末尾("CD")
    cout<<s.substr(0,2)<<endl;//从字符串下标为0的地方开始截取
                             //截取后面两个字符("AB")
    cout<<s.substr(1,2)<<endl;//"BC"
    return 0;
}

str.erase:用于删除字符串中的字符 、

string a;
a.erase(删除字符下标,删除字符个数)

注:如果不填第二个删除字符的个数的话我们默认删除该下标本身的字符以及之后的所有字符 

 这里我们举个例子:

例1:

#include<bits/stdc++.h>
using namespace std;
int main(){
	string b="abcd";
	b.erase(2,1);//删除下标为2的一个字符串
	cout<<b<<endl;
	return 0;
} 

输出:

abd

 例2:

#include<bits/stdc++.h>
using namespace std;
int main(){
	string b="abcd";
	b.erase(2);
	cout<<b<<endl;

	return 0;
} 

输出:

ab

to_string:将整数转换为字符串

 示例:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n=115;
    string m=to_string(n);
    cout<<m<<endl;
    return 0;
}

输出:

115

str.back():返回字符串的最后一个字符

string a="123";
cout<<a.back()<<endl; //输出结果为3

str.pop_back():删除最后一个元素

string a="123";
a.pop_back();
cout<<a<<endl;//输出12

str.push_back(a):往字符串中添加一个字符

string a="123";
a.push_back('5');
cout<<a<<endl;//输出结果为:1235

 str.insert(size_t pos, size_t n, char c):在 pos 位置插入 n 个字符 c

或者str.insert(size_t pos, string s):在pos位置上插入字符串s

std::string str = "Hello";
str.insert(2, 3, 'X');  // 结果: HeXXXllo
std::string str = "Hello";
str.insert(3, "ABC");  // 结果: HelABClo

<cstring>

memset 初始化函数

memset(a,1,sizeof(a))
int类型:只能赋值0和-1
char类型:可以赋值任意字符
#include<iostream>
#include<cstring>
using namespace std;
int main(){
    int a[4]={};
    memset(a,-1,sizeof(a));//给a初始化为-1
    for(int i=0;i<4;i++){
        cout<<a[i]<<" ";
    }
    return 0;
}

将字符串转换成整型函数:stoi(str)


C++标准库:

less<数据类型>()//从小到大排序

greater<数据类型>()//从大到小排序sort(a,a+10,less<int>());

随机数生成函数:

#include<iostream>
#include<cstdlib>
#include<ctime>//获取当前时间戳
using namespace std;
int main(){
srand(time(0));
cout<<rand()<<endl;//rand函数随机产生0--32767之间的一个整数
return 0
}

exit函数:

exit(0):正常退出程序并清除数据


<ctime>

获取当前时间函数:

#include<iostream>
#include<ctime> 
using namespace std;
int main(){
    time_t now=time(0);
    tm *ltm=localtime(&now);
    //输出tm结构的各个组成部分
    cout<<"年:"<<1900+ltm->tm_year<<endl;
    cout<<"月:"<<ltm-> tm_mon<<endl;
    cout<<"日:"<<ltm-> tm_mday<<endl;
    cout<<"时间:"<<ltm-> tm_hour<<":";
    cout<<ltm-> tm_min<<":";
    cout<<ltm-> tm_sec<<endl; 
    return 0;
} 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐