C 语言练习范例 54
题目
取一个整数a从右端开始的4~7位。
程序分析
可以这样考虑:
-
先使a右移4位。
-
设置一个低4位全为1,其余全为0的数。可用~(~0<<4)
-
将上面二者进行&运算
程序代码
/** * file: main.c * author: 简单教程(www.twle.cn) * * Copyright © 2015-2065 www.twle.cn. 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