c语言牛客网基础题解

2的n次方计算_牛客题霸_牛客网 (nowcoder.com)

关于这道题最直接的想法便是直接求2的n次方,该如何实现呢?

第一种方法:这里我们便需要了解#include<math.h>库函数中的一个函数pow(x,y),他的意思便是x的y次方知道了这个这道题是不是就很简单了。

 (一定要引头文件)#include<math.h>

像这样我们便可以快速的出2的n次方的答案,例如当n=10时

第二中方法利用内存中存储的数字为2进制解题

 先为大家解答一下EOF

EOF是一个计算机术语,为End Of File的缩写,在操作系统中表示资料源无更多的资料可读取。资料源通常称为档案或串流。通常在文本的最后存在此字符表示资料结束。

当我们转到定义是会发现EOF其实就是被定义为-1。

 

 直面地说EOF在scanf连用时代表-1的意思,当用到while(scanf()!=EOF),代表的意思是一直输入,直到scanf返回的值是-1时才会停止输入。

 我们来解释这个程序的原理:

首先我们知道正数的原码反码补码都相同,所以1在内存中存放的是:00000000000000000000000000000001

给1使用<<(左移操作符)即变成了:

00000000000000000000010000000000

这是我们再算做以后的数1*2^10=1024

相同的原理给a赋值便会左移几位,再利用2进制的算法来求出相对应的数字。 

在这里如果使用的是vs2019则可以使用ctrl+c来结束循环。

第三种当然怎末能少了递归呢

 那么这道题就到这里吧。

KiKi和酸奶_牛客题霸_牛客网 (nowcoder.com)

 相信大家这道题都难不住大家,但要注意一点打开没喝完可不能算到未打开的酸奶盒数里。(小学被支配的恐惧

 

 浮点数的个位数字_牛客题霸_牛客网 (nowcoder.com)

 这里为大家带来另一种方法求浮点数的个位数字

我们可以采用数组的形式来找到小数点,进而求得浮点数的个位数字

运行结果如图 

 其中需要注意的是(我们可以直接利用指针找到小数点的位置)

 那末这次的分享就到这里了。

大家都很棒。

 

 

 

 

 

 

 

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值