1.逗號表達式: (a蜓斧,b)? 值為b
2.C語言中的指數(shù)形式,字母e之前必須有數(shù)字睁冬,且e后面指數(shù)必須為整數(shù)挎春。
3.使用定義變量一定得先初始化。
4.C語言中長整型數(shù)為數(shù)值后加一個L或1字符豆拨。
5.C語言的標識符的定義為以字母或下劃線開頭的直奋,由字母,數(shù)字施禾,字符脚线,下劃線組成的字符串。而且標識符不能與關鍵字相同弥搞。
6.整型(int)常量即整常數(shù)邮绿,c整常數(shù)可以用以下三種形式表示:
①十進制整數(shù)。如123攀例,-456船逮,0。
②八進制整數(shù)粤铭,以0開頭的數(shù)是八進制數(shù)挖胃。如0123表示八進制數(shù)123,即(123)8
③十六進制整數(shù)梆惯,以0x開頭的數(shù)是十六進制數(shù)酱鸭。如0x123代表十六進制數(shù)123,即(123)16
? 一個int型的值范圍是-2的15次方~2的15次方垛吗,即-32768~32767
7.C語言中歸納起來凹髓,基本類型數(shù)據(jù)有以下幾種:
? [Signed] char;
? Unsigned char;
? [Signed] short [int];
? Unsigned short [int];
? [Signed] long [int];
? Unsigned long [int];
? float;
? double;
? long double;
8.可以把define定義為用戶標示符,不能把if定義為用戶標示符职烧。
? 注意: 不要把define誤認為是宏定義命名扁誓,正確的宏定義命名為 #define
? ? ? if屬于系統(tǒng)定義的32個關鍵字之一防泵。
9.函數(shù)pow(x,y)的功能是計算x的y次方的值蚀之,在c語言中沒有^ 這個符號
? 函數(shù)exp(x)表示函數(shù)參數(shù)x為冪的指數(shù)[ e的x次方 ]
10.數(shù)值常量分為不同的類型: 整型常量,實型常量捷泞,字符常量足删。
①在c語言中使用的整常數(shù)有八進制,十六進制和十進制三種锁右。
? 十進制常數(shù): 十進制整常數(shù)沒有前綴失受,其數(shù)碼取值為0~9讶泰。
? 八進制整常數(shù): 八進制整常數(shù)必須以0開頭,即以0做為八進制的前綴拂到,數(shù)碼取值為0~7痪署,八進制常數(shù)通常是無符號數(shù)。
? 十六進制整常數(shù): 其前綴是0X或0x兄旬,其數(shù)碼取值為0~9狼犯,A~F或a~f。
②實型常量也稱為實數(shù)或者浮點數(shù)领铐。C語言中悯森,實數(shù)只采用十進制。它有兩種形式: 十進制小數(shù)形式绪撵,指數(shù)形式瓢姻。
? 十進制小數(shù)形式,由數(shù)碼0~9和小數(shù)點組成音诈。
? 指數(shù)形式幻碱,由十進制數(shù)加階碼標志"e"或"E"以及階碼(階碼只能為整數(shù),可以帶符號)組成细溅。
11.C語言標準只規(guī)定了char型占用內(nèi)存大小為1收班,而long,int谒兄,short等類型數(shù)據(jù)占用內(nèi)存大小由編譯系統(tǒng)決定摔桦。
12.C程序由函數(shù)構成的。(C程序的基本組成單位是函數(shù)承疲。)
13.C語言中的注釋部分只是用于閱讀邻耕,對程序的運行不起作用,注釋間的任何內(nèi)容都被編譯程序忽略燕鸽,但是不可以夾在變量名或者關鍵字的中間兄世。
14.不同類型的數(shù)據(jù)在進行運算時,要先轉(zhuǎn)換成同一類型啊研,然后進行運算御滩。
? 轉(zhuǎn)換的規(guī)則是char,short→int→unsigned→long→double党远。
15.所謂常量削解,是指在程序運行過程中,其值不能被改變的量沟娱。
16.《?有以下程序
mainO
{ unsigned int a,
int b=-1;a=b
prinf("%u", a);
程序運行后的輸出結果是( )
本題考的是不同類型數(shù)據(jù)間的混合運算氛驮。
當運算對象為不同類型時,數(shù)據(jù)的轉(zhuǎn)換方向為int ->unsi gned ->long ->double,本題程序中的變量b為int型济似,先要轉(zhuǎn)換為unsi gned型矫废,int型變量的數(shù)值范圍為-32768 32767,最高位為符號位盏缤,而unsi gned所表示的數(shù)的范圍為0--65535,它的最高位為數(shù)值位。由于內(nèi)存中是以補碼形式存儲數(shù)據(jù)的蓖扑,所以整型的”-1”在內(nèi)存中的表示為16個1唉铜, 最高位的”1'表示符號負,將它轉(zhuǎn)換為unsi gned類型律杠,即將原符號位表示符號的1“看成數(shù)值打毛,所以就得到16個數(shù)值位1,即65535俩功。
17.? i++;? ++i;? …? 不是賦值語句
等價于 i=i+1;
18.以下程序的輸出結果是___幻枉。
#include <stdio. h》mainO
int a=2, c=5;
printf( a=%%d, b=%%d\n" ,a,c);
①a=%2, b=%5? ②a=2, b=5
③a=%%d, b=%%d? ④ a=%d, b=%d
——答案解析——
本題的考查點是格式控制字符的應用。
printf( )函數(shù):當“格式控制”字符串中連續(xù)使用兩個“%”符號時诡蜓,表示要輸出字符%”熬甫,所以,a, c兩個變量的值并不帶入輸出字符串蔓罚,最后的打印結果應當是a=%d, b=%d
故本題答案為D椿肩。
19.以下非法的賦值語句是__。
O①n=(i=2, ++i):? ②j++,
③++(i+1);? ④ x=j>0;
參考答案:
本題的考查點是賦值語句豺谈。
選項①是將一個逗號表達式的值賦給一一個變量;
選項②是自增運算;
選項③中(i+1)是一個常量郑象,常量不能進行自增運算;
選項④是將一個整數(shù)賦給一 個變量。故本題答案為③茬末。
20.有以下程序
mainO
{ int a=666, b=888;
printf( %d\n' ,a,b);}
程序運行后的輸出結果是
①錯誤信息? ②666
③888? ④666, 888
參考答案:
本題考查的是輸出格式厂榛。
printf (函數(shù)中,當格式轉(zhuǎn)換說明符個數(shù)少于輸出項個數(shù)時丽惭,多余的輸出項不予輸出击奶。所以本題答案為②。
21.雙精度變量(double型)责掏,在輸入時必須以f(lf)或e(le)的形式柜砾。
22.scanf和printf是c語言提供的輸入和輸出函數(shù)。
? 由printf輸出的數(shù)據(jù)都隱含右對齊换衬。
? 由printf輸出的數(shù)據(jù)的實際精度是由格式控制中的小數(shù)的域?qū)拋硗耆珱Q定的痰驱。
23.int型,float型,double型對應的輸入數(shù)據(jù)格式分別是%d,%f,%lf
24.設有定義:
int n = 1234;
doub1e x = 3. 1415;
則語句
printf("%3d,%1.3f\n”, n, x);的輸出結果是
①1234, 3. 142? ②123, 3. 142
③1234, 3. 141? ④123,3. 141
本題考查的是格式控制。
本題中已定義好了n瞳浦、x的值担映,%nd, 若n的值小于該數(shù)值的長度,則按該數(shù)值輸出术幔,若n的值大于該數(shù)值的長度則在數(shù)值的右邊補0; %1. 3f中3代表小數(shù)位的位數(shù)另萤,要遵守四舍五入的規(guī)則。
故本題答案為①诅挑。
25.&&進行"短路"運算: 當運算符"&&"左邊表達式的值為零時四敞,則右邊表達式就不再進行運算。
26.sizeof返回對象或者類型所占的內(nèi)存字節(jié)數(shù)拔妥。char忿危,int,float類型占用的字節(jié)數(shù)均為4没龙。
27.在c語言程序中铺厨,可以用一個符號名來代表一個常量,稱為符號常量硬纤。(符號常量是指在程序中通過宏定義用一個符號名來代表的一個常量解滓。)
28.
C語言運算符的優(yōu)先級
? 一、從上往下? 運算符優(yōu)先級依次降低
1筝家、括號以及? .(結構體變量運用成員運算符)? ->(結構體指針引用成員運算符)
2洼裤、單目運算符: !? ~? ++? --? &(取地址符)? *(取內(nèi)容)? sizeof()
3、算數(shù)運算符: *? /? %+? -
4溪王、位運算符: <<? >>
5腮鞍、關系運算符: >=? >? <? <=? ==? ? ? !=
6、位運算符:&? ^? |
7莹菱、邏輯運算符: &&? ||
8移国、條件運算符: ?:;
9、(復合)賦值運算符: =? +=? -=? ....
10道伟、逗號運算符: 迹缀,
? 二、左結合(從右向左運算):(復合)賦值運算符蜜徽、邏輯非裹芝、取反(~ )、前置自增減運算符右結合(從左向右運算)
注意逗號運算符的用法:
帶有括號的表達式, 不帶有括號的表達式.
int a,b;
int c = (a = 10,b = 30, a= a+b,b = a+b);? //? c = 70
int c = a = 10,b = 30, a= a+b;? //? c = 10
29.若有以下程序
#include <stdio. h>mainO
{ int a=0, b=0, c=0;
c= (a -= ++a)娜汁, (a+=b, b+=4);
printf("%d, %d, %d\n",a,b,c);}
則程序的輸出結果是
① 0,4,0? ② 0,4, 4?
③1,4,1? ④1,4,4
本題考查的是算術運算符嫂易。
(a-=++a)
即a=a- (++a) =1-1=0;
c=(a-=++a)=0;
a+=b=0+0=0;
b+=4=0+4=4。故本題答案為①掐禁。
30.所謂變量是指在程序運行過程中其值可以改變的量怜械。
? 程序中用到的所有變量都必須有一個名字作為標識,變量的名字由用戶定義傅事,它必須符合標示的命名規(guī)則缕允。
? 一個變量實質(zhì)上代表了內(nèi)存中的某個存儲單元。
? C語言規(guī)定蹭越,程序中所有的變量都必須先定義后使用障本。
31.C語言的標識符有: 關鍵字,預定義標識符,用戶標識符三類驾霜。
32.基本運算符:? ? sizeof: 求字節(jié)運算符? (): 函數(shù)調(diào)用? &&: 邏輯與
33.整型常量和實型常量又稱數(shù)值型常量案训。
34.整型變量可以分為int型,short型粪糙,long型强霎,unsigned型四種。
? 在C程序中的八進制和十六進制是整型蓉冈。
? 八進制數(shù)的開頭必須是以數(shù)字"0"城舞。
? 二進制可以用0和1作為開頭字母。
35.按位與(&): 只有當兩個數(shù)(二進制形式)的同一位數(shù)都為1時才為1
? a&b? ? ? ? inputs1: 11111100
? ? ? ? ? ? ? inputs2: 00111111
? ? ? ? ? ? ? result:? 00111100
? 按位或(|): 兩個數(shù)的同一位數(shù)都不為0(即任意一個為1或都為1)時寞酿,所得結果對應位置設為1家夺。
? a|b? ? ? ? inputs1: 01111100
? ? ? ? ? ? ? inputs2: 00111111
? ? ? ? ? ? ? result:? 01111111
? 按位異或(^): 當兩個數(shù)的同一位數(shù)不相同時就設為1,如果相同就設為0伐弹。
? a^b? ? ? ? inputs1: 01111100
? ? ? ? ? ? ? inputs2: 00111111
? ? ? ? ? ? ? ? result:? 01000011
? 按位取反(~): 對一個操作數(shù)的每一位都取反拉馋。
? ? a? ? ? ? ? ? inputs: 00001111
? ? ~a? ? ? ? ? result: 11110000
? 按位左移(<<):
? ? ? ? ? 1111<<3? (從右往左,每一位數(shù)都左移3個位置)
? ? result: 1000? (空位用0填充掸茅,左端3個原數(shù)據(jù)被丟棄)
? 按位右移(>>):
? ? ? ? ? ? 1011>>2(從左往右椅邓,每位數(shù)右移)
? result: 0010
36.C語言提供了三大類數(shù)據(jù)類型即基本類型,復合類型和地址類型昧狮。
? ①基本類型只代表單個數(shù)據(jù)景馁。
? ②復合類型由基本類型組合而成,可代表一批數(shù)據(jù)逗鸣。
? ③地址類型可直接表示內(nèi)存中的地址合住。
C語言支持的五種基本數(shù)據(jù)類型:
? ①字符型: 表示單個字符。
? ②整型: 表示整數(shù)撒璧,包括基本整型透葛,短整型,長整型和無符號整型卿樱。
? ③浮點型: 表示實數(shù)僚害,精度為6~7位為有效數(shù)字。
37.邏輯運算符兩側的運算對象繁调,不但可以是0和1萨蚕,也可以是任意基本類型和指針類型的數(shù)據(jù),還可以是任意合法表達式蹄胰。
38.if后面的表達式岳遥,可以是關系表達式或邏輯表達式,也可以是其它類型的數(shù)據(jù)裕寨,如整型浩蓉,實型派继,字符型等。
39.邏輯值"真"可用1表示捻艳,邏輯值"假"可用0表示驾窟。若只處理真和假兩種邏輯值,邏輯值0和1使用整型值即可讯泣。
40.? 0<x<5? 此寫法是數(shù)字中的寫法纫普,并不是c語言中表達式的正確寫法阅悍,它的值與x無關好渠,并且行恒為真。
41.在switch語句中节视,緊跟在switch后一對圓括號中的表達式可以是整型表達式及字符型表達式等拳锚,case后的常量表達式的類型必須與switch后圓括號中的表達式類型相同。
42.scanf函數(shù)不識別空格寻行,回車符霍掺,制表符。(即遇到這些符號時就停止輸入)
? getchar( )會讀取輸入的空格拌蜘。
43.賦值表達式的形式為: 變量名=表達式杆烁。
44.字母e或E之前必須得有數(shù)字,之后的數(shù)字必須為整型简卧。
45.在c語言函數(shù)內(nèi)部兔魂,可以調(diào)用嵌套函數(shù),但是不可以定義局部嵌套函數(shù)举娩。
46.在函數(shù)內(nèi)部和復合語句內(nèi)部定義的變量析校,稱為局部變量。局部變量既可以說明成自動類铜涉,也可說明為靜態(tài)類智玻。
? 在c語言中,由用戶命名的標識符都有一個有效的作用芙代。所謂的標識符的作用域就是指程序中的某一部分吊奢,在這一部分中,該標識符是有定義的纹烹,可以被c編譯和連接程序所識別页滚。
47.每一個可執(zhí)行的c程序都必須有且只有一個main函數(shù),但是滔韵,并不是每個c程序文件都應該包含一個main函數(shù)逻谦,main函數(shù)可以放在任意位置。
48.若有定義: double x ; 則表達式x=0,x+10,x++的值為0.0
? X被定義為double類型陪蜻,賦值過程中會出現(xiàn)強制類型轉(zhuǎn)換邦马。逗號表達式中,最后一個表達式的值就是此逗號表達式的值,所以整個表達式的值為x++的值滋将,x=0邻悬,x++的表達式為0.0,x的值為1.0
49.C語言中的基本運算符為: +随闽,-父丰,*,/掘宪,%? (加蛾扇,減,乘魏滚,除镀首,求余)
50.用戶標識符與關鍵字相同,則在對程序進行編譯時鼠次,系統(tǒng)將給出出錯信息更哄。
如果用戶標識符與預定義標識符相同,系統(tǒng)并不報錯腥寇,只是該預定標識符將失去原定含義成翩,代之以用戶確認的含義,這樣有可能會引發(fā)一些運行時錯誤赦役。
60整型常量可以用十進制麻敌,八進制和十六進制等形式表示。
只有十進制的數(shù)可以是負數(shù)扩劝,而八進制和十六進制只能是正數(shù)庸论。
61.判斷邏輯表達式: a++&&b++,若左側的值為假棒呛,右側就不要執(zhí)行聂示。
? 判斷邏輯表達式: a++||b++,若左側的值為真簇秒,右側就不需要執(zhí)行鱼喉。(稱邏輯表達式的"短路"現(xiàn)象)
? 關系運算符的結果: 非0和0。
? else 不是一條獨立的語句趋观,它只是if語句的一部分扛禽。
62.只能在循環(huán)體內(nèi)和switch語句體內(nèi)使用break語句。