绝对不卡福利网站|中文字幕在笑第一页|午夜福利中文字幕首页|久久精彩视频免费观看

  • <abbr id="lczsv"></abbr>
    <blockquote id="lczsv"></blockquote>

    <track id="lczsv"><table id="lczsv"><nobr id="lczsv"></nobr></table></track>
    • c語(yǔ)言常識(shí)

      2022-08-28 綜合 86閱讀 投稿:暖午后

      1.C語(yǔ)言入門(mén)知識(shí)

      <21天學(xué)通C語(yǔ)言>(第六版) Bradley L. Jones, Peler Aitken 著. 信達(dá)工作室 譯. 人民郵電出版社 這本書(shū)對(duì)初學(xué)者很好, 如果有點(diǎn)基礎(chǔ)那就更好了.建議選擇譚浩強(qiáng)譚老師的書(shū),簡(jiǎn)單易學(xué),理論與實(shí)踐結(jié)合的很好,而且如果能認(rèn)真學(xué)的話,你會(huì)發(fā)現(xiàn)你的C語(yǔ)言基礎(chǔ)非常的實(shí)。

      也不是說(shuō)其他的書(shū)不好,但是有些書(shū)只是為了讓讀者入門(mén),沒(méi)有前途呀。先讀譚浩強(qiáng)的《C語(yǔ)言程序設(shè)計(jì)》,這是公認(rèn)的中文入門(mén)級(jí)教材。

      但是書(shū)中的代碼風(fēng)格不敢恭維??赐赀@本,推薦《21天學(xué)通C語(yǔ)言》,這本書(shū)比較好,個(gè)人感覺(jué)。

      看完這兩本,你就可以進(jìn)階C++了。 C語(yǔ)言只要把基礎(chǔ)打好就好,你要是想精通的話,最好是精通C++,這樣比較有前途。

      但不要操之過(guò)急。

      2.c 語(yǔ)言的基本知識(shí)

      1.C提供了三種主要的預(yù)處理功能,分別是__宏定義_______、___文件包含______、____條件編譯____。

      2.C語(yǔ)言中,數(shù)組元素下標(biāo)下限為_(kāi)__0_____。 3.數(shù)組名作函數(shù)參數(shù)傳遞時(shí)是__數(shù)組首地址______傳遞。

      變量作函數(shù)參數(shù)時(shí)是_值_______傳遞, 4.一個(gè)編輯好的*.C源程序,必須經(jīng)過(guò)編譯、_連接_______、后才能運(yùn)行。 5.在C語(yǔ)言中可以用__逐個(gè)引用______法和________法引用數(shù)組元素。

      6.C語(yǔ)言的程序結(jié)構(gòu)有_順序___、_選擇___、循環(huán)____三種。 7.在C中,Char類(lèi)型變量值可以賦值給___int_____類(lèi)型變量。

      8.使指針P指向數(shù)組int a[ ]的首址,寫(xiě)作 __p=a______ ,*(P+1)是a[ _1__ ]的值 9.所謂指針是指_______;指針變量是用于存放_(tái)__變量地址___的變量;字符串的指針是指__字符串的首地址________ ;函數(shù)的指針是指__函數(shù)首地址____________。 10.在函數(shù)調(diào)用中,一個(gè)函數(shù)無(wú)論直接還是間接地調(diào)用自身,該調(diào)用稱(chēng)為_(kāi)_遞歸_____調(diào)用。

      3.c 語(yǔ)言的基本知識(shí)

      1.C提供了三種主要的預(yù)處理功能,分別是__宏定義_______、___文件包含______、____條件編譯____。

      2.C語(yǔ)言中,數(shù)組元素下標(biāo)下限為_(kāi)__0_____。

      3.數(shù)組名作函數(shù)參數(shù)傳遞時(shí)是__數(shù)組首地址______傳遞。變量作函數(shù)參數(shù)時(shí)是_值_______傳遞,

      4.一個(gè)編輯好的*.C源程序,必須經(jīng)過(guò)編譯、_連接_______、后才能運(yùn)行。

      5.在C語(yǔ)言中可以用__逐個(gè)引用______法和________法引用數(shù)組元素。

      6.C語(yǔ)言的程序結(jié)構(gòu)有_順序___、_選擇___、循環(huán)____三種。

      7.在C中,Char類(lèi)型變量值可以賦值給___int_____類(lèi)型變量。

      8.使指針P指向數(shù)組int a[ ]的首址,寫(xiě)作 __p=a______ ,*(P+1)是a[ _1__ ]的值

      9.所謂指針是指_______;指針變量是用于存放_(tái)__變量地址___的變量;字符串的指針是指__字符串的首地址________ ;函數(shù)的指針是指__函數(shù)首地址____________。

      10.在函數(shù)調(diào)用中,一個(gè)函數(shù)無(wú)論直接還是間接地調(diào)用自身,該調(diào)用稱(chēng)為_(kāi)_遞歸_____調(diào)用。

      4.關(guān)于C語(yǔ)言的基礎(chǔ)知識(shí)

      根據(jù)樓主的原程序來(lái)看,main() { float a, b; scanf("%f%", &a, &b); if(a>b) printf("%f/n", a); else printf("%f/n", b); } 如果我把else替換成if(aa)好不好啊準(zhǔn)確的講,是根本不能換的,因?yàn)閑lse的意思是是a<=b,而不是你的a

      如果是問(wèn)換成if(a<=b)的話,是可行的,但不建議如此,其實(shí)意義是一樣的,但程序的簡(jiǎn)單化和從邏輯思維上來(lái)講,你的想法會(huì)使程序太復(fù)雜,而且對(duì)你以后的編程思考問(wèn)題沒(méi)好處的。不過(guò)你實(shí)在要用也是可以的,其實(shí)改成你的寫(xiě)法,也就是if else的意思,只是你是兩個(gè)語(yǔ)句,我們卻只一個(gè),那種好自己去想。

      致于背不背那些東西,如果C語(yǔ)言是靠背的話,那就不要學(xué)了。需要的是理解加運(yùn)用才能掌握,多自己編,多學(xué),要不停地去理解每一個(gè)的意思,自然而然就記到了。

      知其然要知其所以然。

      5.求c語(yǔ)言基本知識(shí)

      教了多年《C程序設(shè)計(jì)》課程,大多學(xué)生覺(jué)的這門(mén)課程難學(xué)。

      其實(shí),按照我們現(xiàn)在的教學(xué)大綱和教學(xué)要求,只要同學(xué)們掌握一些方法,克服心理上畏難、不輕言放棄,是完全可以學(xué)好的。 《C程序設(shè)計(jì)》的內(nèi)容很豐富,按照我們現(xiàn)在的教學(xué)大綱,教學(xué)的主要內(nèi)容是基礎(chǔ)知識(shí)、四種結(jié)構(gòu)的的程序設(shè)計(jì)、函數(shù)與數(shù)組的應(yīng)用和一些簡(jiǎn)單的算法。

      在學(xué)習(xí)時(shí),同學(xué)們應(yīng)該把主要精力放在這些部分,通過(guò)實(shí)踐(練習(xí)和上機(jī)調(diào)試等熟練掌握。當(dāng)然,在初學(xué)C語(yǔ)言時(shí),可能會(huì)遇到有些問(wèn)題理解不透,或者表達(dá)方式與以往數(shù)學(xué)學(xué)習(xí)中不同(如運(yùn)算符等),這就要求不氣餒,不明白的地方多問(wèn)多想,鼓足勇氣進(jìn)行學(xué)習(xí),待學(xué)完后面的章節(jié)知識(shí),前面的問(wèn)題也就迎刃而解了,這一方面我感覺(jué)是我們同學(xué)最欠缺,大多學(xué)不好的就是因?yàn)橐婚_(kāi)始遇到困難就放棄,曾經(jīng)和好多同學(xué)談他的問(wèn)題,回答是聽(tīng)不懂、不想聽(tīng)、放棄這樣三個(gè)過(guò)程,我反問(wèn),這節(jié)課你聽(tīng)過(guò)課嗎?回答又是沒(méi)有,根本就沒(méi)聽(tīng)過(guò)課,怎么說(shuō)自己聽(tīng)不懂呢?相應(yīng)的根本就沒(méi)學(xué)習(xí),又談何學(xué)的好? 學(xué)習(xí)C語(yǔ)言始終要記住“曙光在前頭”和“千金難買(mǎi)回頭看”,“千金難買(mǎi)回頭看”是學(xué)習(xí)知識(shí)的重要方法,就是說(shuō),學(xué)習(xí)后面的知識(shí),不要忘了回頭弄清遺留下的問(wèn)題和加深理解前面的知識(shí),這是我們學(xué)生最不易做到的,然而卻又是最重要的。

      比如:在C語(yǔ)言中最典型的是關(guān)于結(jié)構(gòu)化程序設(shè)計(jì)構(gòu)思,不管是那種教材,一開(kāi)始就強(qiáng)調(diào)這種方法,這時(shí)也許你不能充分體會(huì),但是學(xué)到函數(shù)時(shí),再回頭來(lái)仔細(xì)體會(huì),溫故知新,理解它就沒(méi)有那么難了。學(xué)習(xí)C語(yǔ)言就是要經(jīng)過(guò)幾個(gè)反復(fù),才能前后貫穿,積累應(yīng)該掌握的C知識(shí)。

      那么,我們?nèi)绾螌W(xué)好《C程序設(shè)計(jì)》呢? 一.學(xué)好C語(yǔ)言的運(yùn)算符和運(yùn)算順序 這是學(xué)好《C程序設(shè)計(jì)》的基礎(chǔ),C語(yǔ)言的運(yùn)算非常靈活,功能十分豐富,運(yùn)算種類(lèi)遠(yuǎn)多于其它程序設(shè)計(jì)語(yǔ)言。在表達(dá)式方面較其它程序語(yǔ)言更為簡(jiǎn)潔,如自加、自減、逗號(hào)運(yùn)算和三目運(yùn)算使表達(dá)式更為簡(jiǎn)單,但初學(xué)者往往會(huì)覺(jué)的這種表達(dá)式難讀,關(guān)鍵原因就是對(duì)運(yùn)算符和運(yùn)算順序理解不透不全。

      當(dāng)多種不同運(yùn)算組成一個(gè)運(yùn)算表達(dá)式,即一個(gè)運(yùn)算式中出現(xiàn)多種運(yùn)算符時(shí),運(yùn)算的優(yōu)先順序和結(jié)合規(guī)則顯得十分重要。在學(xué)習(xí)中,只要我們對(duì)此合理進(jìn)行分類(lèi),找出它們與我們?cè)跀?shù)學(xué)中所學(xué)到運(yùn)算之間的不同點(diǎn)之后,記住這些運(yùn)算也就不困難了,有些運(yùn)算符在理解后更會(huì)牢記心中,將來(lái)用起來(lái)得心應(yīng)手,而有些可暫時(shí)放棄不記,等用到時(shí)再記不遲。

      先要明確運(yùn)算符按優(yōu)先級(jí)不同分類(lèi),《C程序設(shè)計(jì)》運(yùn)算符可分為15種優(yōu)先級(jí),從高到低,優(yōu)先級(jí)為1 ~ 15,除第2、3級(jí)和第14級(jí)為從右至左結(jié)合外,其它都是從左至右結(jié)合,它決定同級(jí)運(yùn)算符的運(yùn)算順序。下面我們通過(guò)幾個(gè)例子來(lái)說(shuō)明: (1) 5*8/4%10 這個(gè)表達(dá)式中出現(xiàn)3種運(yùn)算符,是同級(jí)運(yùn)算符,運(yùn)算順序按從左至右結(jié)合,因此先計(jì)算5 *8=40,然后被4除,結(jié)果為10,最后是%(求余數(shù))運(yùn)算,所以表達(dá)式的最終結(jié)果為10%10 = 0; (2)a = 3;b = 5;c =++ a* b ;d =a + +* b; 對(duì)于c=++a*b來(lái)說(shuō),按表中所列順序,+ +先執(zhí)行,*后執(zhí)行,所以+ + a執(zhí)行后,a的值為4,由于+ +為前置運(yùn)算,所以a的值4參與運(yùn)算,C的值計(jì)算式為4*5=20而不是3*5=15了;而對(duì)于d=a++*b來(lái)說(shuō),由于a + +為后置運(yùn)算,所以a值為4參與運(yùn)算,使得d的值仍為20,而a參與運(yùn)算后其值加1,值為5。

      這個(gè)例子執(zhí)行后,a的值為5,b的值為5,c的值為20,d的值也是20; (3)(a = 3,b = 5,b+ = a,c = b* 5) 例子中的“,”是逗號(hào)結(jié)合運(yùn)算,上式稱(chēng)為逗號(hào)表達(dá)式,自左向右結(jié)合,最后一個(gè)表達(dá)式的結(jié)果值就是逗號(hào)表達(dá)式的結(jié)果,所以上面的逗號(hào)表達(dá)式結(jié)果為40,a的值為3,b的值為8,c的值為40。 (4)a=5;b=6;c=a>b?a:b; 例中的a>b?a:b是一個(gè)三目運(yùn)算,它的功能是先做關(guān)系運(yùn)算a>b部分,若結(jié)果為真,則取問(wèn)號(hào)后a的值,否則取冒號(hào)后b的值,因此c的值應(yīng)該為6,這個(gè)運(yùn)算可以用來(lái)代替if…else…語(yǔ)句的簡(jiǎn)單應(yīng)用。

      二.學(xué)好C語(yǔ)言的四種程序結(jié)構(gòu) (1)順序結(jié)構(gòu) 順序結(jié)構(gòu)的程序設(shè)計(jì)是最簡(jiǎn)單的,只要按照解決問(wèn)題的順序?qū)懗鱿鄳?yīng)的語(yǔ)句就行,它的執(zhí)行順序是自上而下,依次執(zhí)行。 例如;a = 3,b = 5,現(xiàn)交換a,b的值,這個(gè)問(wèn)題就好象交換兩個(gè)杯子水,這當(dāng)然要用到第三個(gè)杯子,假如第三個(gè)杯子是c,那么正確的程序?yàn)椋?c = a; a = b; b = c; 執(zhí)行結(jié)果是a = 5,b = c = 3如果改變其順序,寫(xiě)成:a = b; c = a; b = c; 則執(zhí)行結(jié)果就變成a = b = c = 5,不能達(dá)到預(yù)期的目的,初學(xué)者最容易犯這種錯(cuò)誤。

      順序結(jié)構(gòu)可以獨(dú)立使用構(gòu)成一個(gè)簡(jiǎn)單的完整程序,常見(jiàn)的輸入、計(jì)算,輸出三步曲的程序就是順序結(jié)構(gòu),例如計(jì)算圓的面積,其程序的語(yǔ)句順序就是輸入圓的半徑r,計(jì)算s = 3.14159*r*r,輸出圓的面積s。不過(guò)大多數(shù)情況下順序結(jié)構(gòu)都是作為程序的一部分,與其它結(jié)構(gòu)一起構(gòu)成一個(gè)復(fù)雜的程序,例如分支結(jié)構(gòu)中的復(fù)合語(yǔ)句、循環(huán)結(jié)構(gòu)中的循環(huán)體等。

      (2) 分支結(jié)構(gòu) 順序結(jié)構(gòu)的程序雖然能解決計(jì)算、輸出等問(wèn)題,但不能做判斷再選擇。對(duì)于要先做判斷再選擇的問(wèn)題就要使用分支結(jié)構(gòu)。

      分支結(jié)構(gòu)的執(zhí)行是依據(jù)一定的條件選擇執(zhí)行路徑,而不是嚴(yán)格按照語(yǔ)句出現(xiàn)的物理順序。分支結(jié)構(gòu)的程。

      6.學(xué)習(xí)C語(yǔ)言需要掌握哪些基本知識(shí)

      (這是別人回答我的問(wèn)題,感覺(jué)很有幫助你可以了解了解)如何學(xué)好c語(yǔ)言 教了多年《C程序設(shè)計(jì)》課程,大多學(xué)生覺(jué)的這門(mén)課程難學(xué)。

      其實(shí),按照我們現(xiàn)在的教學(xué)大綱和教學(xué)要求,只要同學(xué)們掌握一些方法,克服心理上畏難、不輕言放棄,是完全可以學(xué)好的。 《C程序設(shè)計(jì)》的內(nèi)容很豐富,按照我們現(xiàn)在的教學(xué)大綱,教學(xué)的主要內(nèi)容是基礎(chǔ)知識(shí)、四種結(jié)構(gòu)的的程序設(shè)計(jì)、函數(shù)與數(shù)組的應(yīng)用和一些簡(jiǎn)單的算法。

      在學(xué)習(xí)時(shí),同學(xué)們應(yīng)該把主要精力放在這些部分,通過(guò)實(shí)踐(練習(xí)和上機(jī)調(diào)試等熟練掌握。當(dāng)然,在初學(xué)C語(yǔ)言時(shí),可能會(huì)遇到有些問(wèn)題理解不透,或者表達(dá)方式與以往數(shù)學(xué)學(xué)習(xí)中不同(如運(yùn)算符等),這就要求不氣餒,不明白的地方多問(wèn)多想,鼓足勇氣進(jìn)行學(xué)習(xí),待學(xué)完后面的章節(jié)知識(shí),前面的問(wèn)題也就迎刃而解了,這一方面我感覺(jué)是我們同學(xué)最欠缺,大多學(xué)不好的就是因?yàn)橐婚_(kāi)始遇到困難就放棄,曾經(jīng)和好多同學(xué)談他的問(wèn)題,回答是聽(tīng)不懂、不想聽(tīng)、放棄這樣三個(gè)過(guò)程,我反問(wèn),這節(jié)課你聽(tīng)過(guò)課嗎?回答又是沒(méi)有,根本就沒(méi)聽(tīng)過(guò)課,怎么說(shuō)自己聽(tīng)不懂呢?相應(yīng)的根本就沒(méi)學(xué)習(xí),又談何學(xué)的好? 學(xué)習(xí)C語(yǔ)言始終要記住“曙光在前頭”和“千金難買(mǎi)回頭看”,“千金難買(mǎi)回頭看”是學(xué)習(xí)知識(shí)的重要方法,就是說(shuō),學(xué)習(xí)后面的知識(shí),不要忘了回頭弄清遺留下的問(wèn)題和加深理解前面的知識(shí),這是我們學(xué)生最不易做到的,然而卻又是最重要的。

      比如:在C語(yǔ)言中最典型的是關(guān)于結(jié)構(gòu)化程序設(shè)計(jì)構(gòu)思,不管是那種教材,一開(kāi)始就強(qiáng)調(diào)這種方法,這時(shí)也許你不能充分體會(huì),但是學(xué)到函數(shù)時(shí),再回頭來(lái)仔細(xì)體會(huì),溫故知新,理解它就沒(méi)有那么難了。學(xué)習(xí)C語(yǔ)言就是要經(jīng)過(guò)幾個(gè)反復(fù),才能前后貫穿,積累應(yīng)該掌握的C知識(shí)。

      那么,我們?nèi)绾螌W(xué)好《C程序設(shè)計(jì)》呢? 一.學(xué)好C語(yǔ)言的運(yùn)算符和運(yùn)算順序 這是學(xué)好《C程序設(shè)計(jì)》的基礎(chǔ),C語(yǔ)言的運(yùn)算非常靈活,功能十分豐富,運(yùn)算種類(lèi)遠(yuǎn)多于其它程序設(shè)計(jì)語(yǔ)言。在表達(dá)式方面較其它程序語(yǔ)言更為簡(jiǎn)潔,如自加、自減、逗號(hào)運(yùn)算和三目運(yùn)算使表達(dá)式更為簡(jiǎn)單,但初學(xué)者往往會(huì)覺(jué)的這種表達(dá)式難讀,關(guān)鍵原因就是對(duì)運(yùn)算符和運(yùn)算順序理解不透不全。

      當(dāng)多種不同運(yùn)算組成一個(gè)運(yùn)算表達(dá)式,即一個(gè)運(yùn)算式中出現(xiàn)多種運(yùn)算符時(shí),運(yùn)算的優(yōu)先順序和結(jié)合規(guī)則顯得十分重要。在學(xué)習(xí)中,只要我們對(duì)此合理進(jìn)行分類(lèi),找出它們與我們?cè)跀?shù)學(xué)中所學(xué)到運(yùn)算之間的不同點(diǎn)之后,記住這些運(yùn)算也就不困難了,有些運(yùn)算符在理解后更會(huì)牢記心中,將來(lái)用起來(lái)得心應(yīng)手,而有些可暫時(shí)放棄不記,等用到時(shí)再記不遲。

      先要明確運(yùn)算符按優(yōu)先級(jí)不同分類(lèi),《C程序設(shè)計(jì)》運(yùn)算符可分為15種優(yōu)先級(jí),從高到低,優(yōu)先級(jí)為1 ~ 15,除第2、3級(jí)和第14級(jí)為從右至左結(jié)合外,其它都是從左至右結(jié)合,它決定同級(jí)運(yùn)算符的運(yùn)算順序。下面我們通過(guò)幾個(gè)例子來(lái)說(shuō)明: (1) 5*8/4%10 這個(gè)表達(dá)式中出現(xiàn)3種運(yùn)算符,是同級(jí)運(yùn)算符,運(yùn)算順序按從左至右結(jié)合,因此先計(jì)算5 *8=40,然后被4除,結(jié)果為10,最后是%(求余數(shù))運(yùn)算,所以表達(dá)式的最終結(jié)果為10%10 = 0; (2)a = 3;b = 5;c =++ a* b ;d =a + +* b; 對(duì)于c=++a*b來(lái)說(shuō),按表中所列順序,+ +先執(zhí)行,*后執(zhí)行,所以+ + a執(zhí)行后,a的值為4,由于+ +為前置運(yùn)算,所以a的值4參與運(yùn)算,C的值計(jì)算式為4*5=20而不是3*5=15了;而對(duì)于d=a++*b來(lái)說(shuō),由于a + +為后置運(yùn)算,所以a值為4參與運(yùn)算,使得d的值仍為20,而a參與運(yùn)算后其值加1,值為5。

      這個(gè)例子執(zhí)行后,a的值為5,b的值為5,c的值為20,d的值也是20; (3)(a = 3,b = 5,b+ = a,c = b* 5) 例子中的“,”是逗號(hào)結(jié)合運(yùn)算,上式稱(chēng)為逗號(hào)表達(dá)式,自左向右結(jié)合,最后一個(gè)表達(dá)式的結(jié)果值就是逗號(hào)表達(dá)式的結(jié)果,所以上面的逗號(hào)表達(dá)式結(jié)果為40,a的值為3,b的值為8,c的值為40。 (4)a=5;b=6;c=a>b?a:b; 例中的a>b?a:b是一個(gè)三目運(yùn)算,它的功能是先做關(guān)系運(yùn)算a>b部分,若結(jié)果為真,則取問(wèn)號(hào)后a的值,否則取冒號(hào)后b的值,因此c的值應(yīng)該為6,這個(gè)運(yùn)算可以用來(lái)代替if…else…語(yǔ)句的簡(jiǎn)單應(yīng)用。

      二.學(xué)好C語(yǔ)言的四種程序結(jié)構(gòu) (1)順序結(jié)構(gòu) 順序結(jié)構(gòu)的程序設(shè)計(jì)是最簡(jiǎn)單的,只要按照解決問(wèn)題的順序?qū)懗鱿鄳?yīng)的語(yǔ)句就行,它的執(zhí)行順序是自上而下,依次執(zhí)行。 例如;a = 3,b = 5,現(xiàn)交換a,b的值,這個(gè)問(wèn)題就好象交換兩個(gè)杯子水,這當(dāng)然要用到第三個(gè)杯子,假如第三個(gè)杯子是c,那么正確的程序?yàn)椋?c = a; a = b; b = c; 執(zhí)行結(jié)果是a = 5,b = c = 3如果改變其順序,寫(xiě)成:a = b; c = a; b = c; 則執(zhí)行結(jié)果就變成a = b = c = 5,不能達(dá)到預(yù)期的目的,初學(xué)者最容易犯這種錯(cuò)誤。

      順序結(jié)構(gòu)可以獨(dú)立使用構(gòu)成一個(gè)簡(jiǎn)單的完整程序,常見(jiàn)的輸入、計(jì)算,輸出三步曲的程序就是順序結(jié)構(gòu),例如計(jì)算圓的面積,其程序的語(yǔ)句順序就是輸入圓的半徑r,計(jì)算s = 3.14159*r*r,輸出圓的面積s。不過(guò)大多數(shù)情況下順序結(jié)構(gòu)都是作為程序的一部分,與其它結(jié)構(gòu)一起構(gòu)成一個(gè)復(fù)雜的程序,例如分支結(jié)構(gòu)中的復(fù)合語(yǔ)句、循環(huán)結(jié)構(gòu)中的循環(huán)體等。

      (2) 分支結(jié)構(gòu) 順序結(jié)構(gòu)的程序雖然能解決計(jì)算、輸出等問(wèn)題,但不能做判斷再選擇。對(duì)于要先做判斷再選擇的問(wèn)題就要使用分支結(jié)構(gòu)。

      分支結(jié)構(gòu)的執(zhí)行是依據(jù)一定的條件選擇。

      7.C語(yǔ)言的基本知識(shí)是什么

      C語(yǔ)言功能豐富,表達(dá)能力強(qiáng)、使用靈活方便、應(yīng)用面廣、目標(biāo)程序效率高、可移植性好,既具有高級(jí)語(yǔ)言的優(yōu)點(diǎn),又具有低級(jí)語(yǔ)言的許多特點(diǎn),因此特別適合于編寫(xiě)系統(tǒng)軟件.

      簡(jiǎn)潔緊湊、靈活方便

      運(yùn)算符豐富

      數(shù)據(jù)結(jié)構(gòu)豐富

      C是結(jié)構(gòu)式語(yǔ)言

      C語(yǔ)法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大

      C語(yǔ)言允許直接訪問(wèn)物理地址,對(duì)硬件進(jìn)行操作

      生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高

      C語(yǔ)言適用范圍大,可移植性好

      想要學(xué)習(xí)它的話可以看看譚浩強(qiáng)的《C程序設(shè)計(jì)》

      簡(jiǎn)單易懂。

      8.C語(yǔ)言知識(shí)總結(jié)

      c語(yǔ)言概要第一章、概述1、c語(yǔ)言的基本知識(shí)1.1、c語(yǔ)言的執(zhí)行步驟編輯-程序代碼的錄入,生成源程序*.c編譯-語(yǔ)法分析查錯(cuò),翻譯生成目標(biāo)程序*.obj(語(yǔ)法或邏輯錯(cuò)誤,從第一個(gè)開(kāi)始改,變量定義,語(yǔ)句格式,表達(dá)式格式等)鏈接-與其他目標(biāo)程序或庫(kù)鏈接裝配,生成可執(zhí)行程序*.exe執(zhí)行1.2、main函數(shù)的基本知識(shí)main()函數(shù)的位置c程序總是從main( )函數(shù)開(kāi)始執(zhí)行一個(gè)c程序可以包含一個(gè)主函數(shù),即main()函數(shù);也可以包含一個(gè)main()函數(shù)和若干其它函數(shù)1.3、c程序的結(jié)構(gòu)函數(shù)與主函數(shù)程序由一個(gè)或多個(gè)函數(shù)組成必須有一個(gè)且只能有一個(gè)主函數(shù)main()程序執(zhí)行從main開(kāi)始,在main中結(jié)束,其他函數(shù)通過(guò)嵌套調(diào)用得以執(zhí)行程序語(yǔ)句C程序由語(yǔ)句組成用“;”作為語(yǔ)句終止符注釋//或/* */ 為注釋?zhuān)荒芮短撞划a(chǎn)生編譯代碼1.4、c 程序書(shū)寫(xiě)的規(guī)則習(xí)慣用小寫(xiě)字母,大小寫(xiě)敏感不使用行號(hào),無(wú)程序行概念:通常一個(gè)語(yǔ)句占一行可使用空行和空格常用鋸齒形的書(shū)寫(xiě)格式;同一層次結(jié)構(gòu)的語(yǔ)句上下對(duì)齊。

      第二章、基本數(shù)據(jù)類(lèi)型與運(yùn)算2.1、c程序的數(shù)據(jù)類(lèi)型注意類(lèi)型和變量含義的不同(類(lèi)型是固定好的名字,變量是自己起的名字)變量占用的存儲(chǔ)空間數(shù)據(jù)類(lèi)型基本類(lèi)型:整型、字符型、浮點(diǎn)型(單精度型,雙精度型)構(gòu)造類(lèi)型:數(shù)組類(lèi)型、結(jié)構(gòu)體類(lèi)型指針類(lèi)型空類(lèi)型注意基本類(lèi)型賦初值的方式基本數(shù)據(jù)類(lèi)型的表示形式整形數(shù)據(jù)十進(jìn)制:以非0數(shù)字開(kāi)頭,如:123,-9,0八進(jìn)制;以0數(shù)字開(kāi)頭,如:0123,067十六進(jìn)制:以0x開(kāi)頭,如:0x123,0xff實(shí)型數(shù)據(jù)十進(jìn)制:必須帶小數(shù)點(diǎn),如:123.0,-9.0指數(shù)形式;如:1.23E3,0.9e-2,5e2字符型數(shù)據(jù)普通字符:如:'a','2','H','#'轉(zhuǎn)義字符:如:'/n','/167','/xlf,'//'(實(shí)現(xiàn)幾列的對(duì)齊:指定寬度。如%100/ '/t'制表位)(字符串長(zhǎng)度。

      “abc/n/t//” strlen 6; sizeof 7)基本數(shù)據(jù)類(lèi)型的存儲(chǔ)長(zhǎng)度整型Int 字節(jié)數(shù) 2 位數(shù) 16 數(shù)的表示范圍 -32768—32767Short 2 16 -32768—32767Long 4 32 -2147483648—2147483647實(shí)型Float 4 32 3.4e-38---3.4e38Double 8 64 1.7e-308---1.7e308字符型Char 1 8 -128----1272.2、標(biāo)識(shí)符命名規(guī)則C語(yǔ)言標(biāo)志符命名規(guī)則標(biāo)識(shí)符有數(shù)字,字母,下劃線組成標(biāo)識(shí)符的首字符必須為字母和下劃線標(biāo)識(shí)符不能為c語(yǔ)言的保留字(關(guān)鍵字)如:auto extern sizeof float static case for struct char goto switch continue in typedef const if union default long unsigned do register void double return else short while enum signed算術(shù)運(yùn)算符 + - * / %關(guān)系運(yùn)算符 > < == >= <= !=邏輯運(yùn)算符 ! && ||位運(yùn)算符 << >> ~ | ^ &賦值運(yùn)算符 = 及其擴(kuò)展賦值運(yùn)算符條件運(yùn)算符 ? :逗號(hào)運(yùn)算符 ,指針運(yùn)算符 * &求字節(jié)數(shù)運(yùn)算符 sizeof強(qiáng)制類(lèi)型轉(zhuǎn)換運(yùn)算符 (類(lèi)型)分量運(yùn)算符 . ->下標(biāo)運(yùn)算符 [ ]其他 如函數(shù)調(diào)用運(yùn)算符()運(yùn)算符的優(yōu)先級(jí)由高到低:?jiǎn)文窟\(yùn)算符,算數(shù)運(yùn)算符,關(guān)系運(yùn)算符,賦值運(yùn)算符說(shuō)明:?jiǎn)文窟\(yùn)算符:自增運(yùn)算符,自減運(yùn)算符,類(lèi)型裝換運(yùn)算符。結(jié)合方向:自右至左如:++--I 先—i.。

      算術(shù)運(yùn)算 結(jié)合方向自左至右2.3基本運(yùn)算和表達(dá)式關(guān)系表達(dá)式和邏輯表達(dá)式(a>b)&&(x>y) (a==b)||(x==y) !=a||(a>b)A&&b.a為0.不執(zhí)行bA||b a為1.不執(zhí)行b在 c 中邏輯運(yùn)算結(jié)果:1代表“真”,0代表“假”;判斷一個(gè)表達(dá)式是否真:0代表“假”,非0代表“真”條件表達(dá)式 逗號(hào)表達(dá)式如:k=5,k++逗號(hào)值為5;k為6.表達(dá)式1?表達(dá)式2 :表達(dá)式3K=5>6 ? 1 : 02.4、混合運(yùn)算的數(shù)據(jù)類(lèi)型轉(zhuǎn)換2/3+0.5 雙精度浮點(diǎn)型第三章、順序結(jié)構(gòu)程序設(shè)計(jì)3.1、c語(yǔ)句的分類(lèi)簡(jiǎn)單語(yǔ)句表達(dá)式語(yǔ)句 表達(dá)式+分號(hào)空語(yǔ)句 只有分號(hào)的語(yǔ)句復(fù)合語(yǔ)句 用花括號(hào)將若干語(yǔ)句括起來(lái)流程控制語(yǔ)句選擇語(yǔ)句 if ,switch循環(huán)語(yǔ)句 while, do while , for轉(zhuǎn)移語(yǔ)句 break ,continue ,return goto3.2、格式輸入函數(shù)scanf一般形式:scanf(“格式控制字符串“,地址列表);使用scanf函數(shù)時(shí),需要注意:格式字符的個(gè)數(shù)必須與輸入項(xiàng)的個(gè)數(shù)相同,數(shù)據(jù)類(lèi)型必須一一對(duì)應(yīng),非格式字符串(說(shuō)明性的)要原封不動(dòng)的輸入。輸入實(shí)行數(shù)據(jù)時(shí),可以不帶小數(shù)點(diǎn),即按整型數(shù)據(jù)輸入數(shù)值型數(shù)據(jù)與字符或字符串混合輸入時(shí),需要注意輸入方式。

      3.3、格式輸出函數(shù)printfPrintf(“格式控制字符串“,輸出列表);指定輸出格式,由格式字符串和非格式字符串兩種組成,非格式字符串照原樣輸出。%[標(biāo)志][輸出最小寬度][.精度][長(zhǎng)度]類(lèi)型標(biāo)志:- 左對(duì)齊;+ 右對(duì)齊;%f, %d, %c, %s3.4、其他輸入輸出函數(shù)Putchar getchar puts gets第四章、選擇結(jié)構(gòu)程序設(shè)計(jì)If選擇結(jié)構(gòu) 單分支If(表達(dá)式)語(yǔ)句雙分支If(表達(dá)式)語(yǔ)句1Else語(yǔ)句2多分支If (表達(dá)式1)語(yǔ)句1Else if(表達(dá)式2)語(yǔ)句2。

      Else if(表達(dá)式m)語(yǔ)句mElse語(yǔ)句nSwitch(表達(dá)式){Case 常量表達(dá)式1:語(yǔ)句1;break;Case 常量表達(dá)式2:語(yǔ)句2;break;。

      Case 常量表達(dá)式m:語(yǔ)句m;break;Default:語(yǔ)句n;break;}注意break的使用第五章、循環(huán)結(jié)構(gòu)程序設(shè)計(jì)循環(huán)三要素初始條件 ;終止條件 ;在初始條件和終止條件間反復(fù)做某件事情(循環(huán)體)While(表達(dá)式)語(yǔ)句Do語(yǔ)句While(表達(dá)式);For(循環(huán)體變量賦初值;循環(huán)條件;循環(huán)變量增量)( for( ) ; // ; 進(jìn)行時(shí)間延遲。

      9.C語(yǔ)言的各種知識(shí)

      /%C3%EE%D2%F4%C4%F1/blogc語(yǔ)言 C語(yǔ)言是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言。

      它既有高級(jí)語(yǔ)言的特點(diǎn),又具有匯編語(yǔ)言的特點(diǎn)。它可以作為系統(tǒng)設(shè)計(jì)語(yǔ)言,編寫(xiě)工作系統(tǒng)應(yīng)用程序,也可以作為應(yīng)用程序設(shè)計(jì)語(yǔ)言,編寫(xiě)不依賴(lài)計(jì)算機(jī)硬件的應(yīng)用程序。

      因此,它的應(yīng)用范圍廣泛。 C語(yǔ)言對(duì)操作系統(tǒng)和系統(tǒng)使用程序以及需要對(duì)硬件進(jìn)行操作的場(chǎng)合,用C語(yǔ)言明顯優(yōu)于其它解釋型高級(jí)語(yǔ)言,有一些大型應(yīng)用軟件也是用C語(yǔ)言編寫(xiě)的。

      C語(yǔ)言具有繪圖能力強(qiáng),可移植性,并具備很強(qiáng)的數(shù)據(jù)處理能力,因此適于編寫(xiě)系統(tǒng)軟件,三維,二維圖形和動(dòng)畫(huà)。它是數(shù)值計(jì)算的高級(jí)語(yǔ)言。

      常用的C語(yǔ)言IDE(集成開(kāi)發(fā)環(huán)境)有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++ ,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++ ,Lccwin32 C Compiler 3.1,Microsoft C,High C,TurboC等等。

      C語(yǔ)言的發(fā)展歷史 C語(yǔ)言的原型ALGOL 60語(yǔ)言。(也稱(chēng)為A語(yǔ)言) 1963年,劍橋大學(xué)將ALGOL 60語(yǔ)言發(fā)展成為CPL(Combined Programming Language)語(yǔ)言。

      1967年,劍橋大學(xué)的Matin Richards 對(duì)CPL語(yǔ)言進(jìn)行了簡(jiǎn)化,于是產(chǎn)生了BCPL語(yǔ)言。 1970年,美國(guó)貝爾實(shí)驗(yàn)室的Ken Thompson將BCPL進(jìn)行了修改,并為它起了一個(gè)有趣的名字“B語(yǔ)言”。

      意思是將CPL語(yǔ)言煮干,提煉出它的精華。并且他用B語(yǔ)言寫(xiě)了第一個(gè)UNIX操作系統(tǒng)。

      而在1973年,B語(yǔ)言也給人“煮”了一下,美國(guó)貝爾實(shí)驗(yàn)室的D.M.RITCHIE在B語(yǔ)言的基礎(chǔ)上最終設(shè)計(jì)出了一種新的語(yǔ)言,他取了BCPL的第二個(gè)字母作為這種語(yǔ)言的名字,這就是C語(yǔ)言。 為了使UNIX操作系統(tǒng)推廣,1977年Dennis M.Ritchie 發(fā)表了不依賴(lài)于具體機(jī)器系統(tǒng)的C語(yǔ)言編譯文本《可移植的C語(yǔ)言編譯程序》。

      1978年Brian W.Kernighian和Dennis M.Ritchie出版了名著《C語(yǔ)言程序》(The C Programming Language),從而使C語(yǔ)言成為當(dāng)時(shí)世界上流行最廣泛的高級(jí)程序設(shè)計(jì)語(yǔ)言。 1988年,隨著微型計(jì)算機(jī)的日益普及, C語(yǔ)言出現(xiàn)了許多版本。

      由于沒(méi)有統(tǒng)一的標(biāo)準(zhǔn),使得這些C語(yǔ)言之間出現(xiàn)了一些不一致的地方。為了改變這種情況,美國(guó)國(guó)家標(biāo)準(zhǔn)研究所(ANSI)為C語(yǔ)言制定了一套ANSI標(biāo)準(zhǔn), 成為現(xiàn)行的C語(yǔ)言標(biāo)準(zhǔn)3.C語(yǔ)言的主要特點(diǎn) 。

      C語(yǔ)言發(fā)展迅速, 而且成為最受歡迎的語(yǔ)言之一, 主要因?yàn)樗哂袕?qiáng)大的功能。許多著名的系統(tǒng)軟件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 語(yǔ)言編寫(xiě)的。

      用C語(yǔ)言加上一些匯編語(yǔ)言子程序, 就更能顯示C語(yǔ)言的優(yōu)勢(shì)了,象PC- DOS 、WORDSTAR等就是用這種方法編寫(xiě)的。 C語(yǔ)言版本 目前最流行的C語(yǔ)言有以下幾種: ·Microsoft C 或稱(chēng) MS C ·Borland Turbo C 或稱(chēng) Turbo C ·AT&T C 這些C語(yǔ)言版本不僅實(shí)現(xiàn)了ANSI C標(biāo)準(zhǔn),而且在此基礎(chǔ)上各自作了一些擴(kuò)充。

      C語(yǔ)言的優(yōu)點(diǎn) 1. 簡(jiǎn)潔緊湊、靈活方便 C語(yǔ)言一共只有32個(gè)關(guān)鍵字,9種控制語(yǔ)句,程序書(shū)寫(xiě)自由,主要用小寫(xiě)字母表示。它把高級(jí)語(yǔ)言的基本結(jié)構(gòu)和語(yǔ)句與低級(jí)語(yǔ)言的實(shí)用性結(jié)合起來(lái)。

      C 語(yǔ)言可以象匯編語(yǔ)言一樣對(duì)位、字節(jié)和地址進(jìn)行操作, 而這三者是計(jì)算機(jī)最基本的工作單元。 2. 運(yùn)算符豐富 C的運(yùn)算符包含的范圍很廣泛,共有種34個(gè)運(yùn)算符。

      C語(yǔ)言把括號(hào)、賦值、強(qiáng)制類(lèi)型轉(zhuǎn)換等都作為運(yùn)算符處理。從而使C的運(yùn)算類(lèi)型極其豐富表達(dá)式類(lèi)型多樣化,靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其它高級(jí)語(yǔ)言中難以實(shí)現(xiàn)的運(yùn)算。

      3. 數(shù)據(jù)結(jié)構(gòu)豐富 C的數(shù)據(jù)類(lèi)型有:整型、實(shí)型、字符型、數(shù)組類(lèi)型、指針類(lèi)型、結(jié)構(gòu)體類(lèi)型、共用體類(lèi)型等。能用來(lái)實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)類(lèi)型的運(yùn)算。

      并引入了指針概念,使程序效率更高。另外C語(yǔ)言具有強(qiáng)大的圖形功能, 支持多種顯示器和驅(qū)動(dòng)器。

      且計(jì)算功能、邏輯判斷功能強(qiáng)大。 4. C是結(jié)構(gòu)式語(yǔ)言 結(jié)構(gòu)式語(yǔ)言的顯著特點(diǎn)是代碼及數(shù)據(jù)的分隔化,即程序的各個(gè)部分除了必要的信息交流外彼此獨(dú)立。

      這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦?便于使用、維護(hù)以及調(diào)試。C語(yǔ)言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語(yǔ)句控制程序流向,從而使程序完全結(jié)構(gòu)化。

      5. C語(yǔ)法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大 雖然C語(yǔ)言也是強(qiáng)類(lèi)型語(yǔ)言,但它的語(yǔ)法比較靈活,允許程序編寫(xiě)者有較大的自由度。 6. C語(yǔ)言允許直接訪問(wèn)物理地址,可以直接對(duì)硬件進(jìn)行操作 因此既具有高級(jí)語(yǔ)言的功能,又具有低級(jí)語(yǔ)言的許多功能,能夠象匯編語(yǔ)言一樣對(duì)位、字節(jié)和地址進(jìn)行操作,而這三者是計(jì)算機(jī)最基本的工作單元,可以用來(lái)寫(xiě)系統(tǒng)軟件。

      7. C語(yǔ)言程序生成代碼質(zhì)量高,程序執(zhí)行效率高 一般只比匯編程序生成的目標(biāo)代碼效率低10へ20%。 8. C語(yǔ)言適用范圍大,可移植性好 C語(yǔ)言有一個(gè)突出的優(yōu)點(diǎn)就是適合于多種操作系統(tǒng), 如DOS、UNIX,也適用于多種機(jī)型。

      C語(yǔ)言的缺點(diǎn) 1. C語(yǔ)言的缺點(diǎn)主要是表現(xiàn)在數(shù)據(jù)的封裝性上,這一點(diǎn)使得C在數(shù)據(jù)的安全性上做的有很大缺陷,這也是C和C++的一大區(qū)別。 2. C語(yǔ)言的語(yǔ)法限制不太嚴(yán)格,對(duì)變量的類(lèi)型約束不嚴(yán)格,影響程序的安全性,對(duì)數(shù)組下標(biāo)越界不作檢查等。

      從應(yīng)用的角度,C語(yǔ)言比其他高級(jí)語(yǔ)言較難掌握。 [C語(yǔ)言指針] 指針就是C語(yǔ)言的一。

      c語(yǔ)言常識(shí)

      聲明:沿途百知所有(內(nèi)容)均由用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流。若您的權(quán)利被侵害,請(qǐng)聯(lián)系我們將盡快刪除