實驗內容
題目1:將非負十進位制整數n轉換成b進製。(其中b=2~16)
題目2:任何乙個正整數都可以用2的冪次方表示。例如:
137=27+23+2^0
同時約定冪次方用括號來表示,即ab 可表示為a(b)。
由此可知,137可表示為:
2(7)+2(3)+2(0)
進一步:7= 22+2+20 (21用2表示)
3=2+2^0
所以最後137可表示為:
2(2(2)+2+2(0))+2(2+2(0))+2(0)
又如:1315=2^10 +2^8 +2^5 +2+2^0
所以1315最後可表示為:
2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)
輸入:正整數(n≤20000)
輸出:符合約定的n的0,2表示(在表示中不能有空格)
輸入格式 input format
乙個正整數
輸出格式 output format
符合約定的n的0,2表示(在表示中不能有空格)
樣例輸入 sample input
73樣例輸出 sample output
2(2(2)+2)+2(2+2(0))+2(0)
遞迴模型
遞迴棧題目一:
4. **實現
1.題目一:
(1)遞迴實現:
#include #define n 100
char a[n]=;
int i=0;
void changenum(int n,int b)
else
else }}
int main(void)
;static int i=0;
void changenum(int n,int b)
else
n=n/b; }}
int main(void)
printf("\n");
return 0;
}
2.題目二:
遞迴實現
#include using namespace std;
/*//n為運算元,r為遞迴深度
void fun(int n, int r)
測試及執行結果
題目一:
題目二:
經驗總結
經過這次的程式設計,尤其是題目2,讓我更加深刻地理解了遞迴的巧妙之處:化繁為簡。讓問題簡單化,即先設計出一種解決方式,然後思考這種解決方式是否對所有情況通用,如果通用則用遞迴,那麼問題就變得十分簡單。雖然剛開始接觸遞迴的時候,總是想不通為什麼要這樣寫,但是慢慢地理解了遞迴,現在感覺遞迴不是很難了。
2 C 程式設計學習 Windows Forms
2.c 程式設計學習 windows forms windows form 是 microsoft windows 應用程式開發的新平台,以 net framework 為基礎。這種架構提供清晰 物件導向且可延伸的類別集,讓您能夠開發各種 windows 應用程式。乙個單獨的應用程式可以同時包括這兩...
2 C語言位操作
常用位操作 在這裡插入描述 位異或 兩位都相等,結果為0,不相等則為1 左移位 將乙個運算元的各二進位制全部左移若干位,左邊移除出去的二進位制位丟棄,右邊的二進位制位補0。每進行一次左移位操作,得到的結果是原來運算元的一倍 x n x 2 n 位操作與暫存器 暫存器的操作 1 暫存器特定位的清零用 ...
C語言筆錄 2 C 語言中 static
c 語言中 static 的作用 1.先來介紹它的第一條也是最重要的一條 隱藏。當我們同時編譯多個檔案時,所有未加 static 字首的全域性變數和函式都具有全域性可見性。為理解這句話,我舉例來說明。我們要同時編譯兩個原始檔,乙個是 a.c,另乙個是 main.c。下面是 main.c 的內容 下面...