汪义罗 • 12天前
#include<iostream>
using namespace std;
int out_put(int x){
int n=1;
for(int i=1;i<=x;i++){
n*=i;
}
return n;
}
int main(){
int n,sum = 0;
cin>>n;
for(int i=1;i<=n;i++){
sum+= out_put(i);
}
cout<<sum;
}
评论:
#include<bits/stdc++.h> using namespace std; int main() { int i,j,k=0,min,m,n,a[101][101]; cin>>n; for(i=0; i<n;i++) for(j=0;j<n;j++) cin>>a[i][j]; for(k=n;k>0;k--){ cout<<a[1][1]<<endl; for(i=0;i<k;i++){ min=a[i][0]; for(j=1;j<k;j++) if(a[i][j]<min) min=a[i][j]; if(min==0) continue; for(j=0;j<k;j++) a[i][j]-=min; } for(j=0;j<k;j++){ min=a[0][j]; for(i=1;i<k;i++) if (a[i][j]<min) min=a[i][j]; if(min==0) continue; for (i=0;i<k;i++) a[i][j]-=min; } for(i=0;i<k;i++){//列数消减 if(i==1) continue; for(j=1;j<k-1;j++) a[i][j]=a[i][j+1]; } for(i=1;i<k-1;i++)//行数消减 for(j=0;j<k-1;j++) a[i][j]=a[i+1][j]; } return 0; }
#include<cmath>:
abs(-5)//整数求绝对值
fabs(-1.5)//小数求绝对值
min(2,5) min('a','b')//最小值
max(2.5,0.5) max('a','c')//最大值
max(max(1,2),2)//比较3个元素
max/min:**不同类型不能比较**
round(4.586)//四舍五入取整,不能用来四舍五入保留n位小数
round(4.586*100)/100.0//变通实现,四舍五入保留2位小数
ceil(4.3)//向上取整
floor(4.2)//向下取整
pow(2,3)//2的3次方,2的3次幂
sqrt(9)=3,sqrt(9.0)=3//开平方根 **不支持负数!**
<iomanip> 是 C++ 的输入输出流控制头文件,专门用来格式化输出。你可以把它理解为一种更现代、类型安全的“printf格式控制”方式。
常用控制符和效果如下:
· setw(n):设置字段宽度为 n,默认为右对齐。通常与setfill配合使用。
· setfill(c):宽度不足时,用字符 c 填充空白。
· setprecision(n):设置精度。与fixed连用时表示小数位数;单独使用表示有效数字位数。
· fixed / scientific:强制使用小数或科学计数法显示。
· setbase(n) / dec/hex/oct:设置整数进制为 n (8,10,16) 或直接指定十进制/十六进制/八进制。
· left / right:设置左对齐或右对齐。
· setiosflags(flag):手动设置格式标志,如上文中的ios::fixed等。
· quoted() (C++14):处理含空格的字符串,自动添加或去除引号。
组合使用示例
通过<<拼接控制符,你可以像拼乐高一样组合出复杂的格式。看看下面的例子和对应的输出:
```cpp
#include <iostream>
#include <iomanip> // 必须包含此头文件
using namespace std;
int main() {
double pi = 3.1415926535;
int num = 255;
// 1. 控制宽度和填充
cout << "--- 宽度与填充 ---" << endl;
cout << setfill('*') << setw(10) << num << endl;
// 输出:*******255
// 2. 控制浮点数精度 (固定小数位)
cout << "--- 固定小数位 ---" << endl;
cout << fixed << setprecision(2) << pi << endl;
// 输出:3.14
// 3. 控制进制 (搭配大写)
cout << "--- 十六进制 ---" << endl;
cout << uppercase << hex << num << endl;
// 输出:FF
// 4. 对齐
cout << "--- 对齐方式 ---" << endl;
cout << left << setw(10) << "C++" << "Rocks" << endl;
// 输出:C++ Rocks
// 5. 处理带空格的字符串 (C++14)
cout << "--- 引用处理 ---" << endl;
cout << quoted("Hello World") << endl;
// 输出:"Hello World"
return 0;
}