2024年最全【C++保姆级入门】分支结构拓展与优化_c+(1),2024年最新2024年大数据开发常见面试题目

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

2.用法解释

我们上一《难题》用了一个很难的方法—— max and min

a=min(min(x,y),z);
c=max(max(x,y),z);

我们看一下这两条代码,再分解以下

int aa,cc,a,c;
int x,y,z;
aa=min(x,y);
a=min(aa,z);
cc=max(x,y)
c=max(cc,z);

首先解释以下min

比如aa=min(x,y),意思就是aa=x和y中小的一个

若x=10,y=8,aa=min(x,y),则aa=y //8

反之,max就是取大的

若x=10,y=8,aa=max(x,y),则aa=x //10

然后我们把新的知识联系到老知识里边

aa=min(x,y);
就等于
if(x>y) aa=y;
else aa=x;

aa=max(x,y);
就等于
if(x>y) aa=x;
else aa=y;

而第三题的那段代码就不用我解释了吧?


3.拓展用法

刚刚讲述了max 和 min 的基本用法,而max 和 min可以用以下函数解释(新手可以忽略

int max(int a, int b)
{
	return (a > b ? a : b);
}
 
int min(int a, int b)
{
	return (a < b ? a : b);
}

(据有些博主说,使用max函数首先需要有algorithm的头文件,可是我是用iostream也能通过编译???)

接着就是要讲一讲JYqwq博主评论的

“事实上C++11中max(max(a,b),c)可以直接写成max({a,b,c})”

即传入多个参数,必须要用{}包起来

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    cout << max({ 1, 2, 3, 4, 5 }) << endl;   //判断1 2 3 4 5哪个大
    return 0;
}

我想大家都应该知道1 2 3 4 5哪个大(6更大)

则再看看大佬的评论中  max(max(a,b),c)可以直接写成max({a,b,c})

前者是先判断a,b哪个大,大的再和c比较

而max({a,b,c}),则是直接判断a,b,c哪个大,结果相同


三.switch语句

标switch的结构题


1.switch和if语句的区别

在一些程序编写中绝对少不了判断语句。
如下面这个用if的简单的判断结构:

#include<iostream>
using namespace std;
int main() 
{

	int sum;
    cin>>sum;
	if(sum==1)
	{
		cout << "关注" << endl;
	}
	else if (sum==2)
	{
		cout << "关注+收藏" << endl;
	}
    else 
    {
        cout << "关注+收藏+点赞" << endl;
    }
	return 0;
}

这种表达比较复杂(复杂?),我们还有一种更为简单的表达方式(简单?)

这个结构就是switch,仍然是大佬JYqwq

”另外是不是漏了switch语句(虽然不是特别通用)”

上代码还可以这样写

#include<iostream>
using namespace std;
int main() 
{
	int sum;
	cin >> sum;
	switch (sum)
	{
		case 1:
			cout << "关注" << endl;
			break;
		case 2:
			cout << "关注+收藏" << endl;
			break;
		default:
			cout << "关注+收藏+点赞" << endl;
			break;
	}
	return 0;
}


2.switch的用法

在经过switch改进后,明显简洁很多,不过博主还是更喜欢if,毕竟switch没有if通用,但是这些基础还是要学会的

其中case表示if,default表示else,学会了if还是很好理解switch的(在{}中就是使用case关键字来判断)

在()中是需要判断的语句和变量(例如上面是判断sum变量的值);

case后面跟的必须是常量表达式(包括字符表达式)(格式如:case 1:语句;[break;]),表达式可以是C++任何的合法语句,但是其值只能是字符型常量或者整型常量,该常量表达式是用来判断()里面的表达式的值是否与该常量表达式的值相等(看不懂可以跳过)

每个分支case的常量表达式的值必须与某一值严格相等

若switch的某一分支的语句不止一句,则所要求的的多条语句也不用写成语句块的形式,只需在最后的语句后面加上break;即可表示在此case的执行语句结束

不会if的新手看文 C++保姆级入门教程(3)   if语句

所以相比if,switch的规定还是很多的


四.总结

本节课主要是讲解了分支的补充(max/min,switch),至此分支结构思想博主已经彻彻底底分享完了,相信大家对这个逻辑有了一定的理解,大家可以自己动手敲敲代码,感受一下

包教包会,帅的人已然点赞收藏关注,而丑的人还在犹豫,被犹豫了,快三连吧!


系列文章目录

本期收录于博主的专栏——C++保姆级入门教程,适用于编程入门初学者,感兴趣的朋友们可以订阅,查看其它“常见排序”。

C++保姆级入门教程_iecne的博客-CSDN博客

C++保姆级入门教程(1)   变量 输出 输入

C++保姆级入门教程(2)   算术运算和赋值

C++保姆级入门教程(3)   if语句

C++保姆级入门教程(4)   循环

C++保姆级入门教程(5)   顺序结构

C++保姆级入门教程(6)   分支结构

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

g-9A6ELx6y-1714897633956)]
[外链图片转存中…(img-KAGtcyNm-1714897633956)]
[外链图片转存中…(img-eHFaO6gY-1714897633956)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值