黑马程序员技术交流社区

标题: 关于利用左移右移实现判断奇数偶数 [打印本页]

作者: 曼卿phyand    时间: 2015-11-26 00:43
标题: 关于利用左移右移实现判断奇数偶数
今天学了按位运算 我设计的一种解法,大家看看还有别的思路吗?

#include <stdio.h>

int main(){
    int a=12;
   
    int b=1;

    b=a>>1;
   
//    printf("%d\n",b);

    b=b<<1;
    printf("%d\n",b);
   
    printf("%d\n",a);

    b=a|b;

    if (a==b) {
        printf("a=%d偶数\n",a);
    } else {
        printf("a=%d奇数\n",a);

作者: 曼卿phyand    时间: 2015-11-26 00:45
大家互相学习下!!!
作者: 曼卿phyand    时间: 2015-11-26 00:50
#include <stdio.h>

int main(){
    int a=12;
   
    int b=1;

    b=a>>1;
   
    b=b<<1;
    if (a==b) {
        printf("a=%d偶数\n",a);
    } else {
        printf("a=%d奇数\n",a);
    }
        return 0;
    }


重新排版了一下
作者: liury    时间: 2015-11-26 12:11
(a&1)  就可以判断a的奇偶了,搞这么花哨。
作者: 唐阿丽    时间: 2015-11-26 13:01
学习学习
作者: 超人不会飞啊    时间: 2015-11-26 13:39
学习学习
作者: qinxiaodong    时间: 2015-11-26 15:33
学习了!
作者: cube川    时间: 2015-11-26 17:40
a&1就可以= =
作者: cc_2436    时间: 2015-11-26 22:43
666666666666666
作者: 曼卿phyand    时间: 2015-11-26 23:46
liury 发表于 2015-11-26 12:11
(a&1)  就可以判断a的奇偶了,搞这么花哨。

昨天学的这个  自己一直想有哪些方法 这个方法我还没有听别人说起  我就试了一下
作者: 曼卿phyand    时间: 2015-11-26 23:47
cube川 发表于 2015-11-26 17:40
a&1就可以= =

方法多多益善嘛
作者: 曼卿phyand    时间: 2015-11-27 00:33
66666666666666666666666666666
作者: 黑马。。肖锋    时间: 2015-11-27 00:53
int n = 2;
int s;
s = !(n&1)?printf(“该数是偶数!\n”):printf("该数不是偶数!\n");
作者: 曼卿phyand    时间: 2015-11-27 01:03
黑马。。肖锋 发表于 2015-11-27 00:53
int n = 2;
int s;
s = !(n&1)?printf(“该数是偶数!\n”):printf("该数不是偶数!\n"); ...

按位或  按位与 左移右移 逻辑与 逻辑或  求余 都可以!!
作者: 石油小硕    时间: 2015-11-27 01:50
keep simple。。。
作者: SimonLo    时间: 2015-11-27 22:41
学习了!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2