C語(yǔ)言求2的n次方多種方法總結(jié)
方法一:循環(huán)法
不斷地乘以2,循環(huán)i次
int main() { int a, i, c =1; //注意要初始化為1而不是0 scanf("%d", &i); for (a = 1; a <= i; a++) { c = c * 2; } printf("%d", c); return 0; }
方法二:左移法
一個(gè)數(shù)它左移,左移一位的話(huà)就相當(dāng)于是乘二,左移兩位的話(huà)就相當(dāng)于是乘四,左移三位的話(huà)就相當(dāng)于是乘八,那就是相當(dāng)于是。所以一位的話(huà)相當(dāng)于是乘二的一次方,所以?xún)晌坏脑?huà)就是相當(dāng)于乘二的二次方。
#include <stdio.h> int main() { int n = 0; while (scanf("%d", &n) != EOF) { printf("%d\n", 1 << n); } return 0; }
方法三:遞歸法
2^n=2*2^(n-1)=2*2*2^(n-2)……以此類(lèi)推
int pow(int n) { if (n <= 0) return 1; else return 2 * pow(n-1 ); } int main() { int n = 1; scanf("%d",&n); int ret = pow(n); printf("%d", ret); return 0; }
總結(jié)
到此這篇關(guān)于C語(yǔ)言求2的n次方多種方法總結(jié)的文章就介紹到這了,更多相關(guān)C語(yǔ)言求2的n次方內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++?TCP網(wǎng)絡(luò)編程詳細(xì)講解
TCP/IP是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議,它會(huì)保證數(shù)據(jù)不丟包、不亂序。TCP全名是Transmission?Control?Protocol,它是位于網(wǎng)絡(luò)OSI模型中的第四層2022-09-09C語(yǔ)言實(shí)現(xiàn)密碼本小項(xiàng)目
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)密碼本小項(xiàng)目,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02Qt進(jìn)程和線(xiàn)程QProcess和QThread的使用
本文主要介紹了Qt進(jìn)程和線(xiàn)程QProcess和QThread的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06C++多態(tài)特性之派生與虛函數(shù)與模板詳細(xì)介紹
這篇文章主要介紹了C++多態(tài)的特性派生與虛函數(shù)與模板,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-09-09詳解C++中的成員訪問(wèn)運(yùn)算符和指針到成員運(yùn)算符
這篇文章主要介紹了C++中的成員訪問(wèn)運(yùn)算符和指針到成員運(yùn)算符,即. 和 ->以及.* 和 ->*的使用方法,需要的朋友可以參考下2016-01-01C++獲取類(lèi)的成員函數(shù)的函數(shù)指針詳解及實(shí)例代碼
這篇文章主要介紹了C++獲取類(lèi)的成員函數(shù)的函數(shù)指針詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2017-02-02