C++菜鸟学习笔记系列(2)——while、for 控制流语句的使用

C++菜鸟学习笔记系列(2)

(大家若是对博客内容有什么问题,或者建议都可以写在评论中。)
本期主题:C++入门,while,for 两个控制流命令语句的使用。

注意:如果你曾经学习过C、C#或者其他类似的编程语言,那么这篇博客对你学习的意义并不大,你可以选择快速浏览就可以了。

1. while 语句
while 语句可以实现反复执行一段代码,这是其和 for 语句相同的地方。
while语句的一般格式为:

while( 条件满足 )
	{
	执行代码;
	}

在上述的伪代码中我们可以看到 while 语句后括号中为一个条件判断,每一次进行循环前都会先进行判断,当判断结果为真的时候则执行花括号中的代码,相反的,当判断结果为假的时候,则跳出循环。
我们一般认为判断条件为一个布尔类型的变量,或者说判断结果为 true 和 false 两种,但是我们也可以把一个逻辑表达式作为条件,如 i <= 10 、 i == 10之类的。特殊的,我们也可以把一个算术运算作为判断条件,当运算结果为 0 时代表 false ,当运算结果为非0值时代表为true。
下面我们看一个简单的 while 语句使用案例:

#include <iostream>
using namespace std;

int main()
{
	int sum = 0,val = 1, k;
	cout << "input a int:" << endl;
	cin >> k ;
	while(val <= k)
	{
		sum = sum +val;
		val++;
	}
	cout << "sum of 1 to " << k << " inclusive is: "<< sum << endl;
	/*--------------------------------暂停-----------------------------------*/
    cout<<"press any key to continue!……";
	cin.clear();
	cin.sync();
	cin.get();
	/*--------------------------------暂停-----------------------------------*/
}

程序的主要功能为实现输入任意一个大于 0 的整数 K ,计算 1 到 K 的和并输出。
大家可以看到作者的输出格式有一个小的调整,这个主要是自己去设计,并没有太多的作用,只是输出更加规整,比较适合强迫症患者去调试。
程序中的最后四行代码是为了使得程序有一个暂停,大家若有不理解可以先不用管,只需知道它的作用就可以了。
2. for 语句for 语句
for 语句和 while 语句之间的最大不同是 for 语句把变量递增或递减这一过程放在了循环条件中。
它们之间的共同点是两者都是当条件满足的时候才执行循环体中的代码。
下面我们看一下 for 语句中最经典的格式。

for (int i=0 ;i <= 10; i++)

int i=0(定义初值,可以定义在for之外)
i <= val(判断条件,条件满足执行)
i++(变量递增或递减,递减为 i–)
上述三者之间要用 ; 号分开。
对于一些变量改变非常简单,如递增、递减这样的循环,for 和 while语句是非常好用的。
下面我们再看一个简单的 for 语句实例:

#include <iostream>
using namespace std;

int main()
{
	int sum = 0,val = 0;
	cout << "please input an integer:"<< endl;
	cin >> val;
	for (int i=0 ;i <= val; i++)
	{
		sum += i;
	}
	cout << "sum of 1 to "<< val << " is " << sum << endl;

	cout << "press any key to continue!" << endl;
	cin.clear();
	cin.sync();
	cin.get();
}

上述代码和 while 语句中的例子实现功能相同,但是我们可以看到,我们在 for 语句中把变量递增这一部分从循环体中拿出放在了 for 语句后的条件判断之后,使得程序更加简洁。
同时注意:sum += i; 等价于 sum = sum +i; 我们可以类比: sum -= i; 等价于 sum = sum -i; 或 sum *= i; 等价于 sum = sum *i;之类的运算。
好了,这次就写到这里了!

注:虽然这篇博客的内容十分简单,但是大家若有转载还请标明出处!

还有大家若对博客中的内容有任何问题可以随时联系我提问。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓晨的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值