日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第十一周编程总结

發(fā)布時間:2025/3/21 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第十一周编程总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
這個作業(yè)屬于哪個課程C語言程序設(shè)計II
這個作業(yè)要求在哪https://edu.cnblogs.com/campus/zswxy/MS/homework/3206
我在這個課程的目標(biāo)是能夠使用遞歸函數(shù)進(jìn)行編程;掌握宏的基本用法;掌握編譯預(yù)處理的概念
這個作業(yè)在哪個具體方面幫助我實現(xiàn)目標(biāo)通過PTA作業(yè)實踐編程學(xué)習(xí)
參考文獻(xiàn)C語言程序設(shè)計

選擇題

編程題
7-1 漢諾塔問題* (10 分)
漢諾塔是一個源于印度古老傳說的益智玩具。據(jù)說大梵天創(chuàng)造世界的時候做了三根金剛石柱子,在一根柱子上從下往上按照大小順序摞著64片黃金圓盤,大梵天命令僧侶把圓盤移到另一根柱子上,并且規(guī)定:在小圓盤上不能放大圓盤,每次只能移動一個圓盤。當(dāng)所有圓盤都移到另一根柱子上時,世界就會毀滅。

請編寫程序,輸入漢諾塔圓片的數(shù)量,輸出移動漢諾塔的步驟。

輸入格式
圓盤數(shù) 起始柱 目的柱 過度柱
輸出格式
移動漢諾塔的步驟
每行顯示一步操作,具體格式為:
盤片號: 起始柱 -> 目的柱
其中盤片號從 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 -> c
1.代碼

#include<stdio.h> void hanio(int a,char w,char n,char m); int main(void) {int a;char k,n,m;scanf("%d\n",&a);scanf("%c %c %c",&k,&n,&m);hanio(a,k,n,m);return 0; } void hanio(int a,char k,char n,char m) {if(a==1)printf("%d: %c -> %c\n",a,k,n);else{hanio(a-1,k,m,n);printf("%d: %c -> %c\n",a,k,n);hanio(a-1,m,n,k);} }

2.設(shè)計思路

3.本題遇到的問題及解決辦法
問題:模仿書上245頁的漢諾塔代碼,但代碼運行時出現(xiàn)答案錯誤
解決辦法:重新檢查代碼,發(fā)現(xiàn)自己給定義的變量多加了‘ ’符號,改正后答案正確

4.運行結(jié)果

預(yù)習(xí)題
請大家查閱資料,思考如下問題:
請舉實例解釋以下幾個概念:數(shù)組指針,指針數(shù)組,指針函數(shù),函數(shù)指針,二級指針,單向鏈表。(無實例不給分)

請用自己的理解回答。如果有引用他人的文字,請一定要標(biāo)出出處(使用Markdown的鏈接方式)。

1.數(shù)組指針
首先“數(shù)組指針”本質(zhì)是指針,是指向一維數(shù)組的指針,定義方法,如:int (p)[n];()的優(yōu)先級更高,表示一個名為p的指針,指向一個整型的、長度為n的數(shù)組。如果要把一個二維數(shù)組賦給這樣的指針,可以這樣,如:int b[2][4]; int (p)[4]; (因為要將二維數(shù)組b賦給p,而二維數(shù)組b的有2行,每一行的長度是4,所以數(shù)組指針p的長度定為4)定義完之后賦值方法為 p=b; (將數(shù)組b的首地址b[0]或者b[0][0]賦給p),此時p指向b[0][0],若執(zhí)行p++; 則p指向b[1][0]。

2.指針數(shù)組
指針數(shù)組的本質(zhì)是數(shù)組,這個數(shù)組的元素全都是指針。定義方式如:int p[n]; p是數(shù)組名,int是數(shù)組的類型,n是數(shù)組長度,則p[0]、p[1]、p[2]等都表示這個數(shù)組的一個指針,p++; 表示p數(shù)組指向下一個數(shù)組元素。如果a是個一維數(shù)組,要將a首地址賦給p,則p=a是錯誤的方式,可以寫成p=a; 此時p表示指針數(shù)組第一個元素的值,a的首地址的值。如果要把二維數(shù)組賦給一個指針數(shù)組,則在定義之后如int c[3][5]; int p[3]; for(i=0;i<3;i++) p[i]=c[i]; 二維指針數(shù)組的各個元素的表示方法:((p+i))和**(p+i)表示第‘i+1’行的第一個元素,(p[i]+j)、((p+i)+j)、((p+i))[j]和p[i][j]都表示第i行的第j個元素。

3.指針函數(shù)
指針函數(shù)本質(zhì)是函數(shù),它的返回值是個指針。它的聲明形式:類型名 函數(shù)名(參數(shù)表),如,int fact(cahr c,char op);會返回一個類型為int的指針(地址值),而在主函數(shù)中用來接收該返回值的也必須是相同類型的指針變量。
4.函數(shù)指針
指向函數(shù)的指針包含了函數(shù)的地址,可以通過它來調(diào)用函數(shù)。聲明格式如下:

類型說明符 (*函數(shù)名)(參數(shù))

其實這里不能稱為函數(shù)名,應(yīng)該叫做指針的變量名。這個特殊的指針指向一個返回整型值的函數(shù)。指針的聲明筆削和它指向函數(shù)的聲明保持一致。

指針名和指針運算符外面的括號改變了默認(rèn)的運算符優(yōu)先級。如果沒有圓括號,就變成了一個返回整型指針的函數(shù)的原型聲明。
5.二級指針:指向指針的指針
int c=2,d=3; int *pc=&c;

pc是指針變量的存儲內(nèi)容,也就是c的地址

*pc就是對指針的解引用,取出這個c這個地址里面的值

6.單向鏈表:單向鏈表是鏈表的一種,其特點是鏈表的鏈接方向是單向的,對鏈表的訪問要通過順序讀取從頭部開始。鏈表是使用指針進(jìn)行構(gòu)造的列表,并且是由一個個結(jié)點組裝起來的,因此又稱為結(jié)點列表。其中每個結(jié)點都有指針成員變量指向列表中的下一個結(jié)點,head指針指向第一個結(jié)點稱為表頭,而終止于最后一個指向nuLL的指針。

學(xué)習(xí)感悟
本周學(xué)習(xí)了遞歸函數(shù)并用其進(jìn)行編程;學(xué)習(xí)了宏的基本用法;理解編譯預(yù)處理的概念。以前總是見到使用宏的情況,但是沒去正式了解,這次真正知道了宏的概念,還有編譯預(yù)處理也經(jīng)常聽到但沒沒去查過,這周也知道了,真正感覺到對這門課的知識越學(xué)越深了,也越來越難了。

結(jié)對編程感想
本周作業(yè)太難了,和小伙伴只討論了前面的題目,后面的只能啞口無言,看不懂,只能借看大佬的瞎扯幾句話,我們還需要加把勁。

學(xué)習(xí)進(jìn)度條

轉(zhuǎn)載于:https://www.cnblogs.com/ZJ999999/p/10846933.html

總結(jié)

以上是生活随笔為你收集整理的第十一周编程总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。