今天编程学习网为大家讲解c语言编程:求解2的n次方,有需要的小伙伴可以参考一下:
最近,看到一个有趣的题目:不使用累计乘法的基础上,通过移位运算(<<)实现2的n次方的计算
起初,我看到这道题是一脸懵逼,后来查阅资料后发现就是一道简单的移位运算题。好啦话不多说,放图:
#include<stdio.h>
int main(void)
{
int num;
int p;
while (scanf("%d", &num)) {
p = 1 << num;
printf("%d\n",p);
}
return 0;
}
其中移位运算包括左移和右移
左移运算:x<<k:x左移k位,并在右端补零
右移运算(逻辑):x>>k:x右移k位,并在左端补零
右移运算(算术):a.x>>k:x右移k位,并在左端补零(注意:此时符号位应为0,即正)
b.x>>k:x右移k位,并在左端补1(注意:此时符号应为1,即负)
以上就是“c语言编程:求解2的n次方!”的详细内容,想要了解更多C语言教程欢迎持续关注编程学习网
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://www.phpxs.com/post/10328/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取