性无码一区二区三区在线观看,少妇被爽到高潮在线观看,午夜精品一区二区三区,无码中文字幕人妻在线一区二区三区,无码精品国产一区二区三区免费

  • 回復(fù)
  • 收藏
  • 點贊
  • 分享
  • 發(fā)新帖

【獲得20元現(xiàn)金紅包】單片機學(xué)習(xí)之C語言常用算法

    今天開始著手學(xué)習(xí)C語言常用算法.

    常規(guī)單片機寄存器的配置,基本已經(jīng)掌握,現(xiàn)在感覺自己的技術(shù)停滯了,主要卡在單片機編程中常見的算法類程序,不知道從何下手,這一帖重點學(xué)習(xí)C語言算法類的編程.

全部回復(fù)(117)
正序查看
倒序查看
2016-08-31 16:32

    使用的編譯軟件為大家常用的VC++6.0.

    書籍兩本:

第一本是經(jīng)典教材,C primer Plus,第五版

第二本書是C語言經(jīng)典編程282例



0
回復(fù)
2016-08-31 16:44
@hello-no1
  使用的編譯軟件為大家常用的VC++6.0.  書籍兩本:第一本是經(jīng)典教材,CprimerPlus,第五版第二本書是C語言經(jīng)典編程282例[圖片][圖片]

    本人斷斷續(xù)續(xù)學(xué)習(xí)C語言也有3,4年了,市面上常見的經(jīng)典的C語言書籍,幾乎都有,雖然常用的語法很了解,但總感覺沒有真正理解C語言.

    本人一直從事硬件開發(fā),工作中基本上都是和二極管,三極管,變壓器,運放,電容這些常見的元器件打交道,幾乎用不到單片機這一塊,可是單片機一直沒有真正的突破,心里上總感覺有一道坎沒有跨過去.今年年初,我決心克服自己的惰性以及畏懼,拿下單片機這一塊,打通心里上的這道坎.

    每天處理好手頭上大量的工作后,我便埋頭苦學(xué),雖然很累,但感覺很充實.

    想起鐘道隆將軍的那句名言:何以解憂,唯有學(xué)習(xí).

    每天精進是我的追求,和志同道合者共勉.

    

0
回復(fù)
2016-08-31 16:47
@hello-no1
  本人斷斷續(xù)續(xù)學(xué)習(xí)C語言也有3,4年了,市面上常見的經(jīng)典的C語言書籍,幾乎都有,雖然常用的語法很了解,但總感覺沒有真正理解C語言.  本人一直從事硬件開發(fā),工作中基本上都是和二極管,三極管,變壓器,運放,電容這些常見的元器件打交道,幾乎用不到單片機這一塊,可是單片機一直沒有真正的突破,心里上總感覺有一道坎沒有跨過去.今年年初,我決心克服自己的惰性以及畏懼,拿下單片機這一塊,打通心里上的這道坎.  每天處理好手頭上大量的工作后,我便埋頭苦學(xué),雖然很累,但感覺很充實.  想起鐘道隆將軍的那句名言:何以解憂,唯有學(xué)習(xí).  每天精進是我的追求,和志同道合者共勉.    

    今天更新第一帖,經(jīng)典的hello world程序.

源代碼

1_hello_world.rar

0
回復(fù)
a20105319
LV.2
5
2016-09-01 15:47
@hello-no1
  今天更新第一帖,經(jīng)典的helloworld程序.源代碼1_hello_world.rar
跟著師長學(xué)習(xí)一下 只怪讀書的時候不認(rèn)真啊
0
回復(fù)
2016-09-01 17:13
@a20105319
跟著師長學(xué)習(xí)一下只怪讀書的時候不認(rèn)真啊

    今天抽時間編寫了幾個小例程.

    剛開始的幾個例程都比較簡單,用于幫助大家熟悉VC++6.0的編譯環(huán)境.

源代碼

2_two_num_add.rar

3_名言警句.rar

5_正方形周長計算.rar

6_星星組成正方形.rar

