第二章 程序的靈魂-算法

數(shù)據(jù)的描述+操作的描述(data?structure + algorithm)

教材說還得有? 程序設(shè)計方法+語言工具和環(huán)境?

要學(xué)基本算法得看看數(shù)據(jù)結(jié)構(gòu)了汤徽,學(xué)完這個我就開始玩數(shù)據(jù)結(jié)構(gòu)域算法那本書被丧。

2.1算法的概念

算術(shù)的和解決問題的。都需要數(shù)據(jù)模型的抽取和構(gòu)建汗唱。

2.2 簡單算法舉例

求1*2*3*4*5不看書寫一寫

三種,直接計算、循環(huán)未荒、遞歸

#include

#include

int Mul(int n)

{

??? if(n==1)

??????? return 1;

??? else

??????? return n*Mul(n-1);

}

// The result of1*2*3*4*5

int main()

{

??? int result=1;

??? int i=1;

??? int mul_end=5;

??? //F1

??? printf("F1----The result is? %d \n",1*2*3*4*5);

??? //F2

??? for(i=1;i<=5;i++)

??? {

??????? result=result*i;

??? }

??? printf("F2----The result is? %d \n",result);

??? //F3

??? result=Mul(mul_end);

??? printf("F3----The result is? %d \n",result);

??? return 0;

}

求50個學(xué)生成績中大于80分的成績輸出

#include

#include

#define MAXSIZE 50

int main()

{

??? //初始化學(xué)生成績

??? int student_score[MAXSIZE];

??? int i=0;

??? int count=0;

??? for(i=0; i

??? {

??????? student_score[i]=rand() % 100;

??? }

??? for(i=0; i

??? {

???????printf("%d\t",student_score[i]);

??????? if((i+1)%10==0)

??????? {

??????????? printf("\n");

??????? }

??? }

???printf("---------------------------------\n");

??? for(i=0; i

??? {

??????? if(student_score[i]>=80)

??????? {

???????????printf("%d\t",student_score[i]);

??????????? count++;

??????????? if((count)%5==0)

??????????? {

??????????????? printf("\n");

??????????? }

??????? }

??? }

??? return 0;

}

判斷2000-2500中的閏年

Tips:4年一閏,百年不閏及志,400再閏

#include

#include

//判斷2000-2500的年哪些是閏年----閏年能被4整除片排、不能被100整除;能被100和能被400整除

int main()

{

??? int year=2000;

??? for(year=2000; year<=2500; year++)

??? {

???????if(((year%4==0)&&(year%100!=0))||((year%100==0)&&(year%400==0)))

??????? {

?? ?????????printf("%d\n",year);

??????? }

??? }

??? return 0;

}

求1-1/2+1/3-1/4+...-1/99+1/100 ? ?

#include

#include

int main()

{

??? int sum=1;

??? int i=1;

??? int sigh=1;

??? int temp;

??? for(i=1; i<=100; i++)

??? {

??????? temp=sigh*(1/i);

??????? sum=sum+temp;

??????? sigh=(-1)*sigh;

??? }


??? printf("The result is %d\n",sum);

??? return 0;

}

對于一個大于或者等于3的正整數(shù)速侈,判斷它是不是一個素數(shù)(只能被1和自己整除的數(shù))

#include

#include

#include

int main()

{

??? int n;

??? int i=2;

??? int m;

??? scanf("%d",&n);

??? if(n<3)

??? {

??????? printf("Please input a numberwhich is above three!\n");

??? }

??? else

??? {

??????? m=sqrt(n);

??????? for(i=2; i<=m; i++)

??????? {

??????????? if(n%i==0)

??????????? {

??????????????? printf("不是素數(shù)!\n");

??????????????? break;

??????????? }

??? ????}

??????? if(i>m)

??????? {

??????????? printf("是素數(shù)!\n");

??????? }

??? }


??? return 0;

}

2.3 算法的特性

有窮性率寡,就是的能完事

確定性,每步得確定锌畸,不能天馬行空

0或多個輸入

1或多個輸出

有效性

必須會設(shè)計算法勇劣,并根據(jù)算法寫出程序,基本功啊

2.4 怎樣表示一個算法

2.4.1 自然語言,估計今年能用來吹牛用比默,一般不用幻捏,不會實現(xiàn)只會說的人,呵了個呵命咐。

2.4.2 流程圖

本來想查查用啥工具畫流程圖好(傳統(tǒng)的肯定是visio了)篡九,不過還有意外收獲,word2010的smartart好多有意思的圖形啊醋奠。


偽代碼頁可以表示流程圖

計算機語言表示頁就是代碼了榛臼,不會寫的時候可以先看懂代碼,學(xué)會讀代碼窜司,考研的題目里很大一部分就是這個沛善。

2.5 結(jié)構(gòu)化程序設(shè)計方法

自頂向下

逐步細化,不能一口吃個胖子

模塊化設(shè)計

結(jié)構(gòu)化編碼

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末塞祈,一起剝皮案震驚了整個濱河市金刁,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌议薪,老刑警劉巖尤蛮,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異斯议,居然都是意外死亡产捞,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人积锅,你說我怎么就攤上這事宣羊。” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我衷笋,道長,這世上最難降的妖魔是什么矩屁? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任辟宗,我火速辦了婚禮,結(jié)果婚禮上吝秕,老公的妹妹穿的比我還像新娘泊脐。我一直安慰自己,他們只是感情好烁峭,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布容客。 她就那樣靜靜地躺著秕铛,像睡著了一般。 火紅的嫁衣襯著肌膚如雪缩挑。 梳的紋絲不亂的頭發(fā)上但两,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音供置,去河邊找鬼谨湘。 笑死,一個胖子當著我的面吹牛芥丧,可吹牛的內(nèi)容都是我干的紧阔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼续担,長吁一口氣:“原來是場噩夢啊……” “哼擅耽!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起赤拒,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤秫筏,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后挎挖,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡航夺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年蕉朵,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片阳掐。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡始衅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出缭保,到底是詐尸還是另有隱情汛闸,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布艺骂,位于F島的核電站诸老,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏钳恕。R本人自食惡果不足惜别伏,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望忧额。 院中可真熱鬧厘肮,春花似錦、人聲如沸睦番。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至巩检,卻和暖如春恬涧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背碴巾。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工溯捆, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人厦瓢。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓提揍,卻偏偏與公主長得像,于是被迫代替她去往敵國和親煮仇。 傳聞我的和親對象是個殘疾皇子劳跃,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容