课程首页 › 第1部分 › 第14课

第14课 列竖式做计算

第1部分 初识 C++ · 顺序结构· 知识点:setw()函数

列竖式做计算(setw()函数)

插图

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

插图

温故知新

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

插图

右对齐

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

插图

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

划重点

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

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的竖式。

第2部分 智能的开始 —— 选择结构

第二部分

智能的开始

——选择结构