這幾個例程當(dāng)作開胃菜可也,很簡單.

0
回復(fù)
2016-09-01 17:19
@hello-no1
  今天抽時間編寫了幾個小例程.  剛開始的幾個例程都比較簡單,用于幫助大家熟悉VC++6.0的編譯環(huán)境.源代碼2_two_num_add.rar3_名言警句.rar5_正方形周長計算.rar6_星星組成正方形.rar這幾個例程當(dāng)作開胃菜可也,很簡單.

    接著編寫了一個階乘的代碼.

剛開始準(zhǔn)備搞定100以內(nèi)的數(shù)據(jù)的階乘,怎知計算至12的階乘,數(shù)據(jù)便開始溢出.

這應(yīng)該算是第一個小小的計算類的編程吧.

思路其實很簡單;

2!=2,3!=2!*3,4!=3!*4,5!=4!*5,以此類推.公式為n!=(n-1)!*n,n>=2;

編程的思路是什么,很簡單,命名一個數(shù)據(jù),該數(shù)據(jù)通過循環(huán)實現(xiàn)累加,再命名一個數(shù)據(jù)用于將前面的數(shù)據(jù)累積.

源代碼

9_求100的階乘.rar




0
回復(fù)
2016-09-01 17:21
@hello-no1
  接著編寫了一個階乘的代碼.剛開始準(zhǔn)備搞定100以內(nèi)的數(shù)據(jù)的階乘,怎知計算至12的階乘,數(shù)據(jù)便開始溢出.這應(yīng)該算是第一個小小的計算類的編程吧.思路其實很簡單;2!=2,3!=2!*3,4!=3!*4,5!=4!*5,以此類推.公式為n!=(n-1)!*n,n>=2;編程的思路是什么,很簡單,命名一個數(shù)據(jù),該數(shù)據(jù)通過循環(huán)實現(xiàn)累加,再命名一個數(shù)據(jù)用于將前面的數(shù)據(jù)累積.源代碼9_求100的階乘.rar

    一定要注意,此處我寫的100的階乘,實際上會出現(xiàn)數(shù)據(jù)溢出,而且貌似VC++6.0不支持unsigned long long型數(shù)據(jù).

    另外100的階乘應(yīng)該是非常龐大的一個數(shù)值,搞不好會死機,大家可以試一試.

0
回復(fù)
2016-09-02 15:52
@hello-no1
  一定要注意,此處我寫的100的階乘,實際上會出現(xiàn)數(shù)據(jù)溢出,而且貌似VC++6.0不支持unsignedlonglong型數(shù)據(jù).  另外100的階乘應(yīng)該是非常龐大的一個數(shù)值,搞不好會死機,大家可以試一試.

    搞定冪函數(shù)計算程序.該程序適用于實數(shù)的整數(shù)次冪計算

    思路算法很簡單,當(dāng)需要求解一個實數(shù)的整數(shù)次冪時,只需要將該實數(shù)通過循環(huán)需求的整數(shù)次即可.

    算法實現(xiàn):n^p=n循環(huán)自乘P次數(shù)即可.

源代碼

冪函數(shù).rar

0
回復(fù)
2016-09-05 16:01

    繼續(xù)更新.

今天搞定了三種常見的C語言算法問題.

第一個猴子吃桃子問題

源代碼

猴子吃桃問題.rar

算法思想其實很簡單.

就是每天的桃子個數(shù)*2+1,然后在循環(huán)累積即可.

0
回復(fù)
2016-09-05 16:05
@hello-no1
  繼續(xù)更新.今天搞定了三種常見的C語言算法問題.第一個猴子吃桃子問題源代碼猴子吃桃問題.rar算法思想其實很簡單.就是每天的桃子個數(shù)*2+1,然后在循環(huán)累積即可.

    接著是數(shù)值比較大小并按照從小到大的順序排列.

源代碼

3數(shù)值排序.rar

算法思路:比較三個數(shù)值的大小,先將兩個數(shù)值進行排序,通過比較,先將二者數(shù)值實現(xiàn)從小到大排序,以此類推.

