C++语法3——if switch break continue的定义及用法

接上节
循环语句

这一节写的是判断语句



if else语句

基本语法:

第一种:
if(bool(布尔变量))
{
	如果bool值为真执行的语句;
}
else
{
	如果bool值为假执行的语句;
}

如果布尔表达式为 true,则执行 if 块内的代码。如果布尔表达式为 false,则执行 else 块内的代码。

语法举例:

#include <iostream>
using namespace std;
 
int main ()
{
    
    
   // 局部变量声明
   int a = 100;
 
   // 检查布尔条件
   if( a < 20 )
   {
    
    
       // 如果条件为真,则输出下面的语句
       cout << "a 小于 20" << endl;
   }
   else
   {
    
    
       // 如果条件为假,则输出下面的语句
       cout << "a 大于 20" << endl;
   }
   cout << "a 的值是 " << a << endl;
 
   return 0;
}

上述代码取自菜鸟教程


第二种:
if(条件1)
{
	当条件1为真时执行语句;
}
else if(条件2)
{
	当条件2为真时执行语句;
}
else if(条件3)
{
	当条件3为真时执行语句;
}
......
else //除去上面所有条件的并集的情况
{
	当条件1、2、3...都为假时执行语句;
}

当使用 if…else if…else 语句时,以下几点需要注意:

1.一个 if 后可跟零个或一个 else,else 必须在所有 else if 之后。
2.一个 if 后可跟零个或多个 else if,else if 必须在 else 之前。
3.一旦某个 else if 匹配成功,其他的 else if 或 else 将不会被测试。

举个栗子
在这里插入图片描述

这里只放一张图,详情请通过上面链接跳转到洛谷查看

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
const double pi=3.141593;

int main() 
{
    
    
	int T;
	cin >> T;
	if (T == 1)
		cout << "I love Luogu!";
	else if (T == 2)
		cout << 2 + 4 << " " << 10 - 2 - 4;
	else if (T == 3) 
	{
    
    
		int i,j,k;
		i=14/4;
		j=i*4;
		k=14-j;
		cout<<i<<endl<<j<<endl<<k;
	} 
	else if (T == 4) 
	{
    
    
		double l;
		l=500.0/3;
		cout<<l;
	} 
	else if (T == 5) 
		cout<<(220+260)/(12+20);
	else if (T == 6) 
		cout<<sqrt(6*6+9*9);
	else if (T == 7) 
		cout<<110<<endl<<90<<endl<<0;
	else if (T == 8) 
		cout<<pi*10<<endl<<pi*25<<endl<<4/3.0*pi*125;
	else if (T == 9)
		cout<<"22";
	else if (T == 10) 
		cout<<"9";
	else if (T == 11) 
	{
    
    
		double i=100.0/3;
		cout<<i;
	} 
	else if (T == 12)
		cout<<int('M'-'A')+1<<endl<<char('A'+17);
	else if (T == 13) 
		cout<<(int)(pow(4/3.0*pi*(4*4*4+10*10*10),1.0/3));
	else if (T == 14) 
		cout<<"50";
	return 0;
}


switch语句

基本语法:

switch(变量)
{
	case 值1:
		(语句;
		break;)
	case 值2:
		(语句;
		break;)
	case 值3:
		(语句;
		break;)
	default:  //除去以上所有值的情况
		(语句;)
}
小括号括着代表该语句可有可无,没有也可以正常运行
语法举例:
#include <iostream>
using namespace std;
 
int main ()
{
    
    
   // 局部变量声明
   char grade = 'D';
 
   switch(grade)
   {
    
    
   case 'A' :
      cout << "很棒!" << endl; 
      break;
   case 'B' :
   case 'C' :
      cout << "做得好" << endl;
      break;
   case 'D' :
      cout << "您通过了" << endl;
      break;
   case 'F' :
      cout << "最好再试一下" << endl;
      break;
   default :
      cout << "无效的成绩" << endl;
   }
   cout << "您的成绩是 " << grade << endl;
 
   return 0;
}

实战:用上面用过的题目
代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
const double pi=3.141593;

int main() 
{
    
    
	int T;
	cin >> T;
	switch(T)
	{
    
     
		case 1:
			cout << "I love Luogu!";
			break;
		case 2:
			cout << 2 + 4 << " " << 10 - 2 - 4;
			break;
		case 3:
		{
    
    
			int i,j,k;
			i=14/4;
			j=i*4;
			k=14-j;
			cout<<i<<endl<<j<<endl<<k;
			break;
		}
		case 4: 
		{
    
    
			double l;
			l=500.0/3;
			cout<<l;
			break;
		}
		case 5: 
			cout<<(220+260)/(12+20);
			break;
		case 6: 
			cout<<sqrt(6*6+9*9);
			break;
		case 7:
			cout<<110<<endl<<90<<endl<<0;
			break;
		case 8: 
			cout<<pi*10<<endl<<pi*25<<endl<<4/3.0*pi*125;
			break;
		case 9:
			cout<<"22";
			break;
		case 10: 
			cout<<"9";
			break;
		case 11:
		{
    
    
			double i=100.0/3;
			cout<<i;
			break;
		}
		case 12:
			cout<<int('M'-'A')+1<<endl<<char('A'+17);
			break;
		case 13: 
			cout<<(int)(pow(4/3.0*pi*(4*4*4+10*10*10),1.0/3));
			break;
		default: 
			cout<<"50";
	}
	return 0;
}

❗❗❗切记:case后面若有语句一定得在尾部加上break。否则会输出错误,break属于一个断点操作。



break与continue语句

break:打破,顾名思义就是停止当前循环或语句。

C ++中 break 语句有以下两种用法:

1.当 break 语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条语句。
2.它可用于终止 switch 语句中的一个 case。

如果您使用的是嵌套循环(即一个循环内嵌套另一个循环),break 语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。

语法示例:

#include <iostream>
#include <cstdio>
int main ()
{
    
    
   int a = 10;
   while( a < 20 )
   {
    
    
      printf("a 的值: %d\n", a);
      a++;
      if( a > 15)
         /* 使用 break 语句终止循环 */
          break;
   }
   return 0;
}

输出结果如下:

a 的值: 10
a 的值: 11
a 的值: 12
a 的值: 13
a 的值: 14
a 的值: 15

continue:继续,顾名思义就是继续做循环,它类似于break,不过break是强制退出循环,它是跳过当前循环的代码做下一次循环

语法示例:

#include <iostream>
#include <cstdio>
int main ()
{
    
    
   int a = 0;
   do
   {
    
    
      if( a == 5)
      {
    
    
         a = a + 1;
         continue;
      }
      printf("a 的值: %d\n", a);
      a++;
   }while( a < 10 );
   return 0;
}

输出结果如下:

a 的值: 0
a 的值: 1
a 的值: 2
a 的值: 3
a 的值: 4
a 的值: 6
a 的值: 7
a 的值: 8
a 的值: 9


以上就是这次的全部内容,希望对大家有所帮助有所启发。

猜你喜欢

转载自blog.csdn.net/weixin_61017400/article/details/128563346