信計的計算機心路歷程05 18 11 25

2021-09-01 20:45:00 字數 1501 閱讀 2431

最近寫了布置的作業實驗一二三

實驗一二比較簡單

實驗三迷宮問題

問題就大了

#include#include#define maxsize 20

typedef struct

box;

typedef struct

sqstack;

void initstack(sqstack *&s) //初始化棧

void destroystack(sqstack *&s) //銷毀棧

bool stackempty(sqstack *s) //判斷棧是否為空

bool push(sqstack *&s,box e) //進棧

bool pop(sqstack *&s,box &e) //出棧

bool gettop(sqstack *s,box &e) //取棧頂元素

編寫主程式的時候,起初毫無思路,根據課本上的思路,方才寫出了主程式

#include "sqstack.cpp"

bool mazepath(int x0,int y0,int xn,int yn)

, ,,,

,,,,

,};

sqstack *st;

box path[maxsize],e;

int k=0,l;

e.i=x0;e.j=y0;maze[1][1]=-1;

initstack(st);

push(st,e);

while(stackempty(st)==0)

for(l=k-1;l>=0;l--)

printf("(%d,%d) ",path[l].i,path[l].j);

printf("\n");

destroystack(st);

return true;

} if (maze[e.i][e.j+1]==0)

else if (maze[e.i+1][e.j]==0)

else if (maze[e.i][e.j-1]==0)

else if (maze[e.i-1][e.j]==0)

else

pop(st,e);

} destroystack(st);

return false;

}void main()

出現了幾個問題吧,有大有小,有失誤有不會的,直接貼我的實驗總結:

此時執行程式無結果,經過除錯**,發現程式根本就沒有執行,原因出在了沒有將入口元素e0入棧,棧一執行就為空,直接return了。後續依然有很多小問題,解決了很久。包括值加了兩次,回溯賦值等等一系列的問題,其實都是不應該發生的,都是小問題,但是出現了就會耽誤很久的時間,通過每一步printf迷宮陣列,取每一步運算的位置等方法,最終還是解決了。

迷宮陣列是資料結構以來第乙個比較大的問題,最終還是解決了,也是學習道路上的一次挑戰吧

信計的計算機心路歷程01 18 9 16

開頭記個流水賬 大學學了信計專業,大一發現喜歡計算機,可惜為時已晚 大一學了cppsource 還學了點matlab的皮毛 現在大二開資料結構 爭取能記錄一下學習的歷程 資料結構是李春葆第五版 今天看第一章的課後習題12 題目如下 起初是推算了第一步 第一步的複雜度為n 第二步為兩個n 2 以此類推...

開博,記錄下學習計算機的心路歷程

今天讀了leezy 2000的 每個程式設計師都應該給自己寫本書 一文,回想起大學以來學習計算機的經歷,有感而發。計算機是乙個知識繁多並且瑣碎的專業,熟練的專業技能必然是長期的學習和積累得來的。我接觸計算機專業知識的時間已經三年,接觸了許多專業知識,學到了很多,在學到的這些知識裡,當時感覺牢記於心的...

我的計算機考研歷程

本科雙飛一本專業,電腦科學與技術。報考211學校智慧型資訊處理專業,20考研成功上岸,發篇文章記錄一下過程。2019年6月15日正式準備考研,那時只是大概確定要考那幾個學校,自己選了多個層次的大學 985,211和計算機強勢可比211的學校三類 為什麼一開始要選三個層次呢?因為你不知道到後期自己能複...