C语言之两个数的交换以及求最大/小值

这篇博客主要想讲两个很基础的知识和解决方法:

1.两个数的交换

2.求最大/最小值

1.关于两个数的交换

如果给我们两个值a和b,需要我们将a和b的值互换过来,我们应该如何操作呢?

首先,我们先对a和b进行简单的初始化

我们目标是调换他们的值,将a变成20,将b变成10 。

这时候,我们需要求助! 新建立一个变量作为中间量

这个中间量是 cup

紧接着,我们就要开始操作了。

首先我们可以将下图的几个表达式,如cup = a; 理解为把a 的值 赋值 给cup,a = b; 理解为将b 的值 赋值 给a。

①cup = a; 把a = 10的值赋值给cup,所以cup的值变成了10。

②a = b; 把b=20的值赋值给了a,使a的值为20。

③b = cup; 把cup从a获得的值10 赋值给b,使b的值为10,这样就成功完成交换啦。 

结果:成功完成任务!

那么我们如何更好的去理解呢?

我们假设a为乌龙茶,b为绿茶,cup为空杯子

我们要将a和b交换,也就是将乌龙茶和绿茶进行交换

所以我们就需要①先将乌龙茶倒入空杯子 ②再将绿茶倒入原本装乌龙茶的杯子 ③再将装了乌龙茶的空杯子倒入原本装绿茶的杯子

这样就能成功完成交换啦!



2.求最大/最小值

首先,让我们来创建一个数组,因为我们求最大值/求最小值是求在一个数组里的。

要求最值的关键点是假设一个最值,我们可以假设a[0]为最值

在假设a[0]为最值后,我们求解最值的思路就是让a[0]与数组中的其它元素进行一 一比较

所以我们就可以借助循环,以此来比较各个元素

当在数组中某个元素比我们假定的最值a[0]的值更大/小时,就会进入到if语句中,将这个值赋给变量Max/Min,那么此时这个值就是新的最值,然后继续将该值与其它元素进行比较。直到循环结束后,比较就完成了,成功产生了最值。

下图分别为求最大值,最小值

求最值的理解就好比是打擂台,将第一位上场的选手先当作是最强的,然后其他的参赛选手则一个接一个的上场,如果有实力那么就会留在擂台上,没实力就下台,这样就能选出真正最强的选手啦!

总结:

以上两种问题的解决方法都是比较简单的方法,求解的方法并非只有一种,还有其它方法以后可以慢慢发现哟!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值