一般像这类连加、连减问题一定会用到循环语句,可以用for或while,下面用while循环为例来进行讨论。
while循环,首先确定循环条件, 可以写小于等于102(Num<=102); 其次就是Num循环一次变成多少,从题上面分析可以看出后一个比前一个多2,这样Num循环一次加2(Num+=2)
接下来确定Num变量要什么类型,从题上分析都是整数,这样就可以用整型(int Num),
int Num = 2; //这里记住要赋值2,因为题上是从2开始
while(Num<=102)
Num+=2;
循环的部份已经确定好,现在要解决的 就是怎样去加的问题,分析题目可以得出,第1次减第2次加第3次减第4次加。。。。,这样可以用求余数来处理,偶数除2求余都是0,跟据余数值可以做一个判断(if(){} else{}),是用加法还是减法。
跟据上面分析还要定义一个循环次数的变量,记录第几次,int cycle = 1; ( //次数都是整数所以用整型)每次循环后次数加1 ( cycle++;)。
这里判断用加还是减选用双目运算符,主要有2个原因,1.判断后要执行的代码只有一句 2.双目运算符可以让代码更简洁
(cycle%2) ? (Total += Num):(Total -= Num);
还要再定义一个变量,加总后的数 int Total=0; 这里还是用int类型,应该都明白为什么了。
以下是具体代码:
具体代码未转载,请到原处查看。
原文链接:https://zouzhongliang.com/index.php/2019/03/24/%E6%B1%822-46-8-100102%E7%9A%84%E5%80%BC/