一、流程控制

1.选择结构语句

      1.1单条件语句

            格式:  if(表达式) 语句

             if条件后不要加“;”

             列子:

#include<iostream>
using namespace std;
int main()
{
	//选择结构  单行if语句
	//用户输入分数,如果分数大于600,视为考上一本大学,在屏幕上输出

	//1.用户输入分数   2.打印用户输入的分数   3.判断用户是否大于600,如果大于,那么输出

	int score = 0;
	cout << "请输入一个分数: " << endl;
	cin >> score;
	cout << "你输入的分数为: " << endl;

	if (score > 600)//if语句后面不要加;
	{
		cout << "恭喜你考上一本大学" << endl;
	}

	return 0;

           1.2 双分支if...else语句

                 格式:if(<表达式>)   <语句1>

                            else    <语句2>

                 执行该语句时,先计算表达式的值,若表达式为非0,则执行语句1,否则执行语句2

                 列子:

#include <iostream>
using namespace std;
int main()
{
	int score = 0;
	cout << "请输入一个考试分数:" << endl;
	cin >> score;
	cout << "你输入的分数为: " <<score<< endl;
	if (score > 600)
	{
		cout << "恭喜考入一本学校" << endl;
	}else
	{
		cout << "没考上一本!" << endl;
	}
	return 0;
}

          1.3嵌套的条件语句

                格式:if(表达式1)  语句1

                            else if(表达式2)   语句2

                              else if(表达式3)   语句

                                     .......

                               else if(表达式m)   语句m

                  配对原则:else 与其前边最近的未配对的if配对

#include<iostream>
using namespace std;
int main()
{
	//score>600,考上一本;score>500,考上二本;score>400,考上三本;其余未考上
	//在一本中,score>700,考入北大;score>650,考入清华;score>600,考入人大

	int score = 0;
	cout << "请输入考试分数: " << endl;
	cin >> score;
	cout << "您输入的分数为: " <<score<< endl;

	if (score > 600)
	{ cout << "恭喜考上一本大学" << endl; 
	if (score > 700) { cout << "恭喜考入北京大学" << endl; }
	else if (score > 650) { cout << "恭喜考入清华大学" << endl; }
	else { cout << "恭喜考入人民大学" << endl; }
	}
	else if (score > 500)
	{ cout << "恭喜考入二本大学" << endl; }
	else if (score > 400) 
	{ cout << "恭喜考入三本大学" << endl; }
	else 
	{ cout << "未考上本科" << endl; }
	return 0;
}

        1.4switch语句

               格式:switch(表达式)

                         {     case  常量表达式1:语句序列1;break;

                               case  常量表达式2:语句序列;break;

                                       ..........

                              case  常量表达式n:语句序列n;break;

                               default:语句序列n+1

                     }         

          switch语句执行顺序:1.先计算表达式,得到一个常量结果

                                              2.在从上到下寻找于此结果相匹配的常量表达式所在的case语句

                                              3.如果匹配则以此作为入口,开始依次执行入口处后面的各语句,直                                                    到遇到“}”,才结束switch语句

                                               4.如果没有找到与此结果相匹配的常量表达式,则执行default处语                                                       句n+1

         注意:default语句是默认的

                    switch后的括号表达式只能是整形,字符型,枚举型

                    case语句起标号作用,标号不能重名

                    可以使多个case语句共用一组

#include <iostream>
using namespace std;
int main()
{
	float a; int b; char grade;
	cin >> a;
	b = (int)a / 10;
	switch (b)
	{
	case 10:
	case 9:
	case 8:grade = '1A'; break;
	case 7:
	case 6:grade = '2B'; break;
	default:grade = '3C'; break;
	}
	cout << grade << endl;
	return 0;
}

2.循环结构语句

   2.1 while语句

         格式:  while(<表达式>)  <循环体语句>

       执行过程:先计算表达式的值,若逻辑为真,则执行循环语句,再计算表达式的值并重复以                            上的判断和执行过程,直到表达式的值为0时,结束循环的执行

        列子 :猜数字游戏

