C++输出格式控制
1.保留两位小数
setiosflags(ios::fixed)<<setprecision(2)<<a<<std::endl;
1 #include<iostream> 2 #include<iomanip> 3 using namespace std; 4 int main() 5 { 6 float a[5],sum=0; 7 for(int i=0;i<5;i++) 8 { 9 std::cin>>a[i]; 10 sum=sum+a[i]; 11 } 12 std::cout<<setiosflags(ios::fixed)<<setprecision(2)<<sum/5<<std::endl; 13 }
2.左对齐,右对齐
setiosflag(ios:: left),setiosflag(ios:: right);//默认右对齐,全局设置
1 #include <iostream> 2 #include <iomanip> 3 using namespace std; 4 int main() 5 { 6 int a; 7 cin>>a; 8 cout<<setw(10)<<setiosflags(ios::right)<<a<<endl; 9 return 0; 10 }
3.输入输出 iostream 库,程序中使用std::cout 和 std::endl,而不是cout和cin是因为前缀std::表明cout和endl时定义在命名空间(namespace)std中的。使用命名空间程序员可以避免由于无意中使用与库中所定义的名字相同的名字而起了冲突。
整形输出
十进制,八进制,十六进制
1 #include <iostream> 2 //#include <cstdio> 3 using namespace std; 4 int main() 5 { 6 int a; 7 cin>>oct>>a ;//octonary八进制; 8 cout<<oct<<a; 9 //equal; 10 printf(" %o",a); 11 cin>>hex>>a;//hexadecimal十六进制; 12 cout<<hex<<a; 13 scanf("%x",&a); 14 printf("%x",a); 15 cout<<dec;//默认输出 16 return 0;