0
回復(fù)
2016-09-05 16:08
@hello-no1
  接著是數(shù)值比較大小并按照從小到大的順序排列.源代碼3數(shù)值排序.rar算法思路:比較三個數(shù)值的大小,先將兩個數(shù)值進行排序,通過比較,先將二者數(shù)值實現(xiàn)從小到大排序,以此類推.

    接下來是買蘋果問題

源代碼

買蘋果問題.rar

思路算法:將每天的蘋果個數(shù)循環(huán)累積,當(dāng)達(dá)到某一數(shù)值,則停止循環(huán),接著求其平均值.


0
回復(fù)
2016-09-05 16:13
@hello-no1
  接下來是買蘋果問題源代碼買蘋果問題.rar思路算法:將每天的蘋果個數(shù)循環(huán)累積,當(dāng)達(dá)到某一數(shù)值,則停止循環(huán),接著求其平均值.

    這段時間一直埋頭學(xué)習(xí)C語言基礎(chǔ),慢慢發(fā)現(xiàn)計算機語言的發(fā)明真的很牛B.

    大家知道不管什么高級語言其實一般就三種結(jié)構(gòu),循序結(jié)構(gòu),循環(huán)結(jié)構(gòu),選擇結(jié)構(gòu).通過這三種結(jié)構(gòu)的自由組合,就能實現(xiàn)各種功能,不得不服.

    每天不斷的敲著代碼,模仿別人的代碼,理解別人的思路,慢慢的,對于編程的思路我也開始有一點了,至少不在像過去那樣迷茫,摸不著頭緒.每天進步一點,不斷堅持,技術(shù)上必將有重大突破.

    雖然很累,但一直努力學(xué)習(xí),埋頭苦學(xué),只管耕耘,不問收獲,和志同道合者共勉.

0
回復(fù)
2016-09-06 16:57
@hello-no1
  這段時間一直埋頭學(xué)習(xí)C語言基礎(chǔ),慢慢發(fā)現(xiàn)計算機語言的發(fā)明真的很牛B.  大家知道不管什么高級語言其實一般就三種結(jié)構(gòu),循序結(jié)構(gòu),循環(huán)結(jié)構(gòu),選擇結(jié)構(gòu).通過這三種結(jié)構(gòu)的自由組合,就能實現(xiàn)各種功能,不得不服.  每天不斷的敲著代碼,模仿別人的代碼,理解別人的思路,慢慢的,對于編程的思路我也開始有一點了,至少不在像過去那樣迷茫,摸不著頭緒.每天進步一點,不斷堅持,技術(shù)上必將有重大突破.  雖然很累,但一直努力學(xué)習(xí),埋頭苦學(xué),只管耕耘,不問收獲,和志同道合者共勉.

    繼續(xù)更新.

    第一個算法程序,求余數(shù).

源代碼

求余數(shù).rar

算法思路:通過對輸入數(shù)值取余,然后輸出其最后的兩位數(shù)值.該程序主要是為了加深對%符號的理解.

0
回復(fù)
2016-09-06 17:01
@hello-no1
  繼續(xù)更新.  第一個算法程序,求余數(shù).源代碼求余數(shù).rar算法思路:通過對輸入數(shù)值取余,然后輸出其最后的兩位數(shù)值.該程序主要是為了加深對%符號的理解.

    判斷輸入的數(shù)值是否為素數(shù),如果不是素數(shù)則將其所有的約數(shù)均打印出來.

源代碼

素數(shù)判斷.rar

算法思路:其實很簡單,只需要知道素數(shù)的概念就知道如何下手,素數(shù)是指除了1和它本身以外,不能被任何整數(shù)整除的數(shù).根據(jù)素數(shù)的概念需要排除1,然后再通過(素數(shù)%2是否等于0)來判斷.

這段代碼我糾結(jié)了大半天,不過還是搞定了.

