赞
踩
目录
上一次给大家讲了选择语句,选择语句包括判断语句和开关语句。选择语句结构比较简单,也容易应用,重点在于多写代码,多练习,熟能生巧。
今年是2019年,请利用if语句和switch语句分别实现如下功能:
输入月份,输出该月对应的天数。
- //switch-case语句
- #include<iostream>
-
- using namespace std;
-
- void main() {
-
- int month;
- cout << "please input month which in 2019 :";
- cin >> month;
-
- switch (month)
- {
- case 1:
- case 3:
- case 5:
- case 7:
- case 8:
- case 10:
- case 12:
- cout << "本月有31天" << endl;
- break;
- case 4:
- case 6:
- case 9:
- case 11:
- cout << "本月有30天" << endl;
- break;
- default:
- cout << "本月有28天" << endl;
- break;
- }
-
- }

- //if-else语句
-
- #include<iostream>
-
- using namespace std;
-
- void main() {
- int month;
- cout << "please input month which in 2019 :";
- cin >> month;
-
- if (month<8&&(month % 2)|| month>8&& (month % 2 == 0))
- cout << "本月有31天" << endl;
- else if (month == 2)
- cout << "本月有28天" << endl;
- else
- cout << "本月有30天" << endl;
-
- }

大家在写的时候,可能比较稳重,利用switch-case语句时候,每一个都是分开写的;利用if-else语句用了很多逻辑或,甚至直接使用if-else if-else格式。上面这种方法,找到了月份与日期对应的规律。
这个是比较简单的应用数学的例子,能够使代码更加简洁,甚至简化计算过程。所以,掌握好数学,有助于我们更好地学习编程。所以希望大家能够好好学习数学,打好数学基础。
利用if语句和switch语句分别实现简单计算器:
计算两个浮点型数据的加减乘除四则运算,若除法出入的除数为0,输出:除数不能为0,其他情况输出运算及结果。
例如:输入两个数为5.2和100,输出应为:5.2 * 100 = 520 。
- //switch-case语句
- #include<iostream>
-
- using namespace std;
-
- void main() {
- float num1, num2;
- int operation;
- cout << "please input the operation of num1 and num2(1 - +,2 - -,3 - *,4 - /) :";
- cin >> operation;
- cout << "please input num1 :";
- cin >> num1;
- if (operation == 4)
- cout << "please input num2 (num2 can't be assigned to zero) :";
- else
- cout << "please input num2 :";
- cin >> num2;
-
- switch (operation)
- {
- case 1:
- cout << num1 << " + " << num2 << " = " << num1 + num2 << endl;
- break;
- case 2:
- cout << num1 << " - " << num2 << " = " << num1 - num2 << endl;
- break;
- case 3:
- cout << num1 << " - " << num2 << " = " << num1 - num2 << endl;
- break;
- default:
- cout << num1 << " / " << num2 << " = " << num1 / num2 << endl;
- break;
- }
- }

- //if-else语句
- #include<iostream>
-
- using namespace std;
-
- void main() {
- float num1, num2;
- int operation;
- cout << "please input the operation of num1 and num2(1 - +,2 - -,3 - *,4 - /) :";
- cin >> operation;
- cout << "please input num1 :";
- cin >> num1;
- if (operation == 4)
- cout << "please input num2 (num2 can't be assigned to zero) :";
- else
- cout << "please input num2 :";
- cin >> num2;
-
- if (operation == 1)
- cout << num1 << " + " << num2 << " = " << num1 + num2 << endl;
- else if (operation == 2)
- cout << num1 << " - " << num2 << " = " << num1 - num2 << endl;
- else if (operation == 3)
- cout << num1 << " * " << num2 << " = " << num1 * num2 << endl;
- else
- cout << num1 << " / " << num2 << " = " << num1 / num2 << endl;
-
- }

