丰富的函数库

iomanip

  • cout<<setprecision(n)<<a: 控制a显示n个有效数字位数(不显示末尾的零)
  • cout<<showpoint<<setprecision(n)<<a: 控制a显示n个有效数字位数(强制显示末尾的0)
  • cout<<fixed<<setprecision(n)<<a: 控制a小数点后保留n位小数(强制显示末尾的0)
  • cout<<scientific<<setprecision(n)<<a: 将a转化为保留n位小数(精度为n)的科学计数法
  • cout<<oct<<a: 将a转化为八进制形式
  • cout<<hex<<a: 将a转化为十六进制形式
  • cout<<left<<a: 控制a为左对齐输出
  • cout<<setw(n)<<a: 设定a占n个数字的宽度

vector

  • arr.push_back(i): 将整数i加入到数组末尾

string

  • s.length(): 计算s字符串的长度(含空格)
  • s.substr(index,num): 从s下标为index处开始,提取含num个字符的子串,若无第二个参数,则一直提取到结尾
  • s.find(str): 在s中寻找str字符串
  • s.find(str,index): 在s中从index处开始查找子串str
  • s.find(c): 在s中找c字符
  • s.rfind(str): 倒着找str
  • s.append(str): 在s末尾添加str字符串
  • s.append(num,c): 在s末尾添加num个c字符
  • s.insert(index,str): 在s的index处插入str字符串
  • s.insert(index,num,c): 在s的index处插入num个c字符
  • s.erase(index,num): 从s的index开始,删除num个字符
  • s.clear: 清空s
  • s.copy(&str[i],num,index): 从s的index处开始,复制num个字符替换从str[i]开始的字符串,不会完全替换掉str串,只会替换指定位置的指定字符个数
  • s.compare(str): 将s与str按照ascll码表进行对比,返回负数,0,正数
  • s.compare(index,num,str): 从s的index处开始选取长度为num的子串与str进行对比,返回负数,0,正数
  • s.swap(str): 交换s与str内容
  • s.pop_back(): 删除s的最后一个字符

algorithm

  • sort(s.begin(),s.end(),less<int>()): 升序排列数组
  • sort(s.begin(),s.end(),greater<int>()): 降序排列数组

cctype

  • islower(c): 判断字符是否为小写
  • toupper(c): 将小写字符变为大写

cstdlib

  • atoi(str): 将字符串str转化为整数
  • stof(str): 将字符串str转化为小数

math.h

  • hypot(a,b): 计算 a2+b2\sqrt{a^2+b^2}