0
回復(fù)
2016-09-06 17:04
@hello-no1
  判斷輸入的數(shù)值是否為素數(shù),如果不是素數(shù)則將其所有的約數(shù)均打印出來.源代碼素數(shù)判斷.rar算法思路:其實很簡單,只需要知道素數(shù)的概念就知道如何下手,素數(shù)是指除了1和它本身以外,不能被任何整數(shù)整除的數(shù).根據(jù)素數(shù)的概念需要排除1,然后再通過(素數(shù)%2是否等于0)來判斷.這段代碼我糾結(jié)了大半天,不過還是搞定了.

    最后一段代碼是判斷閏年的代碼,根據(jù)輸入的日期求出某月份某一天的總天數(shù).

源代碼

閏年及總天數(shù)判斷.rar

算法思路:第一個是判斷閏年的思路,if(a%4==0&&a%100!=0||a%400==0),這是判斷閏年的思路.接下來是根據(jù)閏年非閏年求取具體某一天的總天數(shù).


0
回復(fù)
2016-09-07 16:18
@hello-no1
  最后一段代碼是判斷閏年的代碼,根據(jù)輸入的日期求出某月份某一天的總天數(shù).源代碼閏年及總天數(shù)判斷.rar算法思路:第一個是判斷閏年的思路,if(a%4==0&&a%100!=0||a%400==0),這是判斷閏年的思路.接下來是根據(jù)閏年非閏年求取具體某一天的總天數(shù).

    繼續(xù)更新

搞定婚禮謊言程序

源代碼

婚禮謊言.rar

思路算法:通過條件約束來判斷誰與誰結(jié)婚,本質(zhì)是通過窮舉法實現(xiàn)邏輯判斷.

0
回復(fù)
2016-09-07 16:19
@hello-no1
  繼續(xù)更新搞定婚禮謊言程序源代碼婚禮謊言.rar思路算法:通過條件約束來判斷誰與誰結(jié)婚,本質(zhì)是通過窮舉法實現(xiàn)邏輯判斷.

    百錢買百雞問題

這是一個經(jīng)典的編程算法問題,本質(zhì)其實還是條件約束加窮舉法實現(xiàn)

源代碼

百錢買百雞.rar

0
回復(fù)
2016-09-08 15:40

    繼續(xù)更新.

    打漁曬網(wǎng)問題

源代碼

打漁曬網(wǎng)問題.rar

算法思路:漁夫連續(xù)三天打漁,接著連續(xù)兩天曬網(wǎng),5天循環(huán)一個周期.輸入一個日期,該日期%5,余數(shù)為1,2,3則表示打漁,否則表示曬網(wǎng).這就是他的核心思路.

0
回復(fù)
2016-09-08 15:47
@hello-no1
  繼續(xù)更新.  打漁曬網(wǎng)問題源代碼打漁曬網(wǎng)問題.rar算法思路:漁夫連續(xù)三天打漁,接著連續(xù)兩天曬網(wǎng),5天循環(huán)一個周期.輸入一個日期,該日期%5,余數(shù)為1,2,3則表示打漁,否則表示曬網(wǎng).這就是他的核心思路.

    三角形類型判斷程序

源代碼

三角形判斷.rar

算法思路:首先判斷三條邊兩兩相加是否大于第三邊,這是普通三角形判斷的首要條件,接著判斷三條邊之間的關(guān)系,相等或者平方相等等等.

其實就是等邊三角形,等腰三角形,直角三角形,等腰直角三角形等條件判斷而已.

0
回復(fù)
2016-09-09 15:31
@hello-no1
  三角形類型判斷程序源代碼三角形判斷.rar算法思路:首先判斷三條邊兩兩相加是否大于第三邊,這是普通三角形判斷的首要條件,接著判斷三條邊之間的關(guān)系,相等或者平方相等等等.其實就是等邊三角形,等腰三角形,直角三角形,等腰直角三角形等條件判斷而已.

    搞定直接插入排序算法,該算法其實和三個數(shù)排序的思想類似,不過直接插入排序算法需要的數(shù)據(jù)多了而已

源代碼

直接插入排序.rar

代碼界面

