C语言:根据移位符计算2的n次方
生活随笔
收集整理的這篇文章主要介紹了
C语言:根据移位符计算2的n次方
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在C語言中,計算次方我們擁有專門的計算函數,即“pow”;其使用格式如下所示:(注意指數運算需要頭文件<math.h>
pow(x,y);意為x的y次方。值得注意的是,pow的返回值是double類型,故在打印過程中需要注意格式。
eg:
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<math.h> int main() {int a = 0;scanf("%d", &a);printf("%lf\n", pow(2, a));system("pause");return 0; }便可得到2^a的值。
? ? ? ? 不過在二進制中,關于2^0的表示是00000001,2^1的表示是00000010,2^2的表示是00000100……
? ? ? ? 我們可以得到在二進制中對2進行次方運算本質上就是對1位不斷進行左移。即2的0次方作為1位的最左邊起始位,2的1次方是對1位左移1位,2的2次方是對2位左移兩位……
? ? ? ? ? 所以在C語言中,我們可以通過移位符來進行對2的次方的運算。
代碼展示如下:
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<math.h> int main() {int n = 0;scanf("%d", &n);printf("%d\n", 2 << (n - 1));system("pause");return 0; }? ? ? ? 注意左移的為n-1位,這是由于2本身在二進制中就位于從右往左的第二位,即2=2^1。
總結
以上是生活随笔為你收集整理的C语言:根据移位符计算2的n次方的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在latex中引用文献
- 下一篇: js拆字分图程序 _拆分古籍_梦溪笔谈方