五、程序流程结构(1)选择结构——if语句

发布时间:2024年01月15日

C/C++支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构

  • 顺序结构:程序按顺序执行,不发生跳转
  • 选择结构:依据条件是否满足,有选择地执行相应的功能
  • 循环结构:依据条件是否满足,循环多次执行某段代码

一、if语句

作用:执行满足条件的语句

if语句的三种形式:

  • 单行格式if语句
  • 多行格式if语句
  • 多条件的if语句

1、单行格式if语句?

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<string>
using namespace std;
int main()
{
	//选择结构,单行if语句
	//用户输入分数,如果分数大于600,视为考上一本大学,屏幕上输出
	
	//1、用户输入分数
	int score = 0;
	cout << "请输入一个分数:" << endl;
	cin >> score;

	//2、打印用户输入的分数
	cout << "您输入的分数为:" << endl;

	//3、判断分数是否大于600,如果分数大于600,那么输出
	if (score > 600)	//if条件后不要加分号
	{
		cout << "恭喜您考上一本大学" << endl;
	}

	system("pause");

	return 0;
}

运行结果:

请输入一个分数:
601
您输入的分数为:601
恭喜您考上一本大学

2、多行if语句?

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

	//1、用户输入分数
	int score = 0;
	cout << "请输入一个分数:" << endl;
	cin >> score;

	//2、打印用户输入的分数
	cout << "您输入的分数为:" << endl;

	//3、判断分数是否大于600,如果分数大于600,那么输出
	if (score > 600)	//if条件后不要加分号
	{
		cout << "恭喜您考上一本大学" << endl;
	}
	else
	{
		cout << "很遗憾,您没考上一本大学" << endl;
	}

	system("pause");

	return 0;
}

?运行结果:

请输入一个分数:
580
您输入的分数为:
很遗憾,您没考上一本大学

3、多条件的if语句?

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

	//1、用户输入分数
	int score = 0;
	cout << "请输入一个分数:" << endl;
	cin >> score;

	//2、打印用户输入的分数
	cout << "您输入的分数为:" << endl;

	//3、判断分数是否大于600,如果分数大于600,那么输出
	if (score > 600)	//if条件后不要加分号
	{
		cout << "恭喜您考上一本大学" << endl;
	}
	//大于500分,视为考上二本学校
	else if(score>500)
	{
		cout << "恭喜您考上二本大学" << endl;
	}
	//大于400分,视为考上三本学校
	else if (score > 400)
	{
		cout << "恭喜您考上三本大学" << endl;
	}
	//小于等于400分,视为未考上本科
	else
	{
		cout << "很遗憾,您没考上本科大学" << endl;
	}

	system("pause");

	return 0;
}

?运行结果:

请输入一个分数:
300
您输入的分数为:
很遗憾,您没考上本科大学

?4、嵌套if语句

1、案例需求:

  • 提示用户输入一个高考考试分数,根据分数做如下判断:
  • 分数如果大于600分视为考上一本,大于500分考上二本,大于400考上三本,其余视为未考上本
  • 科;
  • 在一本分数中,如果大于700分,考入北大,大于650分,考入清华,大于600考入人大。
//大于600分进行分段判断
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<string>
using namespace std;
int main()
{
	int score = 0;
	cout << "请输入一个分数:" << endl;
	cin >> score;

	cout << "您输入的分数为:" << 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;
	}

	system("pause");

	return 0;
}

?运行结果:?

请输入一个分数:
750
您输入的分数为:
恭喜您考上一本大学
您能考入北京大学

2、三只小猪称体重

有ABC三只小猪,分别输入三只小猪的体重,并判断哪只小猪最重。

1、先判断A和B谁重,若A重则让A和C比较,若A比C重则A最重

2、B、C判断同1?

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<string>
using namespace std;
int main()
{
	int num1 = 0;
	int num2 = 0;
	int num3 = 0;

	//2、让用户输入三只小猪的重量
	cout << "请输入小猪A的体重:" << endl;
	cin >> num1;

	cout << "请输入小猪B的体重:" << endl;
	cin >> num2;

	cout << "请输入小猪C的体重:" << endl;
	cin >> num3;

	if (num1 > num2)	//A比B重
	{
		if (num1 > num3)
		{
			cout << "小猪A最重" << endl;
		}
		else
		{
			cout << "小猪C最重" << endl;
		}
	}
	else
	{
		//B比A重
	}
	{
		if (num2 > num3)
		{
			cout << "小猪B最重" << endl;
		}
		else
		{
			cout << "小猪C最重" << endl;
		}
	}

	system("pause");

	return 0;
}

?运行结果:?

请输入小猪A的体重:
200
请输入小猪B的体重:
500
请输入小猪C的体重:
300
小猪B最重

文章来源:https://blog.csdn.net/All_are_vanity/article/details/135556833
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。