这次要给大家讲的是循环语句。循环语句是C++里非常重要的一部分,我们会经常在以后的代码中使用到循环语句。
本次课程有录免费视频课,讲解for循环的应用。讲解了非常经典的几个循环嵌套的例子。视频课程请点击:
大家看完这篇博客,可以点击链接,看一下相关的代码。
接下来让我们一起走进循环语句的世界吧。
在不少实际问题中有许多具有规律性的重复操作,因此在程序中就需要重复执行某些语句。一组被重复执行的语句称之为循环体,能否继续重复,决定循环的终止条件。循环结构是在一定条件下反复执行某段程序的流程结构,被反复执行的程序被称为循环体。循环语句是由循环体及循环的终止条件两部分组成的。
C++中循环语言主要有for循环和while循环。。
(1)讲解
C++中,for循环的基本格式如下:
- for (size_t i = 0; i < length; i++)
- {
-
- }
可以把上面的基本格式写成下面这种样子:
for (语句1; 条件;语句2)
{
代码块。
}
当执行到for循环时,执行过程如下:
1.先执行语句1,判断是否满足条件:满足执行代码块,不满足跳过循环。
2.若上一句满足条件,执行完代码块后,执行语句2,判断是否满足条件:满足执行代码块,不满足跳出循环。
3.若上一句满足条件不断执行上一句,直至不满足为止。
(2)例题
输出1-20,要求每行输出5个。
-
- #include<iostream>
-
- using namespace std;
-
- void main() {
- for (int i = 1; i <= 20; i++)
- {
-
- cout << i << '\t';
- if (i % 5 == 0)
- cout << endl;
- }
-
- }
执行代码结果如下:
(1)讲解
for循环最重要的应用就是循环嵌套,循环嵌套可以实现多维数组的赋值与遍历,可以输出乘法口诀与加法口诀等等。
由于这块内容很重要,我专门录制了视频课程,大家请点击下方链接观看:
(2)例题
除了这里的代码,我给大家再说一个二维数组的赋值与遍历操作。
我们还是要输出上面这一串数字,只不过我们要先给二维数组赋值,然后再遍历。代码如下:
-
- #include<iostream>
-
- using namespace std;
-
- void main() {
- int arr[4][5];
- for (int i = 0; i < 4; i++)
- {
- for (int j = 0; j < 5; j++)
- {
- arr[i][j] = 5 * i + j + 1;
- }
- }
- for (int i = 0; i < 4; i++)
- {
- for (int j = 0; j < 5; j++)
- {
- cout << arr[i][j] << '\t';
- }
- cout << endl;
- }
-
- }

更多重要的应用,大家请看视频课程里面的内容。
while循环有两种形式,一种是while语句,一种是do-while语句。
(1)讲解
C++中,while语句的基本格式如下:
- while (true)
- {
-
- }
可以把上面的基本格式写成下面这种样子:
while(条件)
{
代码块。
}
当执行到while语句时,执行过程如下:
1.先判断是否满足条件:满足执行代码块,不满足跳过循环。
2.若上一句满足条件,执行完代码块后,再判断是否满足条件:满足执行代码块,不满足跳出循环。
3.若上一句满足条件不断执行上一句,直至不满足为止。
(2)例题
输出1-20,要求每行输出5个。
-
- #include<iostream>
-
- using namespace std;
-
- void main() {
- int i = 1;
-
- while (i<=20)
- {
- cout << i << '\t';
- if (i % 5 == 0)
- cout << endl;
- i++;
- }
-
- }

执行代码结果如下:
(1)讲解
C++中,do-while语句的基本格式如下:
- do
- {
-
- } while (true);
do-while语句和while语句类似,主要有两点要注意:
1.while语句是先判断,再执行,而do-while语句是先执行,再做判断。顺序刚刚相反。
2.do-while语句最后要加分号。
(2)例题
这里我们做一个小功能,结合选择语句。
利用 switch-case语句判断小明的成绩在班里的层次(满分100):
>=90分,优秀;>=80分,良;>=60分,及格;<60,分,不及格。
如果输入0-100分外的数据,就让其一直重新输入。
注:while和do-while语句经常用于不确定循环次数,确定跳出循环条件的循环。
-
- #include<iostream>
-
- using namespace std;
-
- void main() {
- float score;
- do
- {
- cout << "please input socre :";
- cin >> score;
- } while (score < 0 || score>100);
- switch ((int)score / 10)
- {
- case 9:
- case 10:
- cout << "A" << endl;
- break;
- case 8:
- cout << "B" << endl;
- break;
- case 7:
- cout << "C" << endl;
- break;
- case 6:
- cout << "D" << endl;
- break;
- default:
- cout << "E" << endl;
- break;
- }
-
- }

执行结果如下:
分别输出如下图形:(底和高都为9的直角三角形)
思考题的答案会在下一次的【C++从入门到熟练练习题】中公布哦,希望大家能够多多练习。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。