c++:程序流程结构,顺序结构,选择结构if else,三目运算符

c++:程序流程结构,顺序结构,选择结构if else,三目运算符

2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,此时学会c++的话,
我所知道的周边的会c++的同学,可手握10多个offer,随心所欲,而找啥算法岗的,基本gg
提示:系列c++学习的基础和高阶知识,用于公司生产实践中,实实在在的公司部署产品要用的,因为c++速度快,
而java和Python速度慢,自然往硬件里面部署算法啥的,都得用c++或者c,因此本科学的c很重要,后来的Python或者java就没有那么重要了,


c++程序流程结构

在这里插入图片描述
这些结构,其实好说,你学数据结构与算法的话,用得很多了,我前面400篇文章,已经用过无数次了

选择结构

在这里插入图片描述
在这里插入图片描述
java也差不多,也是有()
Python是()取消了,为了简洁表达
骚得很

看看案例就知道,用户输入分数
大于600分,考上一本,恭喜一把
没有的话,就没考上了,可惜了呗
在这里插入图片描述
这是三目运算符
是单行判断的简写

这种,简短舒服,高端大气上档次

平时你可以这么写,但是逼格就很低了
在这里插入图片描述
你瞅瞅,如果用if else的话
占了5行呢
逼格肯定low
而三目运算

条件判断表达式 ? 操作1 : 操作2
前面是条件,满足搞操作1,不满足条件的话,执行操作2

#include<iostream>
using namespace std;

void danhangchoose() {
	//单行选择结构,就一个if

	int a;
	cin >> a;
	cout << (a >= 600 ? "恭喜兄弟考上一本!" : "可惜了兄弟……") << endl;

	//low的写法

	cin >> a;
	if (a >= 600) {
		cout << "不错哦兄弟哈哈哈哈" << endl;
	}
	else
	{
		cout << "不太行啊你" << endl;
	}
}

int main() {
	danhangchoose();

	system("pause");
	return 0;
}

和c语言不要,if的()后面是不需要加:的哦

也不要加;
否则就是结束了

在这里插入图片描述
其实多行上面我已经写了
没有else就是单行

#include<iostream>
using namespace std;

void duohang() {
	//单行选择结构,就一个if

	int a;
	cin >> a;
	cout << (a >= 600 ? "恭喜兄弟考上一本!" : "可惜了兄弟……") << endl;

	//low的写法

	cin >> a;
	if (a >= 600) {
		cout << "不错哦兄弟哈哈哈哈" << endl;
	}
	else
	{
		cout << "不太行啊你" << endl;
	}
}

void danhangchoose() {
	int a;
	cin >> a;
	if (a >= 600) {
		cout << "不错哦兄弟哈哈哈哈" << endl;
	}
}

int main() {
	danhangchoose();
	duohang();

	system("pause");
	return 0;
}

在这里插入图片描述

很多else if
好说

在这里插入图片描述

超多条件,好说,很简单

void chaoduopanduan() {
	//本科有1本,2,3,等等
	//600上一本
	//500上二本
	//400上三本
	//剩下的就是专科或者没考上呗
	int a;
	cin >> a;
	if (a >= 600) {
		cout << "nice,考上了一本呗" << endl;
	}
	else if (a >= 500) {
		cout << "可以的,考上了二本呗" << endl;
	}
	else if (a >= 400) {
		cout << "行,考上了三本呗" << endl;
	}
	else
	{
		cout << "很差劲,没考上" << endl;
	}
}

在这里插入图片描述
加一个循环,多次输入就这样

void chaoduopanduan() {
	//本科有1本,2,3,等等
	//600上一本
	//500上二本
	//400上三本
	//剩下的就是专科或者没考上呗
	while (1) {
		int a;
		cin >> a;
		if (a >= 600) {
			cout << "nice,考上了一本呗" << endl;
		}
		else if (a >= 500) {
			cout << "可以的,考上了二本呗" << endl;
		}
		else if (a >= 400) {
			cout << "行,考上了三本呗" << endl;
		}
		else
		{
			cout << "很差劲,没考上" << endl;
		}
	}

在这里插入图片描述
在这里插入图片描述

//嵌套if语句,if中再写if,更精准的二叉树分开
void qingbei() {
	//本科有1本,2,3,等等
	//600上一本
	//500上二本
	//400上三本
	//剩下的就是专科或者没考上呗
	//一本中,超过700,北大,超过650,清华,超过600,人大
	while (1) {
		int a;
		cin >> a;
		if (a >= 600) {
			cout << "nice,考上了一本呗" << endl;
			if (a >= 700) cout << "与此同时,您可是考上了北大呀,牛逼哟" << endl;
			else if (a >=650) cout << "与此同时,您可是考上了清华呀,牛逼哟" << endl;
			else cout << "top高校,985,211啥的,牛" << endl;
		}
		else if (a >= 500) {
			cout << "可以的,考上了二本呗" << endl;
		}
		else if (a >= 400) {
			cout << "行,考上了三本呗" << endl;
		}
		else
		{
			cout << "很差劲,没考上" << endl;
			break;//防止死循环
		}
	}
}

练习,三只小猪称体重

abc

在这里插入图片描述
就输入仨数,取max呗
好说

这是最简单的算法了

在这里插入图片描述
下面这样也可以很简单,不看体重,只看谁最重
在这里插入图片描述

void threePig() {
	int a;
	int b;
	int c;

	int vMax;
	string best;
	cin >> a;
	vMax = max(vMax, a);
	best = "a";//目前最重的
	cin >> b;
	if (b > a) best = "b";
	vMax = max(vMax, b);
	cin >> c;
	if (c > vMax) best = "c";
	vMax = max(vMax, c);

	cout << "仨猪中最重的是:"+best+"它的体重为:"<< vMax << endl;

	while (1) {
		cin >> a;
		cin >> b;
		cin >> c;
		//当然,不要体重的,只看谁?
		if (a > b) {
			if (a > c) cout << "a最重" << endl;
		}
		else if (b > c) cout << "b最重" << endl;
		else cout << "c最重" << endl;
	}
}

三目运算符:只有一个if和else

在这里插入图片描述
比如创建仨变量,abc
将a和b比较,将比较大的复制给c
a大赋值a给c
b大赋值b给c
if else一个也行,但是三目很简答
在这里插入图片描述

三目运算符的返回的是变量
在这里插入图片描述
在这里插入图片描述

void threeMu() {
	int a;
	int b;
	int c;
	//cin >> a;
	//cin >> b;

	将ab谁大,赋值给c
	//c = a > b ? a : b;
	//cout << c << endl;

	a = 40;
	b = 20;
	c = 30;

	//三目运算符返回的是变量,可以继续赋值
	(a > b ? a : b) = 100;//啥意思呢?就是a大返回a,否返回b,然后复制100给这个变量
	cout << "a=" << a << endl;
	cout << "b=" << b << endl;
}

三目运算符,可以做右值
也可以做左值

?:就是三目运算符

返回的是一个变量


总结

提示:重要经验:

1) c++:程序流程结构,顺序结构,选择结构if else,三目运算符
2)学好c++,即使经济寒冬,手握10个大厂offer绝对不是问题!
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

冰露可乐

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

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

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

打赏作者

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

抵扣说明:

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

余额充值