- 文件操作
#include <iostream>
#include <cstdio> // 头文件
using namespace std;
int main() {
freopen("输入文件", "r", stdin); // 从文件里读取输入
freopen("输出文件", "w", stdout); // 向文件里写入输出
fclose(stdin); // 停止读取输入
fclose(stdout); // 停止写入输出
return 0;
}
- 格式化输入输出(可提升输入速度)
#include <iostream>
#include <cstdio> // 头文件
using namespace std;
int main() {
int n;
scanf("%d", &n); // 输入
printf("%d", n); // 输出
return 0;
}
| 数据类型 | scanf | printf |
|---|
| int | %d | %d |
| char | %c | %c |
| float / double | %f | %f |
| long | %ld | %ld |
| long long | %lld | %lld |
| char[] | %s | %s |
- 保留小数(不四舍五入)
#include <iostream>
#include <iomanip> // 头文件
using namespace std;
int main() {
double pi = 3.141592653589793;
cout << fixed << setprecision(2) << pi; // 输出pi到小数点后第2位
return 0;
}
- 保留小数(四舍五入)
#include <iostream>
#include <cstdio> // 头文件
using namespace std;
int main() {
double pi = 3.141592653589793;
printf("%.2f", pi); // 输出pi到小数点后第2位
return 0;
}
- 随机数
#include <iostream>
#include <cstdlib> // 头文件
#include <ctime> // 头文件
using namespace std;
int main() {
srand(time(0)); // 更新随机数(在程序开头)
cout << rand() % (100 + 1) + 50; // 输出一个50~100的随机数(运算顺序不能改变)
return 0;
}
- 数学函数
#include <iostream>
#include <cmath> // 头文件
using namespace std;
int main() {
cout << abs(-5); //求-5的绝对值
return 0;
}
| 函数 | 函数用法 |
|---|
| 取n绝对值(整数) | abs(n) |
| 取n的绝对值(小数) | fabs(n) |
| n的m次方 | pow(n, m) |
| 开n的平方根 | sqrt(n) |
| 以2为底n的对数 | log2(n) |
| 以10为底n的对数 | log10(n) |
| 勾股定理 | hypot(x, y) |
| 三角函数sin | sin(n) |
| 四舍五入(保留整数) | round(n) |
| 向上取整 | ceil(n) |
| 向下取整 | floor(n) |
- 反转字符串
#include <iostream>
#include <algorithm> // 头文件
using namespace std;
int main() {
string str = "abcdefg";
reverse(str.begin(), str.end()); // 反转字符串
cout << str;
return 0;
}
- 排序
#include <iostream>
#include <algorithm> // 头文件
using namespace std;
bool cmp(int x, int y) {
return x < y; // 从小到大排序
}
int main() {
int a[10] = {0, 10, 6, 9, 7, 3, 2, 1, 5, 4};
sort(a, a + 9, cmp); // 排序
return 0;
}
- 返回x的二进制的个数
#include <iostream>
using namespace std;
int f(int x) {
int ret = 0;
for (; x; x &= x - 1) ret++;
return ret;
}
int main() {
int x = 2;
cout << f(x);
return 0;
}