對於剛學計算機編程的同學來說,每一個編程知識都覺得很重要,下面小編為大家整理了相關大學C語言必背基礎知識,希望大家喜歡。
特別要注意:C語言中時用非0表示邏輯真的,用0表示邏輯假的。
C語言有構造類型,沒有邏輯類型。
關係運算符號:注意<=的寫法,==和=的區別!
if只管後面一個語句,要管多個,請用大括號!
1)關係表達式:
a、表達式的數值只能為1(表示為真),或0(表示假)。
如 9>8這個關係表達式是真的,所以9>8這個表達式的數值就是1。
如 7<6這個關係表達式是假的,所以7<6這個表達式的數值就是0
b、就是int x=1,y=0,z=2;
x<y<z是真還是假?代入為1<0<2,從數學的角度出發肯定是錯的,但是如果是C語言那麼就是正確的!因為要1<0為假得到0,表達式就變成了0<2那麼運算結果就是1,稱為了真的了!
c、等號和賦值的區別!一定記住&34;就是賦值,&34;才是等號。雖然很多人可以背誦,但我依然要大家一定好好記住,否則,做錯了,我一定會強烈的鄙視你!
2)邏輯表達式:
核心:表達式的數值只能為1(表示為真),或0(表示假)。
a) 共有&& || !三種邏輯運算符號。
b) !>&&>|| 優先的級別。
c) 注意短路現象。考試比較喜歡考到。詳細請見書上例子,一定要會做例1和例2
d) 表示 x 小於0大於10的方法。
0<x<10是不行的(一定記住)。是先計算0<x 得到的結果為1或者0;再用0,或1與10比較得到的總是真(為1)。所以一定要用 (0<x)&&(x<10)表示比0大比10小。
3)if 語句
a、else 是與最接近的if且沒有else的語句匹配。
b、交換的程序寫法:t=x;x=y;y=t;
c、if(a<b)t=a;a=b;b=t; if(a<b){t=a;a=b;b=t;}兩個的區別,考試多次考到了!
d、單獨的if語句:if(a<b)t=a;
標準的if語句:if(a<b)min=a; else min=b;
嵌套的if語句:if(a<b) if(b>c)printf(&34;);
多選一的if語句if(a= =t)printf(&34;);else if(b= =t)printf(&34;);else if(c= =t)printf(&34;);else pritnf(&34;);
通過習題,要熟悉以上幾種if語句!
經典考題:結合上面四種if語句題型做題,答錯了,請自行了斷!預備,開始!
int a=1,b=0; if(!a)b++; else if(a= =0) if(a)b+=2; else b+=3;請問b的值是多少?
如果沒有看懂題目,你千萬不要自行了斷,這樣看得懂不會做的人才會有理由的活著。
正確的是b為3。
int a=1,b=0;
if(!a)b++; 是假的不執行
else if(a= =0) 是假的不執行
if(a)b+=2; 屬於else if的嵌套if語句,不執行。
else b+=3; if-else-if語句沒有一個正確的,就執行else的語句!
4)條件表達式:
表達式1 ?表達式2 :表達式3
a、考試口訣:真前假後。
b、注意是當表達式1的數值是非0是,才採用表達式2的數值作為整個運算結果,當表達式1的數值為0時,就用表達式3的數值作為整個的結果。
c、int a=1,b=2,c=3,d=4,e=5;
k=a>b?c:d>e?d:e;求k的數值是多少?答案為san
5)switch語句:
a) 執行的流程一定要弄懂!上課時候詳細的過程講了,請自己一定弄懂!
b)注意有break 和沒有break的差別,書上的兩個例子,沒有break時候,只要有一個case匹配了,剩下的都要執行,有break則是直接跳出了swiche語句。break在C語言中就是分手,一刀兩斷的意思。
c) switch只可以和break一起用,不可以和continue用。
d) switch(x) x:是整型常量,字符型常量,枚舉型數據。
{case 1:…。不可以是變量。 case 2:…。 } e)switch是必考題型,請大家一定要完成書上的課後的switch的習題。
大學C語言複習重點
1)程序結構是三種:順序結構 、選擇結構(分支結構)、循環結構。
2)讀程序都要從main()入口, 然後從最上面順序往下讀(碰到循環做循環,碰到選擇做選擇),有且只有一個main函數。
3)計算機的數據在電腦中保存是以 二進位的形式。數據存放的位置就是 他的地址。
4)bit是位 是指為0 或者1。byte 是指字節, 一個字節 = 八個位。
概念常考到的:
1、編譯預處理不是C語言的一部分,不佔運行時間,不要加分號。C語言編譯的程序稱為源程序,它以ASCII數值存放在文本文件中。
2、define PI 3.1415926; 這個寫法是錯誤的,一定不能出現分號。
3、每個C語言程序中main函數是有且只有一個。
4、在函數中不可以再定義函數。
5、算法:可以沒有輸入,但是一定要有輸出。
6、break可用於循環結構和switch語句。
7、逗號運算符的級別最低,賦值的級別倒數第二。
C語言基礎知識大全
用一個簡單的c程序例子,介紹c語言的基本構成、格式、以及良好的書寫風格,使小夥伴對c語言有個初步認識。
例1:計算兩個整數之和的c程序:
34;a=%d,b=%d,sum=%d\n&34;主函數&34;a=%d,b=%d,sum=%d\n&include
注意:(1)以34;預編譯處理命令&12 , 8m , tr3:4 , yes no
標識符不能與程序中具有特殊意義的關鍵字相同,不能與用戶編制的函數名、C語言庫函數相同,在程序中各種標識符儘量不要重複,以便區分。選擇變量名和其他標識符時,應注意做到 &34;。
標識符分為如下三類:
1、關鍵字
關鍵字是具有特定含義的,專門用來說明c語言特定成分的一類標識符,不能用作用戶的標識符。
auto break case char union do double else enum extern goto if int long short signed static sizof struct switch unsigned void for while typedef continue float return typedef default
2、預定義標識符
預定義標識符在c語言中也有特定的含義,但可以用作用戶標識符,預定義標識符分為兩類:
(1)、庫函數名字,比如(printf,scanf,sin,isdigit等) (2)、編譯處理命令名,比如(define,include)
3、用戶標識符
用戶根據需要自己定義的標識符稱為用戶標識符。無論如何自定義標識符,都必須符合標識符的三條命名規則。
常量
在程序運行中,其值不能被改變的量稱為常量。常量有5種類型:整型常量、實型常量、字符常量、字符串常量和符號常量。
(一)數值轉換
數字的四種表現形式:
①:二進位:所有數字由0,1構成,逢二進一,二進位數中不會出現2.。例:②:八進位:以數字0(注意不是以字母O,o)開頭,所有數字由0~7構成,逢八進一,八進位數中不會出現8。例:0112,0123,077等 ③:十進位:所有數字由0~9構成,逢十進一,十進位數中不會出現10。例:0,12,-15等 ④:十六進位:以0x或者0X(數字0加字母x)開頭,所有數字由0~9,A~F(或者a~f)構成,逢十六進一(其中A、B、C、D、E、F分別代表10、11、12、13、14、15) 例:0x4A、0X14c7等
在計算機內部,數字均以二進位形式表示和存放,用戶輸入的普通十進位數字都要被計算機轉換成二進位才能在計算機內部存儲,同樣計算機的運算結果也為二進位,一般要將其轉換成十進位數再輸出給用戶閱讀,這種轉換通常由計算機自動實現。
(1)將十進位轉換二進位、八進位和十六進位
除法:將十進位數除以2,記錄餘數,得到的商繼續除以2,直到商為0,然後將各次相處所得的餘數從後往前逆序排列,所得餘數數字序列就是該十進位數對應的二進位數。八進位和十六進位轉換方法同上。
例:十進位數13轉換成二進位數的值為1101,轉換八進位為015,轉換成十六進位為D.
(2)將二進位、八進位和十六進位轉換成十進位
乘積求和:將二進位的每一位從低位到高位(右邊為低位,左邊為高位)分別乘以20,21,22。。。。,然後將這些積求和。
例如:=(13)10 (317)8= (23E)16=
(3)二進位與八進位、十六進位數之間的相互轉換
①:二進位轉八進位:從右往左每三位一組轉換成十進位數,將所得數據組合就是對應的八進位數(注意:高位不足三位補零)。例:(010 110 111)2=(267)8 ②:二進位轉十六進位:從右往左每四位一組轉換成十進位數,將所得數據組合就是對應的十六進位數(注意:高位不足四位補零)。例:(0101 1011)2=(5B)16 ③:八進位轉化二進位:每一位數字轉換為三位二進位數字 例:(13)8=(001 011)2= (注意:去掉前面的兩個00,因為0在高位沒有意義) ④:十六進位轉化二進位:每一位數字轉換為四位二進位數字 例:(E3)16=(1110 0011)2
二)整型常量
整型常量有3種形式:十進位整型常量、八進位整型常量和十六進位整型常量。
(注意:c語言中沒有直接表示二進位的整型常量,在c語言源程序中不會出現二進位。)
書寫方式如下:
十進位整型常量:123 , 0 ,-24 , 85L(長整型常量) 等 八進位整型常量:051 ,-026 ,0773 等 十六進位整型常量:0x55 , 0x1101 , 0x , 0x5AC0 , -0xFF。其中L為長整型。
(三)實行常量
實型常量有兩種表示形式:小數形式和指數形式。
小數形式:5.4 0.074 -23.0 指數形式:5.4e0 4.3e-3 -3.3e4
(1)小數部分為0的實型常量,可以寫為453.0 或453。(2)用小數表示時,小數點的兩邊必須有數,不能寫成&34;和&34;,而應該寫成&34;和&34;。(3)用指數寫法時,e前必須有數字,e後面的指數必須為整數(注意:整數階碼可以是正數,負數,也可以是八進位數、十六進位數,但必須為整數)。
(四)字符常量
字符常量的標誌是一對單引號&39;,c語言中的字符常量有兩類:
(1)由一對單引號括起來的一個字符,如&39;, &39; ,&&39;\n&34;\&34;\&39; 單引號符 39 \&34;ni hao&34;happy&34;34;定義的常量,在C程序中可用標識符代表一個常量。
例:計算圓的面積的c程序。
define PI 3. main() { float r,s; r=12.5; S=PI *r*r; printf(&34;,s); }
說明:
34;有符號&34;無符號&39;A&39;B&34;低&34;&34;&34;&34;&34;&34;除&34;除&34;自右向左&34;自右向左&34;i++&34;++i&34;i--&34;--i&34;=&34;將10的值賦值給變量a&34;a-=a*a&34;a+=-132&34;y=%d,x=%d&34;&&&34;||&34;真&34;真&34;短路&34;一假必假&34;一真必真&34;~&34;&&34;∧&34;|&34;<<&34;<< &34;<<&34;&34;&34;&34;>>&34;>> &34;>>"右邊的數指定移動的位數。
例如:設 a=15, a>>2 表示把右移為十進位3)。
應該說明的是,對於有符號數,在右移時,符號位將隨同移動。當為正數時,最高位補0,而為負數時,符號位為1,最高位是補0或是補1 取決於編譯系統的規定。
例3:設二進位數a是00 ,若通過異或運算a∧b 使a的高4位取反,低4位不變,則二進位數b是。
解析:異或運算常用來使特定位翻轉,只要使需翻轉的位與1進行異或操作就可以了,因為原數中值為1的位與1進行異或運算得0 ,原數中值為0的位與1進行異或運算結果得1。而與0進行異或的位將保持原值。異或運算還可用來交換兩個值,不用臨時變量。
如 int a=3 , b=4;,想將a與b的值互換,可用如下語句實現:a=a∧b;
b=b∧a;
a=a∧b;
C語言作為一門非常適合編程入門的語言,打好基礎的重要性不言而喻。
還有很多知識沒有列出,建議到慕課去學習一門入門的C語言課程。了解C語言的知識,才能更好的編程。
更多多內容,歡迎關注百家號:小亮談電氣。微信公眾號:電氣學苑。