1. 數據結構中的演算法如何用c語言描述請各位大神指點
數據結構中的演算法,大部分都是用偽代碼實現的,比如你這里的代碼,它既包含了c語言的一些代碼,同時也有c++的部分,這里只是想提供這種思路,該怎麼做,但是當你把它想用完整的程序運行起來時,還是需要做一定工作的。
以你的代碼為例。
因為在書的前面已經定義了幾種操作,ListLength(L)表示返回表L中的元素個數,GetElem(L,i,&e)表示用e返回L中第i個數據元素的個數,LocateElem(L, e , equal ) ) ListInsert ( L , i , e ) 等等,所以在這里就直接用了。
當用程序實現時,你要先將這幾種功能實現,返回個數,得到第i個數據元素,等等,數據結構的話是教你一種程序設計的思想,具體細節自己實現。
2. c語言問題: 什麼是演算法試從日常生活中找3個例子,描述它們的演算法。 詳細點,謝謝!
c語言中的演算法是指:一系列解決問題的清晰指令,用系統的方法描述解決問題的策略機制。也就是說,能夠對一定規范的輸入,在有限時間內獲得所要求的輸出。通俗說就是解決問題的方法和步驟。
描述演算法的例子:
問題:從上海去到北京。
其中的演算法:做汽車、做飛機、或者徒步。
問題:喝茶。
其中的演算法:先找到茶葉,再燒一壺開水,然後將茶葉放到杯子里,將開水倒入杯中,等茶葉泡好。
問題:開車。
其中的演算法:首先要打開車門,駕駛員坐好,插上車鑰匙,發動汽車。
3. C語言課程設計里的 主要演算法描述 和 程序測試過程 該怎麼搞定呢
代碼比較多的時候,演算法不一定要描述每一步的操作.
將整個程序分為幾個功能塊(作為主要演算法),
再對每個功能塊稍微詳細的寫一下就可以了
程序測試過程就是你運行程序時,把程序輸入以及輸出的信息都給出來,如果當時有問題,這個問題是怎麼解決的也大概說一下
4. c語言程序設計的演算法用偽代碼描述過程是怎樣的
偽代碼(Pseudocode)是一種演算法描述語言。使用偽代碼的目的是為了使被描述的演算法可以容易地以任何一種編程語言(Pascal,C,Java,etc)實現。因此,偽代碼必須結構清晰、代碼簡單、可讀性好,並且類似自然語言。 介於自然語言與編程語言之間。
它以編程語言的書寫形式指明演算法的職能。相比於程序語言(例如Java, C++,C, Dephi 等等)它更類似自然語言。它是半形式化、不標準的語言。我們可以將整個演算法運行過程的結構用接近自然語言的形式(這里,你可以使用任何一種你熟悉的文字,中文,英文 等等,關鍵是你把你程序的意思表達出來)描述出來. 使用偽代碼, 可以幫助我們更好的表述演算法, 不用拘泥於具體的實現.
人們在用不同的編程語言實現同一個演算法時意識到,他們的實現(注意:這里是實現,不是功能)很不同。尤其是對於那些熟練於不同編程語言的程序員要理解一個(用其他編程語言編寫的程序的)功能時可能很難,因為程序語言的形式限制了程序員對程序關鍵部分的理解。這樣偽代碼就應運而生了。
當考慮演算法功能(而不是其語言實現)時,偽代碼常常得到應用。計算機科學在教學中通常使用虛擬碼,以使得所有的程序員都能理解。
例如,類Pascal語言的偽代碼的語法規則是: 在偽代碼中,每一條指令佔一行(else if,例外)。指令後不跟任何符號(Pascal和C中語句要以分號結尾)。書寫上的「縮進」表示程序中的分支程序結構。這種縮進風格也適用於if- then-else語句。用縮進取代傳統Pascal中的begin和end語句來表示程序的塊結構可以大大提高代碼的清晰性;同一模塊的語句有相同的縮進量,次一級模塊的語句相對與其父級模塊的語句縮進。
偽代碼只是像流程圖一樣用在程序設計的初期,幫助寫出程序流程。簡單的程序一般都不用寫流程、寫思路,但是復雜的代碼,最好還是把流程寫下來,總體上去考慮整個功能如何實現。寫完以後不僅可以用來作為以後測試,維護的基礎,還可用來與他人交流。但是,如果把全部的東西寫下來必定可能會讓費很多時間,那麼這個時候可以採用偽代碼方式。比如:
5. 請寫下以下c語言的演算法描述
#include "stdio.h"
int myfun(int (*p)[4])
{
int i,j,k;
for(i=0;i<4;p[i][3-i]=p[i][i++]=1); //將二條對角線的元素全部置為1
for(k=i=0;i<4;i++) //求所有元素的和
for(j=0;j<4;k+=p[i][j++]);
return k-8; //返回值為除8個對角線(值均為1)以外所有元素的和
}
void main(void){
int a[4][4],i,j,k,t=2; //t=2,結合下面的while循環,循環2次
while(t--)
{
printf("請輸入16個數值作為4*4的數組\n");
for(i=0;i<4;i++) //輸入4*4數組
for(j=0;j<4;scanf("%d",&a[i][j++]));
k=myfun(a); //調用函數
for(i=0;i<4;i++){ //輸出調用後的數組
for(j=0;j<4;printf("%3d",a[i][j++]));
printf("\n");
}
printf("其餘元素之和為:%d\n",k); //輸出返回值,除二條對角線以外各元素的和
}
}
6. C語言的演算法描述是什麼
1、演算法描述就是用偽代碼或其他文字來敘述編程思想,包含內部邏輯,數據流處理等。
2、演算法(Algorithm)是指完成一個任務所需要的具體步驟和方法。也就是說給定初始狀態或輸入數據,能夠得出所要求或期望的終止狀態或輸出數據。演算法常常含有重復的步驟和一些比較或邏輯判斷。不同的演算法可能用不同的時間、空間或效率來完成同樣的任務。一個演算法的優劣可以用空間復雜度與時間復雜度來衡量。
7. c語言演算法的四種描述方法的特點
列表:普通的數組形式、鏈表形式隊列:先進先出,刪除在隊首,添加在隊尾棧:後進先出,添加和刪除都在棧頂實現線性的數據結構的主要特點是首無前驅,尾無後繼,中間的元素有唯一的前驅和後繼
8. 幫寫個C語言源程序的演算法描述
如果說用語言來描述;可以描述出許多場景來;就像你的求10名同學三門功課的平均成績,難道不能說求10個小朋友三個游戲項目的平均得分嗎?接下來回歸到演算法的本質,我用圖來幫你理解下上屬函數的功能。
這是函數one()的功能:
如上圖所示:該函數實際是在求所有藍色坐標元素值的累加。
希望能幫到你!
9. C語言編程程序的演算法描述
最後的矩陣會成為這樣 輸出的是圓圈所在的位置數之和。
及 a[0][1]+a[0][2]+a[1][0]+a[1][3]+a[2][0]+a[2][3]+a[3][1]+a[3][3];
希望可以幫到你
10. C語言的演算法描述是什麼
有很多種形式,比如用偽代碼來敘述你的編程思想.
主要包含內部邏輯,數據流處理.