实现一个C语言版本的圣诞树(附源代码)
圣誕樹C語言源代碼,關(guān)注飛雪無情公眾號即可獲取,詳見文章底部
2018年的圣誕節(jié)前夜,使用GO語言實(shí)現(xiàn)了一顆隨機(jī)圣誕樹,也就是每次運(yùn)行程序,生成的圣誕樹都不一樣,獨(dú)一無二的。當(dāng)時受到了很大的歡迎,很多朋友來要源代碼,我已經(jīng)放在了公眾號上。
可以參考我這篇文章:程序員的圣誕節(jié)--送她一顆圣誕樹(附源代碼)?
今年的圣誕節(jié)呢,同樣有很多朋友來要源代碼,他們除了要GO語言的源代碼外,還有要C語言源代碼的朋友。其實(shí)C語言和GO語言非常相似,要實(shí)現(xiàn)一個也是很容易的,所以我就花了點(diǎn)時間,實(shí)現(xiàn)了一個C語言版本的圣誕樹,順便復(fù)習(xí)下C語言,好久不用有點(diǎn)生疏了。
先來看看實(shí)現(xiàn)的效果,圣誕樹很美的:
C語言實(shí)現(xiàn)的圣誕樹這是一個4層圣誕樹的效果,蘋果、鈴鐺、星星等分配都很合理,很美觀。其實(shí)你也可以加一些其他的點(diǎn)綴,只需要修改這段代碼即可:
根據(jù)不同的隨機(jī)數(shù),返回不同的點(diǎn)綴,比如是蘋果、鈴鐺或者是你自己新加的點(diǎn)綴。
在C語言中,并沒有生成不超過n的隨機(jī)數(shù)函數(shù),所以我這里需要自己實(shí)現(xiàn),代碼中rand()%100,就是表示生成不超過100的隨機(jī)數(shù)。
在C語言中,字符串的拼接也是個麻煩,它并不像GO語言那么靈活。在C語言中需要提前申請固定大小的字符內(nèi)存,才能使用strcat函數(shù)進(jìn)行拼接。所以為了不讓字符串溢出,需要提前申請一個比較大的內(nèi)存,我代碼中申請的是1000。
其實(shí)以上實(shí)現(xiàn)的方式并不優(yōu)雅,1000大小的字符串也可能溢出,如果要實(shí)現(xiàn)優(yōu)雅的字符串拼接,可以參考GO語言的append函數(shù),自動的擴(kuò)大申請的內(nèi)存,這就是高級語言的好處,因?yàn)檫@些GO語言都幫我們做了。
好了,下面重點(diǎn)來了,如果獲取C語言版本的圣誕樹源代碼呢?
在微信中搜索飛雪無情公眾號關(guān)注,然后在公眾號中回復(fù)圣誕節(jié)或者圣誕樹即可獲取。
在微信中搜索飛雪無情公眾號關(guān)注,然后在公眾號中回復(fù)圣誕節(jié)或者圣誕樹即可獲取。
在微信中搜索飛雪無情公眾號關(guān)注,然后在公眾號中回復(fù)圣誕節(jié)或者圣誕樹即可獲取。
重要的事情說三遍,大家拿到源代碼后,就可以自定義生成自己的圣誕樹了,你還可以嘗試把祝福語加上哦。
最后,提前祝大家圣誕節(jié)快樂,來年好運(yùn)。
本文為原創(chuàng)文章,轉(zhuǎn)載注明出處,asdff 歡迎掃碼關(guān)注公眾號flysnow_org或者網(wǎng)站http://www.flysnow.org/,第一時間看后續(xù)精彩文章。覺得好的話,請猛擊文章右下角「好看」,感謝支持。
掃碼關(guān)注總結(jié)
以上是生活随笔為你收集整理的实现一个C语言版本的圣诞树(附源代码)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决QT问题:运行qmake:Proje
- 下一篇: 请求第三方阿里发送验证码