


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、C語言基礎知識1. 每個C程序有且只有一個主函數main(),且程序必須從 main()函數開始執行,并在 main()函數中結束。2. 在 C 語言中, 用 e 來表示科學計數法時,規定在 e 的前面必須有數字, 后面必須為整數。3. 用單引號括起來的一個字符常量只能存放一個字符;C語言中沒有字符串變量,只能用字符數組來存儲字符串。4. 外部變量在編譯時由系統分配永久的內存空間,所以外部變量的類型不是自動存儲類別。5. 在一個函數內的復合語句中定義的變量,只能在這個復合語句范圍內有效。6. 用sizeof(int)計算int類型數據的字節數。7. C語言運行時,首先系統檢查語法的正誤,再運行
2、程序的語法;C語言中,可以在一個函 數中嵌套一個函數, 但是不能在一個函數中定義一個函數; 只有在函數外部定義的函數才是 外部函數;C語言的子程序有過程和函數兩種。8. 預處理命令行的位置沒有規定, 只是習慣放在前面; 在源文件中的可以有多條預處理命令, 但一行只能寫一條; 宏名的大寫只是習慣性的表示; 宏替換不僅不占用運行時間還不分配內 存空間。9. feo f函數的作用是檢查文件是否結束,當結束時返回的值為非零,否則為零。10. 當定義了數組后,在給其賦值時,不能直接把字符串賦給數組名。11. 在賦值表達式中,賦值運算符"=”右側不能為表達式;在求余運算符中的兩側都必須 為整型;
3、在強制類型轉換時,類型名應用括號括起來。12. 靜態局部變量,只有當程序結束后,其值才釋放。13. 當調用函數時,實參是一個數組名,則向函數傳送的是數組每一個元素的地址。14. 算法的特點為有零個或多個輸入,有一個或多個輸出,當相同的輸入時,其結果相同;算法正確的程序最終一定會結束。15.在C語言中,預處理命令行都以“#”開頭;當需要時才用#include<stdio.h>預處理的作用就是實現宏定義和條件編譯。16.當數組元素的下標超出了定義的下標范圍時,系統不給出“下標越界”的字樣,而是得出錯誤的答案,因此在 編程時務必檢查下標是否越界。17. 共用體變量不能作為函數的參數,也不
4、能使函數帶回共用體變量。18. 指向函數的指針變量的定義形式為:數據類型 (* 指針變量)(); ,因此其為指向函數 的指針變量。19. 用C語言編寫的代碼程序是源程序,只有通過編譯、連接才能進行。20. 在說明為 static 時,其生存期得到延長,而其作用域并沒有改變,在定義后系統會自動 幫它賦值為 0, static 為關鍵字不能被用作它用。21. 頻繁地使用空語句會降低程序的可讀性和運算速度。22. 運算符 %兩邊都應是整數,賦值語句左邊應該是變量,而非表達式,強制轉換語句強制類型應加括號。23. 在邏輯運算符中,其兩側的運算符對象為任意合法的表達式即可。24. 函數fread (&a
5、mp;larray , 2,16, fp)的功能是,從fp所指的數據文件中讀取16次2字節的數據存儲到數組larray中。25.整個流式文件也可以隨機存取數據,C語言文件中有好多函數可以達到寫入數據時, 未經輸入數據, 達到不覆蓋的目的, 在進行寫操作時,系統會自動 關閉文件。26. 使用putchar、getchat、puts、gets、printf、scanf函數時,必須在程序的開頭出現包含頭 文件#include ” stdio.h ”的命令行,而使用字符串處理函數時,必須在程序的開頭出現包含 頭文件#include ” string.h ”命令行,而使用數學函數時,必須在程序的開頭出現
6、包含頭文件 #include” math.h ”的命令行。27. 一個斜杠與小于等于 127 任意數字按一個字符計算,一個斜杠與任意一個字符按一個字符計算。28. 一個C程序可以有一個或多個程序文件,也可以有一個或多個函數,所以一個C語言程序可以實現多種算法。29. 根據C語言規定,注釋語句可以換行寫,并且一個“/* ”和其后緊跟的第一個“ */”中間的部分是注釋內容,且注釋內容不參與程序的運行。例如:b=0; /*b=20; 給 b 賦值*/ 則b=0; 。 30. sizeof 是求字節數的運算符,包括 0',而 strlen 是求字符串的實際長度的函 數,不包括 0 ',
7、以 0 '作為結束。 31. 在函數聲明時,其中的形參變量、個數、函數的 類型必須一致。32. C語言源程序經編譯后生成后綴為.obj的目標程序;C程序經過編譯、連接步驟之后才能形成一個真正可執行的二進制機器指令文件;用C語言編寫的程序稱為源程序,它以ASCII代碼形式存放在一個文本文件中。 并不是源程序中的所有行都參加編譯。 在條件編譯形式下, 相關內容只在滿足一定條件時才進行編譯。33. switch 括號后的表達式可以使任何表達式; case 后的表達式必須是常量表達式,常量表 達式中不能出現變量,且類型必須是整數、字符型或枚舉型。34. C 程序必須由一個或一個以上的函數組成;
8、函數調用可以作為一個獨立的語句存在;若 函數有返回值,必須通過 return 語句返回。35. 在C語言中,數據只能從實參單向傳遞給形參,稱為“按值”傳遞?!驹趯崊鬟f到形參時,是數值傳遞,而不是地址傳遞,形參中值的改變不會影響實參中的值?!?6. 可以用 typedef 聲明新的類型名來代替已有的類型名,而不能增加新的類型。37. 在沒有限制輸出寬度時,一般浮點數的小數位數是6位,不管輸出格式是 %f或If%均如此。38. C 語言中,函數的隱含存儲類別是無存儲類別。39. 當實參傳遞到形參時,地址傳遞時形參的改變影響實參。40. 串的長度指的是串中的字符的個數,且其字符個數可以為零。41.
9、 C語言中數據類型有整型、實型、字符型等,實行數據分為單精度型和雙精度型兩種。42. 整型數組只能一個一個地輸入或輸出,而在字符型數組中可以對字符串整體地輸入與輸出。43. C語言中,文件型指針變量的定義形式為:FILE文件型指針名;。C語言中對二進制文件的訪問速度比文本文件快; C語言中,隨機文件以二進制代碼形式存儲數據;C語言中的文本文件以ASCII碼形式存儲數據。44. 因為#define是宏定義的標志,而不是 C語句,而printf是輸出函數,因此其是 C語句。45. 在實參傳遞給形參時,地址傳遞時能夠改變,而數值傳遞時則不變。46. 在scanf函數中,必須含有輸入項,并且需含有與之
10、一一對應的轉換說明符,在seanf函數的格式字符前可以加入一個正整數指定輸入數據的寬度,但不可以實數指定小數位的寬 度,輸入項是地址表達式。47. switch 語句使用注意事項: (1 )switch 語句與 if 語句不同,僅能判斷一種關系:是否恒等;(2)switch語句中case子句的常量可以使整型常量、字符型常量、枚舉型數據,或是 整型常量表達式,不允許變量;( 3)在同一個 switch 中, case 子句的常量不能相同,在嵌套的 switch 語句中,不同層次的 switch 之間,可有相同的常量;(4) defauIt 子句可以省略。例如:default: printf (“
11、En”); (5) case和 default 子句只能在 switch 語句中使用,且 case 和default只起標號作用,可出現在switch中的任何位置;(6)case和default子句后面的語句序列允許由多個可執行語句組成,且不必用“”括起來,也可以為空語句;( 7) switch語句中可省略 break 語句,但省略后會改變流程。48. break 語句是限定轉向語句,它使流程跳出所在的結構,把流程轉向所在結構之后。continue 語句被稱為繼續語句。該語句的功能是使本次循環提前結束,即跳過循環體中 continue 語句后面尚未執行的循環體語句,繼續進行下一次循環的條件判別
12、。49. 在C語言中,一個程序必須有一個main ()函數,但是其文件就不一定,因為其可以通過鏈接來實現多個子函數放到這個主函數中, 主函數的位置是不固定的, 可以根據自己的愛 好和習慣來使用,在 C語言中任何函數都不能調用主函數,且與函數的位置有關。在C程序的函數中不能定義另一個函數。50. 在用fprintf輸入時,要將其轉換為二進制數形式放到文件中。51.由C語言構成的指令序列稱為 C源程序,源程序文件的后綴為" .c”。而目標程序為".obj”,可執行程序為“.exe”。52.在C語言中,合法的標識符可以由字母、數字和下劃線組成,且第一個字符必 須為字母或下劃線。5
13、3. C 語言規定必須以 main 作為主函數名。程序要從 main ()函數開始執行,最后在 main ()函數中結束。 54. 賦值運算符左側的操作數必須是一個變量。55. 在C語言中,函數的實參單元與形參單元在內存中分配不同的存儲單元。56. 在一個C語言源程序文件中所定義的全局變量,其作用域為:由具體定義位置和extern說明來決定范圍。 【全局變量是在函數外部任意位置上定義的變量,它的作用域是從變量定 義的位置開始, 到整個源文件結束止。當全局變量定義在后, 引用它的函數在前時,應該在 引用它的函數中用 extern 對此全局變量進行說明,以便通知編譯程序該變量是一個已在外 部定義了
14、的全局變量,這時全局變量的作用域從 extern 說明處起,延伸到該函數末尾。 】57. C語言中,凡是以“ #”號開頭的行,都成為“編譯預處理”。對C原程序進行編譯前,由編譯預處理程序對這些變異預處理命令進行處理。58. typedef 語句的作用僅僅是用“標識符”來表示已存在的“類型名” ,并未產生新的數據 類型。59. 共用體變量中的所有成員共享一段公共存儲區,所有成員的首地址相同。在每一個時刻所有的成員中只有一個有效,即只有最后一個被賦值的成員有效,其余的成員無效。60. C語言中注釋可以出現在任意位置;C語言一行內可以寫多個語句,一個語句可以寫在多行上;C語言編寫的程序可以放在多個程
15、序文件中。61. 標識符只能由數字、字母和下劃線組成,并且只能以字母和下劃線開頭。62. 在用基本輸出語句 printf 時,格式說明與輸出項的個數應該相同。如果格式說明的個數 少于輸出項的個數, 多余的輸出項不予輸出, 如果格式說明個數多余輸出項個數, 則對于多 余的格式項輸出不定制或 0。63. 二維數組定義和初始化允許省略行下標,不允許省略列下標。64. 預處理命令行是在系統對原程序進行編譯之前進行處理的,不是在程序執行的過程中。65. gets 和 getchar 函數用于從標準輸入設備終端讀入字符串和字符, 并非從磁盤文件讀入。66. 動態變量和靜態變量都是內存變量, 而寄存器變量不
16、保存在內存上, 而是直接存儲在 CPU 的寄存器中。變量的存儲類別有自動、靜態、寄存器、外部。67. C語言的源程序是由函數構成的,其基本單位是函數,每一個函數完成相對獨立的功能,其中至少包括一個主函數;C語言的書寫格式自由,一行可寫多條語句,一條語句也可寫在不同行上;C語言規定每個語句以分號結束??呻S時添加注釋,對程序沒影響。68. 由高級語言編寫的程序稱為“源程序” ,由二進制代碼表示的程序稱為“目標程序” 。由匯編語言編寫的程序稱為“匯編程序” 。對于計算機本身來說,它只能接收和處理由 0 到 1 的代碼構成的二進制指令和數據。所以計算機能識別的程序是“目標程序”。而計算機可以直接執行的是可執行程序,即后綴為.exe的程序。69. C語言源程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年廣東越秀區華樂街道辦事處招聘工作人員筆試真題
- 化工產品購銷服務合同標準文本
- 加盟小吃協議合同范例
- 勞務分包合同標準文本瓷磚
- 制式購銷合同樣本
- 分割贈與合同樣本
- 寫字樓大廈租賃合同標準文本
- 創業公司常用合同樣本
- 醫院食堂采購合同樣本
- 辦公用合同樣本
- e-fim otnm2000傳輸網子網級網管系統操作指南中文版
- GB/T 5231-2022加工銅及銅合金牌號和化學成分
- 白中英數字邏輯習題答案課件
- 強夯監理實施細則
- 《財務風險的識別與評估管理國內外文獻綜述》
- 井蓋管理應急預案
- 鵪鶉蛋脫殼機的設計
- 行為安全觀察behaviorbasedsafety研究復習過程
- 動火作業風險告知牌
- 鍋爐專業術語解釋及英文翻譯對照
- 《小石潭記》作業設計
評論
0/150
提交評論