關(guān)于C語(yǔ)言需要的基礎知識并不多,但是會(huì )一點(diǎn)英語(yǔ)就會(huì )學(xué)的很好。C語(yǔ)言只是一種工具,看你要用它做什么事情了。
如果你想考二級而且現在是零基礎,希望你能找一下培訓班,一個(gè)月兩個(gè)月就能學(xué)通。如果有其他語(yǔ)言的基礎就更好了,買(mǎi)一本C語(yǔ)言的書(shū),千萬(wàn)別買(mǎi)一些古怪的出版社出的書(shū),推薦英文教材或翻譯的教材,比如The C Program Language 就很不錯,對照著(zhù)上面一頁(yè)一頁(yè)看,半個(gè)月應該就能簡(jiǎn)單編程。然后就是做習題,二級開(kāi)始幾道題是考公共基礎知識的,是全靠背的,馬虎不得,可是直接百度或Google“公共基礎知識+二級”會(huì )找到很多資料,找考題也如此“歷年C二級考題”,只做真題,不做模擬。因為每年出的題都差不多,考題做多了考試的中心思想也找到了。
如果你是要做底層硬件開(kāi)發(fā),關(guān)于C語(yǔ)言方面的東西需要注意的到是不太多,主要針對某款MCU的初始化和算法的編寫(xiě)。有了上面的二級基礎是很容易做到的。
學(xué)習哪門(mén)語(yǔ)言都需要不斷的練習,如果還有什么問(wèn)題可以再聯(lián)系我。
(第六版) Bradley L. Jones, Peler Aitken 著(zhù). 信達工作室 譯. 人民郵電出版社 這本書(shū)對初學(xué)者很好, 如果有點(diǎn)基礎那就更好了. 建議選擇譚浩強譚老師的書(shū),簡(jiǎn)單易學(xué),理論與實(shí)踐結合的很好,而且如果能認真學(xué)的話(huà),你會(huì )發(fā)現你的C語(yǔ)言基礎非常的實(shí)。
也不是說(shuō)其他的書(shū)不好,但是有些書(shū)只是為了讓讀者入門(mén),沒(méi)有前途呀。 先讀譚浩強的《C語(yǔ)言程序設計》,這是公認的中文入門(mén)級教材。
但是書(shū)中的代碼風(fēng)格不敢恭維。看完這本,推薦《21天學(xué)通C語(yǔ)言》,這本書(shū)比較好,個(gè)人感覺(jué)。
看完這兩本,你就可以進(jìn)階C++了。 C語(yǔ)言只要把基礎打好就好,你要是想精通的話(huà),最好是精通C++,這樣比較有前途。
但不要操之過(guò)急。
1.C提供了三種主要的預處理功能,分別是__宏定義_______、___文件包含______、____條件編譯____。
2.C語(yǔ)言中,數組元素下標下限為_(kāi)__0_____。
3.數組名作函數參數傳遞時(shí)是__數組首地址______傳遞。變量作函數參數時(shí)是_值_______傳遞,
4.一個(gè)編輯好的*.C源程序,必須經(jīng)過(guò)編譯、_連接_______、后才能運行。
5.在C語(yǔ)言中可以用__逐個(gè)引用______法和________法引用數組元素。
6.C語(yǔ)言的程序結構有_順序___、_選擇___、循環(huán)____三種。
7.在C中,Char類(lèi)型變量值可以賦值給___int_____類(lèi)型變量。
8.使指針P指向數組int a[ ]的首址,寫(xiě)作 __p=a______ ,*(P+1)是a[ _1__ ]的值
9.所謂指針是指_______;指針變量是用于存放___變量地址___的變量;字符串的指針是指__字符串的首地址________ ;函數的指針是指__函數首地址____________。
10.在函數調用中,一個(gè)函數無(wú)論直接還是間接地調用自身,該調用稱(chēng)為_(kāi)_遞歸_____調用。
維生素C又叫抗壞血酸,是一種水溶性維生素。
維生素C主要生理功能 1、促進(jìn)骨膠原的生物合成。利于組織創(chuàng )傷口的更快愈合;2、促進(jìn)氨基酸中酪氨酸和色氨酸的代謝,延長(cháng)肌體壽命。
3、改善鐵、鈣和葉酸的利用。4、改善脂肪和類(lèi)脂特別是膽固醇的代謝,預防心血管病。
5、促進(jìn)牙齒和骨骼的生長(cháng),防止牙床出血。;6、增強肌體對外界環(huán)境的抗應激能力和免疫力。
藥物作用維生素C在體內參與多種反應,如參與氧化還原過(guò)程,在生物氧化和還原作用以及細胞呼吸中起重要作用。從組織水平看,維生素C的主要作用是與細胞間質(zhì)的合成有關(guān)。
包括膠原,牙和骨的基質(zhì),以及毛細血管內皮細胞間的接合物。因此,當維生素C缺乏所引起的壞血病時(shí),伴有膠原合成缺陷,表現為創(chuàng )傷通難以愈合,牙齒形成障礙和毛細血管破損引起大量瘀血點(diǎn),瘀血點(diǎn)融合形成瘀斑。
維生素C和壞血病有一段很長(cháng)的歷史淵源。希波克拉底是第一個(gè)提到壞血病的人。
他描述當時(shí)士兵牙床潰爛、牙齒脫落。
;早期的海上旅行引起了人們對壞血病的重視,船隊離開(kāi)港口3—4個(gè)月,船員往往會(huì )因此患上壞血病,人們開(kāi)始發(fā)現這是由于海上旅行缺乏新鮮蔬菜和水果的緣故。
1932年英國軍醫從檸檬汁中離析出具有抗壞血病的晶狀物質(zhì),1933年瑞士科學(xué)家合成了維生素C,又叫做抗壞血酸。近代研究表明VC對人體健康至關(guān)重要:1.膠原蛋白的合成需要維生素C參加,所以VC缺乏,膠原蛋白不能正常合成,導致細胞連接障礙。
人體由細胞組成,細胞靠細胞間質(zhì)把它們聯(lián)系起來(lái),細胞間質(zhì)的關(guān)鍵成分是膠原蛋白。膠原蛋白占身體蛋白質(zhì)的1/3,生成結締組織,構成身體骨架。
如骨骼、血管、韌帶等,決定了皮膚的彈性,保護大腦,并且有助于人體創(chuàng )傷的愈合。2.壞血病。
血管壁的強度和VC有很大關(guān)系。微血管是所有血管中最細小的,管壁可能只有一個(gè)細胞的厚度,其強度、彈性是由負責連接細胞具有膠泥作用的膠原蛋白所決定。
當體內VC不足,微血管容易破裂,血液流到鄰近組織。這種情況在皮膚表面發(fā)生,則產(chǎn)生淤血、紫癍;在體內發(fā)生則引起疼痛和關(guān)節漲痛。
嚴重情況在胃、腸道、鼻、腎臟及骨膜下面均可有出血現象,乃至死亡。3.牙齦萎縮、出血。
健康的牙床緊緊包住每一顆牙齒。牙齦是軟組織,當缺乏蛋白質(zhì)、鈣、VC時(shí)易產(chǎn)生牙齦萎縮、出血。
4.預防動(dòng)脈硬化。可促進(jìn)膽固醇的排泄,防止膽固醇在動(dòng)脈內壁沉積,甚至可以使沉積的粥樣斑塊溶解。
5.是一種水溶性的強有力的抗氧化劑。可以保護其它抗氧化劑,如維生素A、維生素E、不飽和脂肪酸,防止自由基對人體的傷害。
6.治療貧血。使難以吸收利用的三價(jià)鐵還原成二價(jià)鐵,促進(jìn)暢道對鐵的吸收,提高肝臟對鐵的利用率,有助于治療缺鐵性貧血。
7.防癌。豐富的膠原蛋白有助于防止癌細胞的擴散;VC的抗氧化作用可以抵御自由基對細胞的傷害防止細胞的變異;阻斷亞硝酸鹽和仲胺形成強致癌物亞硝胺。
曾有人對因癌癥死亡病人解剖發(fā)現病人體內的VC含量幾乎為零。8.保護細胞、解毒,保護肝臟。
在人的生命活動(dòng)中,保證細胞的完整性和代謝的正常進(jìn)行至關(guān)重要。為此,谷胱甘肽和酶起著(zhù)重要作用。
谷胱甘肽是由谷氨酸、胱氨酸和甘氨酸組成的短肽,在體內有氧化還原作用。它有兩種存在形式,即氧化型和還原型,還原型對保證細胞膜的完整性起重要作用。
VC是一種強抗氧化劑,其本身被氧化,而使氧化型谷胱甘肽還原為還原型谷胱甘肽,從而發(fā)揮抗氧化作用。酶是生化反應的催化劑,有些酶需要有自由的琉基(-SH)才能保持活性。
VC能夠使雙硫鍵(-S-S)還原為-SH,從而提高相關(guān)酶的活性,發(fā)揮抗氧化的作用。從以上可知,只要VC充足,則VC、谷胱甘肽、-SH形成有力的抗氧化組合拳,清除自由基,阻止脂類(lèi)過(guò)氧化及某些化學(xué)物質(zhì)的毒害作用,保護肝臟的解毒能力和細胞的正常代謝。
9.提高人體的免疫力。白細胞含有豐富的VC,當機體感染時(shí)白細胞內的VC急劇減少。
VC可增強中性粒細胞的趨化性和變形能力,提高殺菌能力。促進(jìn)淋巴母細胞的生成,提高機體對外來(lái)和惡變細胞的識別和殺滅。
參與免疫球蛋白的合成。提高CI補體酯酶活性,增加補體CI的產(chǎn)生。
促進(jìn)干擾素的產(chǎn)生,干擾病毒mRNA的轉錄,抑制病毒的增生。10.提高機體的應急能力。
人體受到異常的刺激,如劇痛、寒冷、缺氧、精神強刺激,會(huì )引發(fā)抵御異常刺激的緊張狀態(tài)。該狀態(tài)伴有一系列身體,包括交感神經(jīng)興奮、腎上腺髓質(zhì)和皮質(zhì)激素分泌增多。
腎上腺髓質(zhì)所分泌的腎上腺素和去甲腎上腺素是有酪氨酸轉化而來(lái),在次過(guò)程需要VC的參與。進(jìn)入人體的維生素C很快分布于個(gè)組織器官,在正常情況下,人體維生素C庫為1500毫克。
多余的大部分隨尿排出,少部分隨大便、汗及呼吸道排出。但是在感染情況下,人體所需的為平時(shí)的20---40倍之多,而且所有的藥物都會(huì )破壞體內的VC。
所以在人體有狀態(tài)的情況下補充VC是非常有益的。美國著(zhù)名營(yíng)養學(xué)家戴維斯問(wèn)過(guò)對營(yíng)養學(xué)有研究的醫生,是否應將VC當作家中常備藥品,以便任何疾病初期都可以服用。
大多數醫生都說(shuō):“當然比任何阿司匹林安全多了”,第一次使用足夠的量比連續使用小劑量有更好的效果。
教了多年《C程序設計》課程,大多學(xué)生覺(jué)的這門(mén)課程難學(xué)。
其實(shí),按照我們現在的教學(xué)大綱和教學(xué)要求,只要同學(xué)們掌握一些方法,克服心理上畏難、不輕言放棄,是完全可以學(xué)好的。 《C程序設計》的內容很豐富,按照我們現在的教學(xué)大綱,教學(xué)的主要內容是基礎知識、四種結構的的程序設計、函數與數組的應用和一些簡(jiǎn)單的算法。
在學(xué)習時(shí),同學(xué)們應該把主要精力放在這些部分,通過(guò)實(shí)踐(練習和上機調試等熟練掌握。當然,在初學(xué)C語(yǔ)言時(shí),可能會(huì )遇到有些問(wèn)題理解不透,或者表達方式與以往數學(xué)學(xué)習中不同(如運算符等),這就要求不氣餒,不明白的地方多問(wèn)多想,鼓足勇氣進(jìn)行學(xué)習,待學(xué)完后面的章節知識,前面的問(wèn)題也就迎刃而解了,這一方面我感覺(jué)是我們同學(xué)最欠缺,大多學(xué)不好的就是因為一開(kāi)始遇到困難就放棄,曾經(jīng)和好多同學(xué)談他的問(wèn)題,回答是聽(tīng)不懂、不想聽(tīng)、放棄這樣三個(gè)過(guò)程,我反問(wèn),這節課你聽(tīng)過(guò)課嗎?回答又是沒(méi)有,根本就沒(méi)聽(tīng)過(guò)課,怎么說(shuō)自己聽(tīng)不懂呢?相應的根本就沒(méi)學(xué)習,又談何學(xué)的好? 學(xué)習C語(yǔ)言始終要記住“曙光在前頭”和“千金難買(mǎi)回頭看”,“千金難買(mǎi)回頭看”是學(xué)習知識的重要方法,就是說(shuō),學(xué)習后面的知識,不要忘了回頭弄清遺留下的問(wèn)題和加深理解前面的知識,這是我們學(xué)生最不易做到的,然而卻又是最重要的。
比如:在C語(yǔ)言中最典型的是關(guān)于結構化程序設計構思,不管是那種教材,一開(kāi)始就強調這種方法,這時(shí)也許你不能充分體會(huì ),但是學(xué)到函數時(shí),再回頭來(lái)仔細體會(huì ),溫故知新,理解它就沒(méi)有那么難了。學(xué)習C語(yǔ)言就是要經(jīng)過(guò)幾個(gè)反復,才能前后貫穿,積累應該掌握的C知識。
那么,我們如何學(xué)好《C程序設計》呢? 一.學(xué)好C語(yǔ)言的運算符和運算順序 這是學(xué)好《C程序設計》的基礎,C語(yǔ)言的運算非常靈活,功能十分豐富,運算種類(lèi)遠多于其它程序設計語(yǔ)言。在表達式方面較其它程序語(yǔ)言更為簡(jiǎn)潔,如自加、自減、逗號運算和三目運算使表達式更為簡(jiǎn)單,但初學(xué)者往往會(huì )覺(jué)的這種表達式難讀,關(guān)鍵原因就是對運算符和運算順序理解不透不全。
當多種不同運算組成一個(gè)運算表達式,即一個(gè)運算式中出現多種運算符時(shí),運算的優(yōu)先順序和結合規則顯得十分重要。在學(xué)習中,只要我們對此合理進(jìn)行分類(lèi),找出它們與我們在數學(xué)中所學(xué)到運算之間的不同點(diǎn)之后,記住這些運算也就不困難了,有些運算符在理解后更會(huì )牢記心中,將來(lái)用起來(lái)得心應手,而有些可暫時(shí)放棄不記,等用到時(shí)再記不遲。
先要明確運算符按優(yōu)先級不同分類(lèi),《C程序設計》運算符可分為15種優(yōu)先級,從高到低,優(yōu)先級為1 ~ 15,除第2、3級和第14級為從右至左結合外,其它都是從左至右結合,它決定同級運算符的運算順序。下面我們通過(guò)幾個(gè)例子來(lái)說(shuō)明: (1) 5*8/4%10 這個(gè)表達式中出現3種運算符,是同級運算符,運算順序按從左至右結合,因此先計算5 *8=40,然后被4除,結果為10,最后是%(求余數)運算,所以表達式的最終結果為10%10 = 0; (2)a = 3;b = 5;c =++ a* b ;d =a + +* b; 對于c=++a*b來(lái)說(shuō),按表中所列順序,+ +先執行,*后執行,所以+ + a執行后,a的值為4,由于+ +為前置運算,所以a的值4參與運算,C的值計算式為4*5=20而不是3*5=15了;而對于d=a++*b來(lái)說(shuō),由于a + +為后置運算,所以a值為4參與運算,使得d的值仍為20,而a參與運算后其值加1,值為5。
這個(gè)例子執行后,a的值為5,b的值為5,c的值為20,d的值也是20; (3)(a = 3,b = 5,b+ = a,c = b* 5) 例子中的“,”是逗號結合運算,上式稱(chēng)為逗號表達式,自左向右結合,最后一個(gè)表達式的結果值就是逗號表達式的結果,所以上面的逗號表達式結果為40,a的值為3,b的值為8,c的值為40。 (4)a=5;b=6;c=a>b?a:b; 例中的a>b?a:b是一個(gè)三目運算,它的功能是先做關(guān)系運算a>b部分,若結果為真,則取問(wèn)號后a的值,否則取冒號后b的值,因此c的值應該為6,這個(gè)運算可以用來(lái)代替if…else…語(yǔ)句的簡(jiǎn)單應用。
二.學(xué)好C語(yǔ)言的四種程序結構 (1)順序結構 順序結構的程序設計是最簡(jiǎn)單的,只要按照解決問(wèn)題的順序寫(xiě)出相應的語(yǔ)句就行,它的執行順序是自上而下,依次執行。 例如;a = 3,b = 5,現交換a,b的值,這個(gè)問(wèn)題就好象交換兩個(gè)杯子水,這當然要用到第三個(gè)杯子,假如第三個(gè)杯子是c,那么正確的程序為: c = a; a = b; b = c; 執行結果是a = 5,b = c = 3如果改變其順序,寫(xiě)成:a = b; c = a; b = c; 則執行結果就變成a = b = c = 5,不能達到預期的目的,初學(xué)者最容易犯這種錯誤。
順序結構可以獨立使用構成一個(gè)簡(jiǎn)單的完整程序,常見(jiàn)的輸入、計算,輸出三步曲的程序就是順序結構,例如計算圓的面積,其程序的語(yǔ)句順序就是輸入圓的半徑r,計算s = 3.14159*r*r,輸出圓的面積s。不過(guò)大多數情況下順序結構都是作為程序的一部分,與其它結構一起構成一個(gè)復雜的程序,例如分支結構中的復合語(yǔ)句、循環(huán)結構中的循環(huán)體等。
(2) 分支結構 順序結構的程序雖然能解決計算、輸出等問(wèn)題,但不能做判斷再選擇。對于要先做判斷再選擇的問(wèn)題就要使用分支結構。
分支結構的執行是依據一定的條件選擇執行路徑,而不是嚴格按照語(yǔ)句出現的物理順序。分支結構的程序設計方法的關(guān)。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:2.318秒