運行界面

0
回復(fù)
2016-09-09 15:38
@hello-no1
  搞定直接插入排序算法,該算法其實和三個數(shù)排序的思想類似,不過直接插入排序算法需要的數(shù)據(jù)多了而已源代碼直接插入排序.rar代碼界面[圖片]運行界面[圖片]

    算法思路:直接插入排序是由兩層嵌套循環(huán)組成。第一層循環(huán)用于確定待比較的數(shù)值。第二層循環(huán)將兩數(shù)值進行比較排序。

    直接插入排序是將待比較的數(shù)值與它的前一個數(shù)值進行比較,所以第一層循環(huán)是從第二個數(shù)值開始的,當(dāng)前一數(shù)值比后一數(shù)值大,則循環(huán)比較,直到找到比待比較數(shù)值小的數(shù)值則束該次循環(huán).

    個人覺得直接比較排序的速度其實是最慢的一種,后面還有各種經(jīng)典的排序方法介紹,當(dāng)然程序的理解難度也加深,我個人也有很多疑問,希望和大家共同探討.


0
回復(fù)
2016-09-09 16:35
@hello-no1
  算法思路:直接插入排序是由兩層嵌套循環(huán)組成。第一層循環(huán)用于確定待比較的數(shù)值。第二層循環(huán)將兩數(shù)值進行比較排序。    直接插入排序是將待比較的數(shù)值與它的前一個數(shù)值進行比較,所以第一層循環(huán)是從第二個數(shù)值開始的,當(dāng)前一數(shù)值比后一數(shù)值大,則循環(huán)比較,直到找到比待比較數(shù)值小的數(shù)值則束該次循環(huán).  個人覺得直接比較排序的速度其實是最慢的一種,后面還有各種經(jīng)典的排序方法介紹,當(dāng)然程序的理解難度也加深,我個人也有很多疑問,希望和大家共同探討.

    接著改進直接排序的算法,希爾排序

源代碼

希爾排序.rar

代碼界面

運行界面

0
回復(fù)
2016-09-09 16:42
@hello-no1
  接著改進直接排序的算法,希爾排序源代碼希爾排序.rar代碼界面[圖片]運行界面[圖片]

    直接排序在數(shù)據(jù)量比較小的時候可能問題還不大,但是如果有100個數(shù)字,10K數(shù)字,1000K數(shù)字的時候呢,隨著數(shù)據(jù)量的增加,直接排序的速度會成倍的下降,此時不得不考慮優(yōu)化算法.

    希爾排序的算法思路:

    先將整個待排元素序列分割成若干個子序列(由相隔某個“增量”的元素組成的)

    接著將若干子序列分別進行直接插入排序,然后依次縮減增量再進行排序

    待整個序列中的元素基本有序時,再對全體元素進行一次直接插入排序

    因為直接插入排序在元素基本有序的情況下,效率很高
    希爾排序在時間效率上比直接排序有較大提高

    一書關(guān)于排序問題的代碼很難閱讀理解,針對排序問題我參考的是網(wǎng)絡(luò)上一牛人的博客,在此把他的博客鏈接發(fā)給大家

    http://blog.csdn.net/morewindows/article/details/6668714

0
回復(fù)
2016-09-09 16:48
@hello-no1
  直接排序在數(shù)據(jù)量比較小的時候可能問題還不大,但是如果有100個數(shù)字,10K數(shù)字,1000K數(shù)字的時候呢,隨著數(shù)據(jù)量的增加,直接排序的速度會成倍的下降,此時不得不考慮優(yōu)化算法.  希爾排序的算法思路:    先將整個待排元素序列分割成若干個子序列(由相隔某個“增量”的元素組成的)    接著將若干子序列分別進行直接插入排序,然后依次縮減增量再進行排序  待整個序列中的元素基本有序時,再對全體元素進行一次直接插入排序    因為直接插入排序在元素基本有序的情況下,效率很高    希爾排序在時間效率上比直接排序有較大提高  一書關(guān)于排序問題的代碼很難閱讀理解,針對排序問題我參考的是網(wǎng)絡(luò)上一牛人的博客,在此把他的博客鏈接發(fā)給大家    http://blog.csdn.net/morewindows/article/details/6668714

        看到<增廣賢文>中的一段經(jīng)典名句,共享給大家

                              未曾清貧難成人
                        不經(jīng)打擊老天真
                        自古英雄出煉獄
                        從來富貴入凡塵
                        醉生夢死誰成器
                        拓馬長槍定乾坤
                        揮軍千里山河在
                        立名揚威傳后人

