我们首先要知道,填充符是默认为空格的,如果你只是单纯需要队列整齐,那么setfill是用不着,不过一旦要加入其他符号,那么就要设置填充符了。

setw跟setfill都是要用到头文件<iomanip>,那么接下来先介绍简单的setw用法。

一、setw函数

一般的使用格式是:cout<<setw(n)<<i<<endl;

先举个简单的例子:我们分别要输出1~10的本身及其平方

#include<iostream>
#include<iomanip>
using namespace std;
int main() {for(int i=1;i<=10;i++)cout<<setw(4)<<i<<setw(4)<<i*i<<endl;return 0;
}

二、setfill函数

开头说过,setfill是在想要填充的不是空格时,才要用的,这个也很简单

比如说我们想要填充‘*’,那么就这么写:cout<<setfill('*')<<setw(4)<<输出的数<<endl

值得一提的是,如果你接下来又要需要空格填充时,还得再重置:cout<<setfill(' ')<<endl

那么检验一下学习成果吧

题目要求:格式化输出乘法口诀表(如下图)

#include<iostream>
#include<iomanip>
using namespace std;
int main() {int colwidth(4);int max(10);cout << setw(colwidth) << '*' << '|';for (int i = 1; i <= max; i++)cout << setw(colwidth) << i;cout << endl;//打印表头cout << setfill('-') << setw(colwidth) << "" << '+'<< setw(max * colwidth) << "" << endl;//设置填充符cout << setfill(' ');//重置填充符for (int i = 1; i <= 10; i++) {cout << setw(colwidth) << i << '|';for (int j = 1; j <= i; j++)cout << setw(colwidth) << j*i;cout << endl;}//打印每一行 system("pause");return 0;
}

那么有的好兄弟又会挑茬了,要是我想填充在右边呢?

那么好,只需要加入一个left,系统输出结果就会自动左对齐,填充在右边

cout<<left<<setw( )<<输出数字<<endl;

如下图

格式化输出函数setw与setfill的使用相关推荐

  1. sprintf() 格式化输出函数

    sprintf() 格式化输出函数 功能: 函数sprintf()用来作格式化的输出. 用法: 此函数调用方式为int sprintf(char *string,char *format,arg_li ...

  2. c语言输出不足10补0,c++ cout输出不足位补0 setw、setfill

    头文件: 函数:setw(int n) 函数:setfill(char c) cout< 输出:00000123 C语言 printf("%08d \n",123); 输出: ...

  3. c++中setw()与setfill()的用法详情

    在C++中,setw(int n)用来控制输出间隔. 例如: cout<<'s'<<setw(8)<<'a'<<endl; 则在屏幕显示 s       ...

  4. setw()和setfill()的用法

    setw(int n)函数 ***(仅对其<<后的输出数据有效) (不写n时默认是空格,可以和setfill()配合使用,设置其他字符填充) setfill('char c')函数 *** ...

  5. setw()和setfill()

    setw()和setfill() 在C++中,setw(int n)用来控制输出间隔. 例如: cout<<'s'<<setw(8)<<'a'<<end ...

  6. setw() 与setfill()

    头文件:#include<iomanip> cout<<setw(5)<<setfill('0')<<a<<b;  ##输出5位,右对齐,不 ...

  7. C++ setw和setfill

    在C++中,setw(int n)用来控制输出间隔. 例如: cout<<'s'<<setw(8)<<'a'<<endl; 则在屏幕显示 s       ...

  8. C 语言格式化输出函数中常用的格式符号

    在之前介绍输入输出函数的文章中,有提到格式化输入输出函数都有包含一种特殊的符号--格式符号. 那篇文章中关于格式符号也只是一笔带过,没有进行深入挖掘.本篇文章主要对输出函数(printf)中的一些常用 ...

  9. C/C++中部分我不太了解的函数和头文件——iomanip和setw和setfill() 函数

    1.头文件 <iomanip> 中提供了许多用于控制输出流的函数,setw() 函数可以控制输出流的下一个输出内容的场宽. int a=114514; cout<<a; 输出为 ...

  10. C++ setw() 与 setfill()

    在C++中,setw(int n)用来控制输出间隔,(n-1个空格). setw()默认填充的内容为空格,可以setfill()配合使用设置其他字符填充. cout<<setfill('* ...

最新文章

  1. 敏捷开发_全面解析瀑布式开发和敏捷式开发
  2. Flex开源开发框架
  3. caffe在线可视化(转)
  4. JS中获取元素的第二种方法
  5. linux PROC文件系统详解
  6. 静态链表(代码、分析、汇编)
  7. C++学习——static
  8. php实现把es6转为es5,使用webpack将ES6转化ES5的实现方法
  9. 调试跟踪利器---strace
  10. 计算数字的位数并逆序输出
  11. python常用包有哪些品牌_python 常用包总结
  12. linux 进程崩溃log,Linux系统日志及日志分析
  13. ZBrush中Tool工具的保存
  14. SQL Server中SMO备份数据库进度条不显示?
  15. 深度剖析E680G应用二.MPKG
  16. ALSA音频架构 -- aplay播放流程分析
  17. 【转载】气象数据相关资源
  18. 产品经理为什么比程序员工资要高?百度员工:因为他是产品灵魂
  19. 【Math for ML】线性代数-单射,满射,双射,同构,同态,仿射
  20. Revit二次开发小技巧(十二)创建带洞口的墙

热门文章

  1. 人工智能认知技术,在各行业的应用介绍
  2. pandas读取excel遇见空值的处理
  3. ResNet再进化!重新思考ResNet:采用高阶方案的改进堆叠策略
  4. 〖教程〗Winrm远程命令/WinrmCmd/端口复用后门/Windows密码爆破
  5. 大数据杀熟行为10月1日起明令禁止!
  6. 【云计算学习教程】云计算的优势和劣势(优点和缺点)分析
  7. 在C/C++中的struct使用函数指针,而且在C++中的struct还能使用成员函数
  8. Laravel文档整理
  9. 继CryptoPunks、LOOT之后,GameFi+社交将是NFT的下一个爆发点
  10. 阿里云SSL证书免费申请和部署方法((DigiCert 免费版 SSL-图文教程)