春季学期第十一周作业
生活随笔
收集整理的這篇文章主要介紹了
春季学期第十一周作业
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本周作業頭
| 這個作業要求在哪里 | https://edu.cnblogs.com/campus/zswxy/computer-scienceclass4-2018/homework/3203 |
| 我在這個課程的目標是 | 學習遞歸函數 |
| 這個作業在哪個具體方面幫助我實現目標 | 能夠靈活的運用遞歸函數 |
| 參考文獻 | C語言程序設計II |
基礎作業
7-1 漢諾塔問題* (10 分)
漢諾塔是一個源于印度古老傳說的益智玩具。據說大梵天創造世界的時候做了三根金剛石柱子,在一根柱子上從下往上按照大小順序摞著64片黃金圓盤,大梵天命令僧侶把圓盤移到另一根柱子上,并且規定:在小圓盤上不能放大圓盤,每次只能移動一個圓盤。當所有圓盤都移到另一根柱子上時,世界就會毀滅。
請編寫程序,輸入漢諾塔圓片的數量,輸出移動漢諾塔的步驟。
輸入格式
圓盤數 起始柱 目的柱 過度柱輸出格式
移動漢諾塔的步驟 每行顯示一步操作,具體格式為: 盤片號: 起始柱 -> 目的柱 其中盤片號從 1 開始由小到大順序編號。輸入樣例
3 a c b輸出樣例
1: a -> c 2: a -> b 1: c -> b 3: a -> c 1: b -> a 2: b -> c 1: a -> c1、實驗代碼:
#include<stdio.h> void hannota(int n,char a,char c,char b); int main(void) {int n;char a,c,b;scanf("%d %c %c %c",&n,&a,&c,&b);hannota(n,a,c,b);return 0; } void hannota(int n,char a,char c,char b){if(n==1)printf("1: %c -> %c\n",a,c);else{hannota(n-1,a,b,c);printf("%d: %c -> %c\n",n,a,c);hannota(n-1,b,c,a);}}2、流程圖:
3、本題中出現的錯誤或遇到的問題:剛開始看題沒看懂,后來問室友怎么寫。
4、運行截圖:
學習進度:
| 四周/3/16~3/24 | 12 | 150 | 一維數組與二維數組的應用 |
| 五周/3/24~3/29 | 7 | 150 | 字符串的儲存運算都可以用一維數組來實現 |
| 六周/3/31~4/5 | 10 | 220 | 指針函數的定義與運用,指針,數組和地址的關系 |
| 七周/4/6~4/12 | 8 | 250 | 字符串和指針的運用 |
| 八周/4/13~4/19 | 8 | 250 | 分配動態內存 |
| 九周/4/20~4/26 | 10 | 200 | 結構的運用 |
| 十一周/5/5~5/10 | 10 | 250 | 遞歸函數的運用 |
轉載于:https://www.cnblogs.com/caoe666/p/10846481.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的春季学期第十一周作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: new Date(2019-05-10
- 下一篇: Web的诞生和网络基础 | 读《图解HT