C语言中,怎么判断100的第几位是否为1?

思路清晰,先说BP

假如判断第五位是否为1

100 -----------> 0110 0100

我们只需保证100的第五位进行位逻辑与是1即可,其他为可以补0

100 -----------> 0110 0100

      ----------->  0010 0000

简单的位数我们可以通过计算出与100做位逻辑与的值,但数据量比较大时,不能快速计算出这个数值。我们可以考虑我们学的左移来解决这个问题。当需要判断第N位是否为1时,我们可以把1左移N位(1<<N),来与判断的数做位与运算来判断是否为1

代码展示:


运行结果:


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容