卡码网C++基础课 | 2. A+B问题 II

今天的A+B问题,主体还是计算输入的两个数:a和b的和。但是相比于上一题,多了一个循环部分,题目提示信息:“注意,测试数据不仅仅一组。也就是说,会持续输入N以及后面的a和b”。所以说我们在这一题中便引入了循环的概念。

这道题中,我们可以使用while实现循环输入。while在使用时,一旦条件为真,便会一直执行花括号里的内容:

while(条件){
    //当条件为真时,就会一直执行
}

所以,我们将cin>>n作为条件便可以实现多组输入。在输入n值后,同样我们使用链式输入cin >> a >> b完成a和b值的输入(谈及输入输出,还是需要内置库的声明也就是#include<iostream>)。但是,如何根据我们上一个输入的n值来保证程序循环的次数是n呢?这就需要另一个循环了。这时候我们可以使用两种常见的方法:

        1.while循环。我们此时已经知道后面会有n行a和b的输入,所以我们每一次执行a和b的输入后,就将n的值减一,我们使用自减操作--来完成。而对于自减操作,就要考虑--符号是在变量前还是后的问题了。如果你写的是--i,比如你想要每次输入1行a和b,此时n为1,在接下来的程序执行中while(--n),while中会先执行n的自减操作,n会变为0,while则会认为此时条件不为真,不执行输入;相反,while(n--)则会先条件判断再将n值减一。所以,自减符号要考虑好放在变量前还是后。--n也被称为前缀递减操作符,同理n--为后缀递减。

        2.for循环。我们引入一个新的变量i,利用c++中的for语法

for (初始化语句;条件判断;操作){
    //代码块
}

假如后续会有10行输入,则n设置为10.我们初始化i为1,只要i≤10,我们便一直执行代码块中的操作,也就是输入a,b,同时i加一,这对应着初始化语句int i = 1, 条件判断 i ≤10以及操作 i++。一般来说,在编程中,变量的初始值都被设置为0,所以有:

for (int i < 0; i < n; i++){
    //代码块
}

除此之外,我们注意到while在进行条件判断时,输入应该是一个布尔类型的值才对,比如true或者false,但是我们使用的确实n--,这是因为在进行条件判断时,我们如果给定一个整数类型的值,编译器会自动转换数据类型,将非0的数值转换为布尔类型的true,而0则被转换为false 。

  • 15
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值