`
fxly0401
  • 浏览: 144337 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

如何用一个语句判断一个整数是不是二的整数次幂?

阅读更多
算法:如何用一个语句判断一个整数是不是二的整数次幂?

int ispow2(int x) {
    return x && !(x & (x-1));
}

注:!(x & (x-1))可判断非0整数是否是2的整数次幂,加上x && 可判断0.
分享到:
评论

相关推荐

    一条语句判断整数a是否是2的整数幂

    仅用一条c语句,完成判断一个整数是否是2的整数幂的工作。

    JAVA案例 第二篇:针对大数值取整数和小数、保留几位小数、特定位数的数值、自幂数.docx

    既然能够判断一个数值是否为整数,那么就应该有机会将它的整数部分和小数部分分割开来,也就是我们常说的取整(它同时包含了取小数),在我们初学JAVA时,我们常用的方法是强制转换,或者利用BigDecimal.ROUND语句来...

    delphi 开发经验技巧宝典源码

    0126 使用ShowException函数显示一个异常信息 82 4.7 异常处理函数 83 0127 将错误编号转换为错误信息字符串 83 0128 使用ExceptAddr函数获得异常被抛出的地址 83 0129 格式化异常处理信息 84 4.8 图形...

    C语言参考答案汇总(浙江大学城市学院)

    50006 使用函数统计一个整数中数字的个数 45 50007 使用函数找水仙花数 46 50009 使用函数求余弦函数的近似值 48 50052 使用函数找最大值 49 50062 使用函数输出指定范围内的 Fibonacci 数 50 50063 使用函数找出...

    浙江大学C语言上机练习题附答案

    50006 使用函数统计一个整数中数字的个数 45 50007 使用函数找水仙花数 46 50009 使用函数求余弦函数的近似值 48 50052 使用函数找最大值 49 50062 使用函数输出指定范围内的 Fibonacci 数 50 50063 使用函数找出...

    Lotus公式语言函数简介

    @Keywords 给定两个文本列表,返回第一个列表和第二个列表之间重叠的部分 @Left 从左到右搜索字符串,并返回字符串中最左边的几个字符 @LeftBack 从右至左搜索字符串并返回子串 @Length 返回文本字符串中字符的个数 ...

    语言程序设计课后习题答案

    2-5 请写出C++语句声明一个常量PI,值为3.1416;再声明一个浮点型变量a,把PI的值赋给a。 解: const float PI = 3.1416; float a = PI; 2-6 在下面的枚举类型中,Blue的值是多少? enum COLOR { WHITE, BLACK = ...

    Python案例集锦-0414.docx

    程序4:判断整数大小 4 程序5:斐波那契数列 5 程序6:水仙花数 6 程序7:数字求和 6 程序8:平方根 7 程序9:if语句 8 程序10:阿姆斯特朗数 8 程序11:输出指定范围的素数(else语句) 9 程序12:生成日历 10 程序...

    c语言经典案例

    实例104 判断一个数是否存在数组中 135 实例105 求二维数组对角线之和 136 实例106 模拟比赛打分 137 实例107 矩阵的转置 139 实例108 设计魔方阵 141 实例109 字符升序排列 142 实例110 在指定位置插入字符 144 ...

    delphi 开发经验技巧宝典源码06

    0126 使用ShowException函数显示一个异常信息 82 4.7 异常处理函数 83 0127 将错误编号转换为错误信息字符串 83 0128 使用ExceptAddr函数获得异常被抛出的地址 83 0129 格式化异常处理信息 84 4.8 图形...

    数据结构(C++)有关练习题

    6、 用C++编写求多项式的和与积的算法,要求如下: a. 要求从键盘分别输入2个多项式的系数以及最高次幂; b. 通过重载操作符+和*,完成多项式的和与积的计算; c. 输出运算结果; 7、 编写一个程序...

    Python复习题.docx

    = == 赋值语句 = += -= *= /= %= 3 if 语句 格式一 if 条件 : 如果条件成立执行本段代码 else: 如果条件不成立执行本段代码 格式二 if 条件 : 如果条件成立执行本段代码 Python复习题全文共37页,当前为第1页。...

    《妙趣横生的算法(C语言实现)》(杨峰 编著)

    1.3.1 创建一个链表 1.3.2 向链表中插入结点 1.3.3 从链表中删除结点 1.3.4 销毁一个链表 1.3.5 实例与分析 1.4 栈 1.4.1 栈的定义 1.4.2 创建一个栈 1.4.3 入栈操作 1.4.4 出栈操作 1.4.5 栈的其他操作 1.4.实例与...

    狂人C程序员入门必备

    2.7.3 一个技巧 2.7.4 更高效率的写法 2.8 算法的特性 小结 概念与术语 风格与习惯 常见错误 牛角尖 练习与自测 第3章 运算符、表达式及语句 3.1 C的“动词”及“动词”的“宾语” 3.2 表达式——C语言的“词组 ...

    C程序范例宝典(基础代码详解)

    实例022 求一个正整数的所有因子 27 实例023 一元钱兑换方案 28 实例024 对调数问题 29 实例025 数平方和运算的问题 30 1.5 数组 31 实例026 逆序存放数据 32 实例027 相邻元素之和 33 实例028 选票...

    算法导论(part2)

    编写上采用了“五个一”,即一章介绍一个算法、一种设计技术、一个应用领域和一个相关话题。.. 3.图文并茂,可读性强。 书中的算法均以通俗易懂的语言进行说明,并采用了大量插图来说明算法是如何工作的,易于...

    C# for CSDN 乱七八糟的看不懂

    // =1 // =-1 // =0.6 // =-1.2 经常用模数运算符来判断整数为奇数(=1)或偶数(=0) 。 循环 无条件循环 int sum,x; sum=0; for(x=1;x;x++) { sum+=x; } 有条件循环 private void button1_Click(object sender, ...

    C#全能速查宝典

    1.3.3 continue语句——继续执行下一个循环 31 1.3.4 do…while语句——循环语句 31 1.3.5 for语句——循环语句 32 1.3.6 foreach语句——枚举一个集合的元素 33 1.3.7 goto语句——跳转到标签 34 1.3.8 if…else...

    算法导论(part1)

    编写上采用了“五个一”,即一章介绍一个算法、一种设计技术、一个应用领域和一个相关话题。.. 3.图文并茂,可读性强。 书中的算法均以通俗易懂的语言进行说明,并采用了大量插图来说明算法是如何工作的,易于...

Global site tag (gtag.js) - Google Analytics