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

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

    <track id="lczsv"><table id="lczsv"><nobr id="lczsv"></nobr></table></track>
    • c語言結(jié)構(gòu)的小知識(shí)

      2023-03-07 綜合 86閱讀 投稿:幻想曲

      1.C語言的各種知識(shí)

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

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

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

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

      常用的C語言IDE(集成開發(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語言的發(fā)展歷史 C語言的原型ALGOL 60語言。(也稱為A語言) 1963年,劍橋大學(xué)將ALGOL 60語言發(fā)展成為CPL(Combined Programming Language)語言。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      2.C語言中,數(shù)組元素下標(biāo)下限為___0_____。

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

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

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

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

      7.在C中,Char類型變量值可以賦值給___int_____類型變量。

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

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

      10.在函數(shù)調(diào)用中,一個(gè)函數(shù)無論直接還是間接地調(diào)用自身,該調(diào)用稱為__遞歸_____調(diào)用。

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

      (這是別人回答我的問題,感覺很有幫助你可以了解了解)如何學(xué)好c語言 教了多年《C程序設(shè)計(jì)》課程,大多學(xué)生覺的這門課程難學(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)用和一些簡單的算法。

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

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

      那么,我們?nèi)绾螌W(xué)好《C程序設(shè)計(jì)》呢? 一.學(xué)好C語言的運(yùn)算符和運(yùn)算順序 這是學(xué)好《C程序設(shè)計(jì)》的基礎(chǔ),C語言的運(yùn)算非常靈活,功能十分豐富,運(yùn)算種類遠(yuǎn)多于其它程序設(shè)計(jì)語言。在表達(dá)式方面較其它程序語言更為簡潔,如自加、自減、逗號(hào)運(yùn)算和三目運(yùn)算使表達(dá)式更為簡單,但初學(xué)者往往會(huì)覺的這種表達(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)行分類,找出它們與我們?cè)跀?shù)學(xué)中所學(xué)到運(yùn)算之間的不同點(diǎn)之后,記住這些運(yùn)算也就不困難了,有些運(yùn)算符在理解后更會(huì)牢記心中,將來用起來得心應(yīng)手,而有些可暫時(shí)放棄不記,等用到時(shí)再記不遲。

      先要明確運(yùn)算符按優(yōu)先級(jí)不同分類,《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)算順序。下面我們通過幾個(gè)例子來說明: (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來說,按表中所列順序,+ +先執(zhí)行,*后執(zhí)行,所以+ + a執(zhí)行后,a的值為4,由于+ +為前置運(yùn)算,所以a的值4參與運(yùn)算,C的值計(jì)算式為4*5=20而不是3*5=15了;而對(duì)于d=a++*b來說,由于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)算,上式稱為逗號(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é)果為真,則取問號(hào)后a的值,否則取冒號(hào)后b的值,因此c的值應(yīng)該為6,這個(gè)運(yùn)算可以用來代替if…else…語句的簡單應(yīng)用。

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

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

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

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

      4.C語言最基礎(chǔ)的知識(shí)

      1,C語言的運(yùn)算符和優(yōu)先級(jí)

      2,分支結(jié)構(gòu)程序設(shè)計(jì)

      3,循環(huán)結(jié)構(gòu)程序

      4,數(shù)組

      5,函數(shù)

      6,指針

      7,字符類型和字符串

      8,字符串與指針

      9,指針數(shù)組、二級(jí)指針、指向一維數(shù)組的指針、指向函數(shù)的指針

      10,返回指針的函數(shù)、數(shù)組名做函數(shù)參數(shù)

      11,結(jié)構(gòu)體、共用體、枚舉、自定義類型、變量存儲(chǔ)類別、工程文件

      12,文件、宏、主函數(shù)帶形參

      13,鏈表、位運(yùn)算、考試環(huán)境

      14,排序、強(qiáng)制類型轉(zhuǎn)換

      5.C語言入門知識(shí)

      <21天學(xué)通C語言>;(第六版)

      Bradley L. Jones, Peler Aitken 著.

      信達(dá)工作室 譯.

      人民郵電出版社

      這本書對(duì)初學(xué)者很好, 如果有點(diǎn)基礎(chǔ)那就更好了.

      建議選擇譚浩強(qiáng)譚老師的書,簡單易學(xué),理論與實(shí)踐結(jié)合的很好,而且如果能認(rèn)真學(xué)的話,你會(huì)發(fā)現(xiàn)你的C語言基礎(chǔ)非常的實(shí)。

      也不是說其他的書不好,但是有些書只是為了讓讀者入門,沒有前途呀。

      先讀譚浩強(qiáng)的《C語言程序設(shè)計(jì)》,這是公認(rèn)的中文入門級(jí)教材。但是書中的代碼風(fēng)格不敢恭維??赐赀@本,推薦《21天學(xué)通C語言》,這本書比較好,個(gè)人感覺。看完這兩本,你就可以進(jìn)階C++了。

      C語言只要把基礎(chǔ)打好就好,你要是想精通的話,最好是精通C++,這樣比較有前途。但不要操之過急。

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

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

      簡潔緊湊、靈活方便

      運(yùn)算符豐富

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

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

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

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

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

      C語言適用范圍大,可移植性好

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

      簡單易懂。

      7.求c語言基本知識(shí)

      教了多年《C程序設(shè)計(jì)》課程,大多學(xué)生覺的這門課程難學(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)用和一些簡單的算法。

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

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

      那么,我們?nèi)绾螌W(xué)好《C程序設(shè)計(jì)》呢? 一.學(xué)好C語言的運(yùn)算符和運(yùn)算順序 這是學(xué)好《C程序設(shè)計(jì)》的基礎(chǔ),C語言的運(yùn)算非常靈活,功能十分豐富,運(yùn)算種類遠(yuǎn)多于其它程序設(shè)計(jì)語言。在表達(dá)式方面較其它程序語言更為簡潔,如自加、自減、逗號(hào)運(yùn)算和三目運(yùn)算使表達(dá)式更為簡單,但初學(xué)者往往會(huì)覺的這種表達(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)行分類,找出它們與我們?cè)跀?shù)學(xué)中所學(xué)到運(yùn)算之間的不同點(diǎn)之后,記住這些運(yùn)算也就不困難了,有些運(yùn)算符在理解后更會(huì)牢記心中,將來用起來得心應(yīng)手,而有些可暫時(shí)放棄不記,等用到時(shí)再記不遲。

      先要明確運(yùn)算符按優(yōu)先級(jí)不同分類,《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)算順序。下面我們通過幾個(gè)例子來說明: (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來說,按表中所列順序,+ +先執(zhí)行,*后執(zhí)行,所以+ + a執(zhí)行后,a的值為4,由于+ +為前置運(yùn)算,所以a的值4參與運(yùn)算,C的值計(jì)算式為4*5=20而不是3*5=15了;而對(duì)于d=a++*b來說,由于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)算,上式稱為逗號(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é)果為真,則取問號(hào)后a的值,否則取冒號(hào)后b的值,因此c的值應(yīng)該為6,這個(gè)運(yùn)算可以用來代替if…else…語句的簡單應(yīng)用。

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

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

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

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

      8.c語言中的三種基本控制結(jié)構(gòu)分別是什么

      順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu)。

      C語言是一種計(jì)算機(jī)程序設(shè)計(jì)語言,它既具有高級(jí)語言的特點(diǎn),又具有匯編語言的特點(diǎn)。C語言已先后被移植到大、中、小及微型機(jī)上,它可以作為工作系統(tǒng)設(shè)計(jì)語言,編寫系統(tǒng)應(yīng)用程序,也可以作為應(yīng)用程序設(shè)計(jì)語言,編寫不依賴計(jì)算機(jī)硬件的應(yīng)用程序。

      它的應(yīng)用范圍廣泛,具備很強(qiáng)的數(shù)據(jù)處理能力,不僅僅是在軟件開發(fā)上,而且各類科研都需要用到C語言,適于編寫系統(tǒng)軟件,三維,二維圖形和動(dòng)畫,具體應(yīng)用比如單片機(jī)以及嵌入式系統(tǒng)開發(fā)。C語言的順序結(jié)構(gòu):順序結(jié)構(gòu)的程序設(shè)計(jì)是最簡單的,只要按照解決問題的順序?qū)懗鱿鄳?yīng)的語句就行,它的執(zhí)行順序是自上而下,依次執(zhí)行。

      C語言的選擇結(jié)構(gòu):選擇程序結(jié)構(gòu)用于判斷給定的條件,根據(jù)判斷的結(jié)果判斷某些條件,根據(jù)判斷的結(jié)果來控制程序的流程。使用選擇結(jié)構(gòu)語句時(shí),要用條件表達(dá)式來描述條件。

      C語言的循環(huán)結(jié)構(gòu) :循環(huán)結(jié)構(gòu)可以減少源程序重復(fù)書寫的工作量,用來描述重復(fù)執(zhí)行某段算法的問題,這是程序設(shè)計(jì)中最能發(fā)揮計(jì)算機(jī)特長的程序結(jié)構(gòu) 。循環(huán)結(jié)構(gòu)可以看成是一個(gè)條件判斷語句和一個(gè)向回轉(zhuǎn)向語句的組合。

      這三種最基本的結(jié)構(gòu)組成了現(xiàn)在計(jì)算機(jī)五花八門的各種應(yīng)用程序是每個(gè)學(xué)習(xí)C語言的入門課程也是必須牢牢掌握不能有任何不明白的基本結(jié)構(gòu),掌握了著幾個(gè)基本結(jié)構(gòu)就可以進(jìn)入C語言世界常有無阻了。

      9.學(xué)習(xí)C語言要些什么基礎(chǔ)

      C 語言屬于易學(xué)難精的一門計(jì)算機(jī)語言。

      如果只是簡單學(xué)習(xí)C語言,那么符合以下條件即可開始學(xué)習(xí):

      1、識(shí)字,可以閱讀C語言教材;

      2、認(rèn)識(shí)英文字母,標(biāo)點(diǎn)符合,阿拉伯?dāng)?shù)字,并可以在電腦上打出來。

      如果要想把C語言學(xué)的精通,那么如果有如下基礎(chǔ),則相對(duì)更容易一些:

      1、數(shù)學(xué)基礎(chǔ)。

      C語言中很多方面涉及數(shù)學(xué)模型,所以數(shù)學(xué)好對(duì)C的學(xué)習(xí)幫助很大。

      2、英文基礎(chǔ)。

      流暢的英文閱讀能力,可以輔助C語言學(xué)習(xí)。

      3、基本的硬件知識(shí)。

      C語言是一門直接面向底層,可以操作硬件的計(jì)算機(jī)編程語言,如果可以了解部分硬件知識(shí),對(duì)指令集,內(nèi)存的訪問等有一定了解,那么更容易深入學(xué)習(xí)C語言本質(zhì)。

      4、算法及數(shù)據(jù)結(jié)構(gòu)。

      編程離不開算法。剛學(xué)編程可以一點(diǎn)算法不懂,但一個(gè)精通C語言的人是必須要學(xué)習(xí)算法的。

      c語言結(jié)構(gòu)的小知識(shí)

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