购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

第14课
列竖式做计算
(setw()函数)

输出金字塔实现 * 左对齐、右对齐、居中对齐。你有什么办法吗,尝试着编写程序试一试吧。

温故知新

左对齐输出只需要按照图案正常输出就可以达到效果。

右对齐

右对齐用空格补位的方式输出,但这里我们使用一个新的函数 setw() ,它可以快速地设定输出的宽度。

* 齐刷刷地靠着最右边了,对得整整齐齐,有种向右看齐的架势。

划重点

在使用 setw() 函数之前,需要添加头文件 #include <iomanip>

setw(int n) :整数n表示字段宽度,它只对紧跟其后的输出内容有效。

当后面紧跟着的输出内容长度 小于n 的时候,在该内容前面会用空格补齐;当输出内容长度 大于n 的时候,内容会全部整体输出,并不会被截取。

居中对齐

升级挑战,如何确定 setw() 函数中的参数值。当我们希望 * 能够居中显示时,就需要排兵布阵了。

在这个输出中,我们不仅需要考虑 * ,还需要考虑 |

跟着我一起来排兵布阵。 setw() 函数中括号里的数字代表的不是空格的数量,而是整体长度,不够时使用空格补充。

对照阵列图,编写代码就轻松了。

挑战再度升级,运用 setw() 函数列竖式做计算吧!

列竖式做计算

遇到格式,我们都可以先排兵布阵,一个简单的草图会帮助我们更快速地确定具体数值。

● 第一排设置12的宽度。

● 第二排设置一个4的宽度和一个8的宽度。

● 第三排全是 - ,不需要设置,输入16个 -

● 第四排设置12的宽度。

运行程序,输出结果为:

     输入第一个加数:2023
     输入第二个加数:2022

巩固练习

(1)阅读以下代码,程序运行后的正确输出是( )。

A.

B.

C.

D.

(2)下面代码输出中会有几个空格?( )

     int number = 2023;
     cout << setw(3) << number << endl;

A.4

B.3

C.2

D.0

(3)编写程序将案例 列竖式做计算 中的加法运算程序改成减法运算,并输出4321-1234的竖式。 tO3kKqq3Qmcp2YZsf8jAp/QLAaRXl29utY6tv83VDPMZDO2MybczUYoWXE0yXUSx

点击中间区域
呼出菜单
上一章
目录
下一章
×