C 练习实例54

C 语言经典100例 C 语言经典100例

题目:取一个整数a从右端开始的4~7位。

程序分析:可以这样考虑:

(1)先使a右移4位。

(2)设置一个低4位全为1,其余全为0的数。可用~(~0<<4)

(3)将上面二者进行&运算。

程序源代码:

//  Created by vip.cnitedu.cn on 15/11/9.
//  Copyright © 2015年 笨鸟先飞. All rights reserved.
//

#include <stdio.h>
int main()
{
    unsigned a,b,c,d;
    printf("请输入整数:\n");
    scanf("%o",&a);
    b=a>>4;
    c=~(~0<<4);
    d=b&c;
    printf("%o\n%o\n",a,d);
    return 0;
}

以上实例输出结果为:

请输入整数:
36
36
1

C 语言经典100例 C 语言经典100例