C语言程序设计做题笔记之C语言基础知识(下)
C 語言是一種功能強大、簡潔的計算機語言,通過它可以編寫程序,指揮計算機完成指定的任務(wù)。我們可以利用C語言創(chuàng)建程序(即一組指令),并讓計算機依指令行 事。并且C是相當靈活的,用于執(zhí)行計算機程序能完成的幾乎所以的任務(wù),包括會計應(yīng)用程序、字處理程序、游戲、操作系統(tǒng)等。它不僅是更高級語言(如C++) 的基礎(chǔ),目前還以O(shè)bjective C的形式開發(fā)手機應(yīng)用程序。目前,C語言最新版本由ISO/IEC 9899:2011?文檔定義。 ? ? ? ? ? 數(shù)據(jù)結(jié)構(gòu)+算法=程序
-
1.1 C程序和程序設(shè)計 ??
?? (1)以下敘述中錯誤的是:
???????? A) C程序經(jīng)過編譯、連接步驟之后才能形成一個正真可以執(zhí)行的二進制機器指令文件
???????? B) 用C語言編寫的程序稱為源程序,它以ASCII代碼形式存放在一個文本文件中
???????? C) C語言中的每條可執(zhí)行語句和非執(zhí)行語句最終都將被轉(zhuǎn)換成二進制的機器指令
???????? D) C語言源程序經(jīng)編譯后生成后綴為.obj的目標程序
?????? 分析: C????在C語言中非執(zhí)行語句(如:宏定義在預(yù)編譯之后替換到代碼中,該命令本身也就不存在了)。
???????????????????? a. 源程序文件的后綴為 .c ? ?? b.源程序經(jīng)過C編譯生成后綴為 .obj的二進制文件(目標文件)? c.把目標文件與C語言各種庫函數(shù)連接起來生成后綴 .exe的可執(zhí)文件
?
?? (2)以下敘述中錯誤的是:
??????? A)?結(jié)構(gòu)化程序由順序、分支、循環(huán)三種基本結(jié)構(gòu)組成
??????? B) C語言是一種結(jié)構(gòu)化程序設(shè)計語言
??????? C)?使用三種基本結(jié)構(gòu)構(gòu)成的程序只能解決簡單問題
??????? D)?結(jié)構(gòu)化程序設(shè)計提倡模塊化的設(shè)計方法
???????? 分析:? C???由3種基本結(jié)構(gòu)組成的算法可以解決任何復(fù)雜的問題
??? ? ? ? ? ? ? ? ? (......后面還有好多題目,就不一一寫了)
?
?做題筆記知識歸納:
????? (1)算法:是指為解決某個特定問題而采取的確定且有限的步驟,在C語言中一個算法是用函數(shù)來實現(xiàn)的,即一個C語言程序可以實現(xiàn)多種算法。
?
????? (2)算法具有5個特征:? 1.有窮性??? 2.確定性??? 3.可行性???? 4.有零個或多個輸入?? 5.一個或多個輸出
?
????? (3)算法的描述有: 1.流程圖??? 2.盒圖(如N-S圖)? 3.偽代碼?? 4.?文字描述?? 5.程序代碼描述
?
????? (4)計算機不能直接處理C語言程序只能處理二進制代碼。
?
?? ?? (5)每一個C語言文件或函數(shù)都可以單獨編譯,但只有main函數(shù)的才可以執(zhí)行。
-
1.2 程序的構(gòu)成、main函數(shù)和其他函數(shù) ?
? (1)以下敘述中錯誤的是:
???????? A) C程序在運行過程中所有計算都以二進制方式進行
?
???????? B)?所有C程序都需要編譯鏈接無誤后才能進行運行
?
???????? C) C程序在運行過程中所有計算機都以十進制方式運行
?
???????? D) C程序中字符變量存放的是字符的ASCII值
?
? ? ? ?? 分析: C???? 計算機程序都是編譯為二進制的代碼,計算機才會執(zhí)行。
?
?? (2)以下敘述中正確的是:
??????? A)?在C程序中main函數(shù)的位置是固定的
?
??????? B) C程序中所有函數(shù)之間都可以互相調(diào)用
?
??????? C)?每個C程序文件中必須要有一個mian函數(shù)
?
??????? D)?在C程序的函數(shù)中不能定義另一個函數(shù)
?
??????? 分析:D ??? 主函數(shù)可以調(diào)用程序中的其他函數(shù),而其他函數(shù)不可以調(diào)用main函數(shù)。
?????????????????????? C語言規(guī)定,不能在函數(shù)的內(nèi)部定義函數(shù)。
????????????? (......后面還有好多題目,就不一一寫了)
??????
????? 做題筆記知識歸納:
?
????? (1)關(guān)鍵字 sizeof用于測試不同類型變量所占的內(nèi)存空間,返回所占的字節(jié)數(shù)。? sizeof(是測試內(nèi)存的運算符)
?
?
????? (2)在C語言中規(guī)定,允許函數(shù)的嵌套調(diào)用,即遞歸調(diào)用。
?
?
????? (3)在C語言中,不能存在過程的概念。
?
?
????? (4)在C語言中,函數(shù)允許單獨編譯,可以為單獨文件形式存在。
?
?
???? (5)用函數(shù)作為?程序模塊以實現(xiàn)C程序的模塊化,程序有多個?函數(shù)構(gòu)成,每個?函數(shù)可以實現(xiàn)一個具體的功能,實現(xiàn)程序的模塊化設(shè)計,故C語言用函數(shù)實現(xiàn)軟件的模塊化。
?
?
???? (6)調(diào)用函數(shù)的位置和調(diào)用沒有直接關(guān)系
?
-
1.3 ?程序的注釋、書寫格式及C語言風(fēng)格
?
?
? ? ?(1)以下四個程序中,完全正確的是:
???????? A)???????????? #include <stdio.h>
????????????????????????? main();
???????????????????????? {? /*/ Programming
??????????????????????????? /*/ printf("Programming!\n");}
????????
????????? B)?????????? ? #include <stdio.h>
????????????????????????? main()
???????????????????????? {? /* Programming */
??????????????????????????? printf("Programming!\n");}
?
???????? C)??????????? ? #include <stdio.h>
????????????????????????? main();
???????????????????????? {? /*/* Programming */*/
??????????????????????????? printf("Programming!\n");}
?
???????? D)???????????? ? #include <stdio.h>
????????????????????????? main();
???????????????????????? {? /* Programming */
??????????????????????????? printf("Programming!\n");}
?
? ? ? ?? 分析: B ???? main()后面不用跟分號(;),規(guī)定在注釋之間不可以在嵌套 "/*"和"*/"。
?
?? (2)以下敘述中正確的是:
??????? A) C程序書寫格式嚴格,要求一行內(nèi)只能寫一個語句
?
??????? B)?簡單C語句必須以分號結(jié)束
?
??????? C) C語言程序中的注釋必須與語句寫在同一行
?
??????? D) C程序中的注釋只能出現(xiàn)在程序的開始位置和語句的后面
?
??????? 分析:B ???? C語言書寫格式自由,一行內(nèi)可寫多條語句,一條語句也可以寫在同行上,可以寫一行或多行。
???????????????????????每條語句和數(shù)據(jù)定義的最后必須有一個分號。
?????????????????????? C語言編寫程序有很多的可移植性,可以放在多個程序文件中。
????????????? (......后面還有好多題目,就不一一寫了)
??????
????? 做題筆記知識歸納:
?
????? (1)程序可以包含一種或者幾種結(jié)構(gòu),不是必須包含三種結(jié)構(gòu),并且這三種基本結(jié)構(gòu)能解決復(fù)雜的問題也能解決小規(guī)模的問題。
?
?
????? (2)goto語句的使用會使程序容易發(fā)生錯誤不易讀。
?
?
????? (3)在數(shù)值常量中不允許夾帶空格。
?
?
????? (4) C語句后面要加分號(;),不加分號不能看成C語句。
?
-
1.4??標識符、常量和變量
? (1)以下選項中不合法的標識符是:
???????? A) FOR
?
???????? B) &a
?
???????? C) print
?
???????? D) _00
?
? ? ? ?? 分析: B ?????標識符要滿足字符為 a~z?以及 A~Z、數(shù)字字符 0~9和下劃線,其中數(shù)字不能開頭,不能是關(guān)鍵字。?大小寫是兩種不同的字符。
?
?? (2)以下選項中,能用作數(shù)據(jù)常量的是:
??????? A) 115L
?
??????? B) 0018
?
??????? C) 1.5e1.5
?
??????? D) o115
?
??????? 分析:A ????數(shù)據(jù)常量可有:?? 1.10進制??? 2.8進制數(shù)(數(shù)字0~7) ?? 3.16進制?? 4.指數(shù)法(指數(shù)部分須為整型)
????????????????????
????????????? (......后面還有好多題目,就不一一寫了)
??????
????? 做題筆記知識歸納:
?
????? (1)變量是指在程序運行過程中,其值能被改變的量。
?
?
????? (2)在C語言中,沒有定義邏輯類型,0代表假,非零代表真。
?
?
????? (3) 符號常量:在C語言中,用一個符號名來表示一個常量,稱為符號常量。一般在程序中利用宏定義來定義符號變量。
?
?
????? (4)標識符就是C語言中的變量名、函數(shù)名、數(shù)組名、文件名、類型名等。
?
?
-
1.5和1.6?? 整型數(shù)據(jù)和實型常量、變量
???(1)以下選項中,合法的一組C語言數(shù)值常量是:
???????? A)? 12.0Xa23 4.5e0
?
???????? B)? 028 .5e-3 -0xf
?
???????? C) .177 4e1.5 0abc
?
???????? D) 0x8A 10,000 3.e5
?
? ? ? ?? 分析: A ????浮點數(shù)據(jù)的指數(shù)形式表示常量中,C語言規(guī)定字母 e或E之前必須要有數(shù)字,且 e或E之后的指數(shù)必須為整數(shù)。
?
?? (2)以下選項中合法的實型常量是:
??????? A)? .914
?
??????? B)? 3.13e-2.1
?
??????? C) 0
?
??????? D) 2.0*10
?
??????? 分 析:A ????實型常量又稱實數(shù)或浮點數(shù)。??在C語言中可以用小數(shù)形式或指數(shù)形式兩種形式表示一個實型常量。? 1.小數(shù)形式:由數(shù)字和小數(shù)點組成的一種實數(shù)表示形式。例如 0.345、.123、0.0等是合法的實數(shù)。這種形式必須要有小數(shù) 點。????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 2.指數(shù)形式:在C語言中,用“e”或“E”后跟一個整數(shù)來表示以10為底的冪函數(shù),注意C語言規(guī)定字母 e或E之前必須要有數(shù)字,且 e或E之后的指數(shù)必須為整數(shù)。
????????????? (......后面還有好多題目,就不一一寫了)
??????
????? 做題筆記知識歸納:
?
????? (1)變量可以定義在程序中任何地方,屬于不同的變量。
?
?
-
1.7?字符型常量及字符變量
(1)以下定義語句中正確的是:
???????? A) char A=65+1,b='b';
?
???????? B) int a=b=0;
?
???????? C) float a=1,*b=&a,*c=&b;
?
???????? D) double a=0.0; b=1.1;
?
? ? ? ?? 分析: A ????對變量聲明類型且賦值的情況是不允許出現(xiàn)的,必須單獨定義且賦值。? C語言允許在一個類型說明后說明多個相同類型的變量,各變量之間要用逗號(,)隔開,而不是用分號(;)隔開。
??????????????????????在計算機存儲字符是姜字符相應(yīng)的ASCII碼以其對應(yīng)的二進制進行存放。
?
?? (2)以下選項中非法的C語言字符常量是:
??????? A) '9'
?
??????? B) '\09'
?
??????? C) '\x09'
?
??????? D) '\x9d'
?
??????? 分 析:B ????一個字符常量代表ASCII字符集中的一個字符,在程序中用單引號把一個字符括起來,也可以為轉(zhuǎn)義字符,轉(zhuǎn)義字符又稱反斜線字符,這些字符常量總 是以一個反斜線開頭后跟一個特定字符,用來代表某一個特定的ASCII字符,這些字符常量也必須括在一對單引號內(nèi),其中反斜線后的八進制數(shù)可以不用0開 頭,但是不能出現(xiàn)8和9字符出現(xiàn)。反斜線后的16進制只可由小寫字母x開頭。
????????????? (......后面還有好多題目,就不一一寫了)
??????
????? 做題筆記知識歸納:
?
????? (1)每一個字符變量被分配一個字符的內(nèi)容空間,只能存放一個字符。
?
?
????? (2)'\ddd'? 3位八進制代表一個ASCII字符?也可以 '\xhh'2位16進制代表一個ASCII字符。
?先休息會,待會在寫下篇試題題筆記..........
轉(zhuǎn)載于:https://www.cnblogs.com/stephenhuashao/p/4598063.html
總結(jié)
以上是生活随笔為你收集整理的C语言程序设计做题笔记之C语言基础知识(下)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 第27章 JDBC
- 下一篇: ABAP程序相互调用--SUBMIT