#include<iostream>
using namespace std;
//time 系统时间头文件包含
#include<ctime>
int main()
{
	//添加随机数种子,作为利用当前系统时间生成随机数,防止每次随机数都一样
	srand((unsigned int)time(NULL));
	
		int a =rand() % 100 + 1;//随机生成1~100的一个数

	while (1)
	{
		int b = 0;
		cin >> b;//玩家猜测的数字
		if (b > a)
		{
			cout << "猜测过大" << endl;
		}
		else if (b < a)
		{
			cout << "猜测过小" << endl;
		}
		else 
		{
			cout << "恭喜猜对了" << endl; break;
		}
	}
	return 0;
}

         2.2 do.....while语句

               格式:do

                             < 循环体语句>

                          while(<表达式>)

               执行过程:1.执行循环体语句

                                  2.计算表达式的值

                                  3.如果表达式的值为非0,重复(1)(2)步骤;否则结束循环语句的执行

#include<iostream>
using namespace std;
int main()
{
	int num = 0;
	do
	{
		cout << num << endl;
		num++;
	} while (num < 10);
		return 0;
}

          2.3for语句

                格式:for(<表达式1> ;<表达式2>;<表达式3>)     

                                 <循环体语句>

                执行过程:1.计算表达式1的值

                                  2.计算表达式2的值

                                  3.若表达式2的值为非0,执行循环语句;否则结束for循环

                                  4.计算表达式3的值        

                                   5.重复2~5步骤

      

#include<iostream>
using namespace std;
int main()
{
	for (int a = 1; a <= 100; a++)
	{
		if (a % 7 == 0 || a % 10 == 7 || a / 10 == 7)
		{
			cout << "敲桌子" << endl;
		}
		else

		{
			cout << a << endl;
		}
	}

	return 0;
}

三种循环语句的比较

    while循环:                     do....while循环:                               for循环: 

    <循环变量>=<初值>;         <循环变量>=<初值>;                    <循环变量>=<初值>; 

   while(条件)                    do                                                   for(<循环变量>=<初值>;<条件>;

{<循环体变量>                      {<循环体变量>                                  <改变循环变量>)

<改变循环变量>                      <改变循环体变量>                       {<循环体语句>}

}                                              }

(1)while和for语句在每次执行循环体语句之前判断循环条件,然后决定是否执行循环体语句;

          do....while语句在每次执行循环体语句之后判断循环条件,然后决定是否执行循环体语句

(2)如果一开始循环条件不成立,while和for语句不执行循环体语句;

          do.....while语句至少执行一次循环体语句

  2.4嵌套循环

             外层执行一次,内层执行一次

列子:九九乘法表

#include<iostream>
using namespace std;
int main()
{
	//列数*行数=计算结果、列数<=当前的行数
	for (int i = 1; i <= 9; i++)
	{
		
		for (int j = 1; j <= i; j++)
		{
			cout << j<<" * "<<i<< "= "<<j*i<<" ";
		}
		cout << endl;
	}
	return 0;

3.跳转语句

     3.1break(跳出语句)

           格式: break;

            break语句只能用在switch语句和循环语句中

            

#include<iostream>
using namespace std;
int main()
{
	//break使用时机
	//1.出现在switch中
	cout << "请选择副本的难度" << endl;
	cout << "1.普通" << endl;
	cout << "2.中等" << endl;
	cout << "3.困难" << endl;

	int select = 0;

	cin >> select;
	switch (select)
	{
	case 1:
		cout << "您选择的是普通" << endl; break;
	case 2:
		cout << "您选择的难度是中等" << endl; break;
	case 3:
		cout << "您选择的难度是困难" << endl; break;
	default :
		break;
	}
	//2.循环语句
	for (int a = 0; a < 10; a++)
	{//如果i=5,退出循环,不再打印
		if (a == 5)
		{
			break;
		}
		cout << a << endl;
	}

	//3.嵌套语句
	for (int i = 0; i < 10; i++)
	{
		for (int j = 0; j < 10; j++)
		{
			if (j == 5)
			{
				break;
			}
			cout << "* ";
		}cout << endl;
	}
	
	return 0;
}

        3.2continue语句(回到初始,及结束本次循环,重新下一次)

              格式:continue;

              continue语句只能用在循环中

              

#include<iostream>
using namespace std;
int main()
{
	for (int i = 0; i <= 100; i++)
	{
		if (i % 2 == 0)
		{
			continue;//可以筛选条件,执行到此就不再向下执行,执行下一次循环
		}
		cout << i << endl;
	}
	return 0;

          break语句和continue语句的区别:

                 1.break语句时跳出本次循环,continue语句时终止本次循环

                 2 .break语句可以用在循环和switch语句中,continue语句只用在 循环语句中  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值