0
回復(fù)
2016-09-12 11:27
帖子已被設(shè)置為頭條,恭喜樓主可添加電源網(wǎng)私人官網(wǎng)微信(dianyuan_com)為好友,領(lǐng)取現(xiàn)金紅包(備注信息:頭條紅包)

      注:現(xiàn)金紅包僅限當(dāng)日領(lǐng)取

      活動介紹:http://www.e-ticket.cn/bbs/1531738.html

     

0
回復(fù)
2016-09-12 14:29
@電源網(wǎng)-fqd
帖子已被設(shè)置為頭條,恭喜樓主可添加電源網(wǎng)私人官網(wǎng)微信(dianyuan_com)為好友,領(lǐng)取現(xiàn)金紅包(備注信息:頭條紅包)     注:現(xiàn)金紅包僅限當(dāng)日領(lǐng)取     活動介紹:http://www.e-ticket.cn/bbs/1531738.html     [圖片]

    繼續(xù)更新

    搞定經(jīng)典算法之冒泡排序

源代碼

冒泡排序.rar

代碼界面

運行界面

0
回復(fù)
2016-09-12 14:31
@hello-no1
  繼續(xù)更新  搞定經(jīng)典算法之冒泡排序源代碼冒泡排序.rar代碼界面[圖片]運行界面[圖片]

    算法思路:

第一步比較相鄰的前后兩數(shù)據(jù),如果前面數(shù)據(jù)大于后面的數(shù)據(jù),就將這兩個數(shù)據(jù)交換。
第二步對數(shù)組的第0個數(shù)據(jù)到N-1個數(shù)據(jù)進行一次遍歷后,最大的一個數(shù)據(jù)就“沉”到數(shù)組第N-1個位置,也就是所謂的冒泡的思路.
第三步N=N-1,如果N不為0就重復(fù)前面二步,否則排序完成。

0
回復(fù)
2016-09-12 15:08
@hello-no1
  算法思路:第一步比較相鄰的前后兩數(shù)據(jù),如果前面數(shù)據(jù)大于后面的數(shù)據(jù),就將這兩個數(shù)據(jù)交換。第二步對數(shù)組的第0個數(shù)據(jù)到N-1個數(shù)據(jù)進行一次遍歷后,最大的一個數(shù)據(jù)就“沉”到數(shù)組第N-1個位置,也就是所謂的冒泡的思路.第三步N=N-1,如果N不為0就重復(fù)前面二步,否則排序完成。

    改進型冒泡排序

源代碼

改進型冒泡排序.rar

代碼界面

運行界面

0
回復(fù)
2016-09-12 15:09
@hello-no1
  改進型冒泡排序源代碼改進型冒泡排序.rar代碼界面[圖片]運行界面[圖片]
    冒泡排序本質(zhì)上是一種效率較低的排序方法,在數(shù)據(jù)規(guī)模很小時,可以采用。數(shù)據(jù)規(guī)模比較大時,最好用其它排序方法。不過它的效率相對于直接排序還是高了一些.
0
回復(fù)
2016-09-13 15:24
@hello-no1
    冒泡排序本質(zhì)上是一種效率較低的排序方法,在數(shù)據(jù)規(guī)模很小時,可以采用。數(shù)據(jù)規(guī)模比較大時,最好用其它排序方法。不過它的效率相對于直接排序還是高了一些.

    搞定快速排序

源代碼

快速排序.rar

代碼界面

運行界面

0
回復(fù)
發(fā)