版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
題型:20*2=402*10=20選擇題填空題改錯(cuò)題編程題2*10=202*10=20題型:20*2=402*10=20選擇題填空題改錯(cuò)題編程題2改錯(cuò)、填空多考點(diǎn):#include<math.h>
預(yù)處理#defineN10宏定義floatff(floata,floatb,floatc);
函數(shù)聲明main()主函數(shù){inti,j,a[10],*p,sum,x=1;變量定義sum=0;賦值scanf(“%d”,&a[0]);輸入語(yǔ)句,參數(shù)是地址if(i==0)for(;;),while語(yǔ)句的考察,注意表達(dá)式的判斷,循環(huán)體語(yǔ)句的判斷。輸出語(yǔ)句}}改錯(cuò)、填空多考點(diǎn):#include<math.h>函數(shù)調(diào)用intss(inta,intb[],int*q){}main(){intx,s[10],y;ss(x,s,&y);
實(shí)參和形參個(gè)數(shù)相同,類型相同。}函數(shù)調(diào)用intss(inta,intb[],int*雙層循環(huán)inta[5][6]for(i=0;i<5;i++)for(j=5;j>=0;j--)i,j的范圍if(i%2==0)奇數(shù)位對(duì)應(yīng)偶數(shù)下標(biāo)a[i][j]=i+j+1;規(guī)律雙層循環(huán)inta[5][6]總體上必須清楚的:
1)程序結(jié)構(gòu)是三種:順序結(jié)構(gòu)
,循環(huán)結(jié)構(gòu)(三個(gè)循環(huán)結(jié)構(gòu)),選擇結(jié)構(gòu)(if和
switch)。
2)讀程序都要從main()入口,然后從最上面順序往下讀(碰到循環(huán)做循環(huán),碰到選擇做選擇)。
3)計(jì)算機(jī)的數(shù)據(jù)在電腦中保存是以二進(jìn)制的形式。數(shù)據(jù)存放的位置就是他的地址。
4)二進(jìn)制如何劃成十進(jìn)制。總體上必須清楚的:
1)程序結(jié)構(gòu)是三種:順序結(jié)構(gòu),循環(huán)概念??嫉降模?/p>
1、編譯預(yù)處理不是C語(yǔ)言的一部分,不占運(yùn)行時(shí)間。C語(yǔ)言編譯的程序稱為源程序,它以ASCII數(shù)值存放在文本文件中。
2、每個(gè)C語(yǔ)言程序中main函數(shù)是有且只有一個(gè)。
3、在函數(shù)中不可以再定義函數(shù)。定義不可嵌套,但調(diào)用可以。
4、break可用于循環(huán)結(jié)構(gòu)和switch語(yǔ)句。5、優(yōu)先級(jí):?jiǎn)文?++,--,!)>算術(shù)表達(dá)式>關(guān)系表達(dá)式>邏輯表達(dá)式>三目>賦值。
概念??嫉降模?/p>
1、編譯預(yù)處理不是C語(yǔ)言的一部分,不占運(yùn)行時(shí)14.C語(yǔ)言的下列運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是(
)。A.++ B.+= C.|| D.!=下列敘述正確的是()
A為提高程序運(yùn)行速度可在源程序中加入一些宏定義
B一個(gè)C語(yǔ)言源程序只能有一條預(yù)處理命令C宏定義不占用程序運(yùn)行時(shí)間,但與程序中的語(yǔ)句一樣需要編程D宏定義中的宏名必須用大寫字母表示
AC14.C語(yǔ)言的下列運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是()。第一章1)合法的用戶標(biāo)識(shí)符由字母,數(shù)字,下劃線組成。并且第一個(gè)必須為字母或則是下劃線。關(guān)鍵字不可以作為用戶標(biāo)識(shí)符號(hào)。main
define
scanf
printf都是關(guān)鍵字。If是可以做為用戶標(biāo)識(shí)符。因?yàn)镮f中的第一個(gè)字母大寫了,所以不是關(guān)鍵字。
2)實(shí)型數(shù)據(jù)的合法形式:
2.333e-1就是合法的,且數(shù)據(jù)是2.333×10-1。
考試口訣:e前e后必有數(shù),e后必為整數(shù)。2.3小數(shù)點(diǎn)前后可省略其中一個(gè)。
3)字符數(shù)據(jù)的合法形式::
'1'是字符占一個(gè)字節(jié),"1"是字符串占兩個(gè)字節(jié)(含有一個(gè)結(jié)束符號(hào)‘\0’)。
'0'的ASCII數(shù)值表示為48,'a'的ASCII數(shù)值是97,'A'的ASCII數(shù)值是65。4)char是1字節(jié),int是2字節(jié),long是4字節(jié),float是4個(gè)字節(jié),double是8字節(jié)
第一章1)合法的用戶標(biāo)識(shí)符由字母,數(shù)字,下劃線組成。并且第一
5)在轉(zhuǎn)義字符中,’\x6d’十六進(jìn)制數(shù)。
‘\141’八進(jìn)制數(shù)。
‘\108’是非法的,因?yàn)椴豢梢猿霈F(xiàn)8。
6)強(qiáng)制類型轉(zhuǎn)換:
一定是(int)a不是
int(a),類型上一定有括號(hào)的。
注意(int)(3.6+3.6)=7和(int)
3.6+3.6=6.6的區(qū)別。
7)表達(dá)式的考查:
是表達(dá)式就一定有數(shù)值。
賦值表達(dá)式:表達(dá)式左邊一定是一個(gè)變量。
自加、自減表達(dá)式:假設(shè)a=5,++a(是為6),
a++(為5);考試口訣:++在前先加后賦,++在后先賦后加。
逗號(hào)表達(dá)式:優(yōu)先級(jí)別最低;表達(dá)式的數(shù)值逗號(hào)最右邊的那個(gè)表達(dá)式的數(shù)值。(2,3,4)的表達(dá)式的數(shù)值就是4。
8)位運(yùn)算的考查:會(huì)有一到二題考試題目。
<<左移一位表示乘以2,2位乘4,3位乘8;>>右移一位表示除以2,2位除4,3位除6。
9)%(求余)符號(hào)兩邊要求是整數(shù)。
10)取整丟小數(shù)的情況:1、(int)1.6=1;2、1/2=0;
5)在轉(zhuǎn)義字符中,’\x6d’十六進(jìn)制數(shù)。
18.(
)為正確的變量名。A.-k15 B.int C.k_5 D.k.jeep19.(
)為正確的字符常量。A.''\\'' B."\24m" C."c" D.'M'22.以下選項(xiàng)中,合法的實(shí)型常數(shù)是(
)。A.E-3 B..2E1 C.1E.5 D.1.5E29.語(yǔ)句
k=(m=5,n=++m);運(yùn)行之后,變量k、m、n的值依次為(
)。A.5,5,6 B.5,6,5 C.6,6,5 D.6,6,635.若有定義:intm=4,n=5;floatk;,則以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是(
)。A.(m+n)*=k B.m=(n==5) C.k=float(n)/m D.n%2.544.若有定義
inti=1,j=9;則表達(dá)式
(++j)*(i--)的值為(
)。A.0 B.10 C.9 D.8cDBDBB18.()為正確的變量名。44.若有定義inti第二章
1)printf函數(shù)的格式考查:
%d對(duì)應(yīng)int整型;%c對(duì)應(yīng)char字符;%f對(duì)應(yīng)float單精度;
%ld對(duì)應(yīng)
longint;%lf對(duì)應(yīng)double。寬度的,左對(duì)齊等修飾。
%.3f
2)scanf函數(shù)的格式考察:
注意該函數(shù)的第二個(gè)部分是&a這樣的地址,不是a;
scanf(“%d%d%*d%d”,&a,&b,&c);跳過(guò)輸入的第三個(gè)數(shù)據(jù)(b沒賦值)。輸入語(yǔ)句不能出現(xiàn)%6.2f,只能是%6f。
3)putchar,getchar函數(shù)的考查:
char
a;a=getchar()是沒有參數(shù)的,從鍵盤得到你輸入的一個(gè)字符給變量a。
putchar(‘y’)把字符y輸出到屏幕中。
4)如何實(shí)現(xiàn)兩個(gè)變量x,y中數(shù)值的互換(要求背下來(lái))
不可以把
x=y,y=x;要用中間變量
t=x;x=y;y=t。5)while((c=getchar())!=’\n’)
注意點(diǎn):括號(hào)在這里的重要性。
第二章
1)printf函數(shù)的格式考查:
%d對(duì)應(yīng)52.
若已定義:inta=5,b=9,c=6;則語(yǔ)句
b++;++c;a=b-c;運(yùn)行后a的值為(
)。A.5 B.3 C.2 D.454.若已定義
floatx;要從鍵盤輸入數(shù)據(jù)36.582給變量x,則應(yīng)選用(
)語(yǔ)句。A.scanf("%2.3f",&x); B.scanf("%6f",&x);C.scanf("%6.3f",&x); D.scanf("%5.3f",&x);58.若已定義
inta=11;執(zhí)行以下語(yǔ)句后的輸出結(jié)果是(
)。
printf("a=%d,a=%o,a=%x\n",a,a,a);A.a=11,a=11,a=b B.a=11,a=13,a=bC.a=11,a=13,a=c D.a=11,a=12,a=1361.以下程序段的運(yùn)行結(jié)果是(
)。
inta=1;printf("%d,%d,%d\n",a,++a,a++);3,3,1 B.1,2,2C.1,2,3 D.3,2,1BBBA52.若已定義:inta=5,b=9,c=6;則語(yǔ)句66.有以下程序:main(){intc;while((c=getchar())!='\n'){switch(c-'2'){case0:case1:putchar(c+4);case2:putchar(c+4);break;case3:putchar(c+3);default:putchar(c+2);break;}}}當(dāng)輸入:247<回車>,程序的輸出結(jié)果是(
)。689 B.6689C.66778 D.66887B66.有以下程序:Bc語(yǔ)言中是用非0表示邏輯真的,用0表示邏輯假的。
1)關(guān)系表達(dá)式:
表達(dá)式的數(shù)值只能為1(表示為真),或0(表示假)
關(guān)系的表達(dá)是為真的時(shí)候得到1。如
9>8這個(gè)是真的,所以表達(dá)式的數(shù)值就是1;a>b>c的問題
2)邏輯表達(dá)式:
為1(表示為真),0(表示假)
a)!>&&>||
優(yōu)先的級(jí)別。
b)不完全計(jì)算問題。
c)要表示
x是比0大,比10小的方法。0<x<10是不可以的。
一定要用
(0<x)&&(x<10)。
c語(yǔ)言中是用非0表示邏輯真的,用0表示邏輯假的。36.若有定義:inta=6;則語(yǔ)句
a*=a-=a/=3;運(yùn)行后,a的值是(
)。A.10 B.0 C.34 D.2446.若已定義
inta=3,b=2,c=1;則語(yǔ)句
++a||++b&&++c;運(yùn)行后b的值為(
)。A.0 B.3 C.1 D.248.若已定義:inta=2,b=2;則表達(dá)式
(a+(b++),b)的值是(
)。A.2 B.3 C.4 D.669.若已定義
intx=-16,y=-12,z;語(yǔ)句z=x<=y;運(yùn)行后z的值為(
)。.t. B.1 C..f. D.071.若定義
inta=2,b=3;則表達(dá)式
!a||b的值為(
)。A.0 B.1 C.2 D.3BBCBB36.若有定義:inta=6;則語(yǔ)句a*=a-=a/73.下列表達(dá)式()不能用來(lái)判斷整型變量x中的值是否為奇數(shù)。A.x%2==1 B.!(x%2==0) C.!(x%2) D.x%274.若有定義:inta=3,b=2,c=3;則值為0的表達(dá)式是(
)。A.(a-b)==(c/b) B.a>=cC.c-b||a+b&&(b*c-a-c) D.(b*c-a-c)&&(b*c-a-b)80.已定義
doublek=3.6;則正確的賦值表達(dá)式是(
)。A.k=double(-3.6) B.k%3C.k=k*(-1.0)=-3.6 D.k+=k-=(k=1.2)*(k=3)89.若有定義:floatx=2,y=4,h=3;下列表達(dá)式中與(x+y)*h/2.0計(jì)算結(jié)果不相符的是(
)。(x+y)*h/2 B.(x+y)*h*1/2C.(1/2)*(x+y)*h D.h/2*(x+y)CDDc73.下列表達(dá)式()不能用來(lái)判斷整型變量x中的值是1)if語(yǔ)句
else是與最接近的if且沒有else配套的相組合的。
2)條件表達(dá)式:
條件表達(dá)式1?表達(dá)式2:表達(dá)式3
注意是條件判斷為真時(shí)執(zhí)行表達(dá)式2的數(shù)值,當(dāng)是假時(shí)執(zhí)行表達(dá)式3的數(shù)值。
3)switch語(yǔ)句:
a)一定要注意:有break和沒有break的差別,沒有break時(shí)候,只要有一個(gè)case匹配了,剩下的都要執(zhí)行,有break則是直接跳出了
swiche語(yǔ)句。
b)switch只可以和break一起用,不可以和continue用。第三章1)if語(yǔ)句
else是與最接近的if且沒有els79.以下程序運(yùn)行后,a的值是(
)。main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}}A.101 B.100 C.8 D.7c79.以下程序運(yùn)行后,a的值是()。c98.以下程序段運(yùn)行后變量k的值為(
)。inta=3,b=2;
intk;k=(--a==b++)?a:b+1;A.0 B.1 C.2 D.399.以下程序的運(yùn)行結(jié)果是(
)。voidmain(){intn=9;switch(n--){default:printf("%d",n++);case8:case7:printf("%d",n);break;case6:printf("%d",n++);case5:printf("%d",n);}}A.8 B.7 C.89 D.87cc98.以下程序段運(yùn)行后變量k的值為()。cc101.
以下程序的運(yùn)行結(jié)果是(
)。voidmain(){inta;if(a=6)printf("%d\n",a);elseif(a>6)printf("%d\n",a+2);elseprintf("%d\n",a+3);}A.運(yùn)行時(shí)產(chǎn)生錯(cuò)誤信息
B.9 C.8 D.6D101.以下程序的運(yùn)行結(jié)果是()。D103.若有定義:inta=2,b=3,c=1;則以下程序段的運(yùn)行結(jié)果是(
)。
if(a>b)if(a>c)printf("%d",a);elseprintf("%d",b);printf("%d",c);A.31 B.21 C.3 D.1D103.若有定義:inta=2,b=3,c=1;則以第四章
1)三種循環(huán)結(jié)構(gòu):for;while();
do-while()三種。
a)for(;;)語(yǔ)句1;循環(huán)當(dāng)中必須是兩個(gè)分號(hào),千萬(wàn)不要忘記。
b)寫程序的時(shí)候一定要注意,循環(huán)一定要有結(jié)束的條件,否則成了死循環(huán)。
c)
do-while()循環(huán)的最后一個(gè)while();的分號(hào)一定不能夠丟。(當(dāng)心上機(jī)改錯(cuò))
2)break:退出整個(gè)循環(huán)。
continue:結(jié)束本次循環(huán),就是循環(huán)體內(nèi)剩下的語(yǔ)句不再執(zhí)行,跳到循環(huán)開始,然后判斷循環(huán)條件,進(jìn)行新一輪的循環(huán)。
3)嵌套循環(huán)
就是有循環(huán)里面還有循環(huán),這種比較復(fù)雜,要一層一層一步一步耐心的計(jì)算,一般記住兩層是處理二維數(shù)組的。
第四章
1)三種循環(huán)結(jié)構(gòu):for;while();
do105.下列程序段中,非死循環(huán)的是(
)。A.inti=100;while(1){i=i%100+1;if(i>=100)break;}C.ints=10;while(++s%2+s%2)s++;B.intk=0;do{++k;}while(k>=0);D.for(;;)A105.下列程序段中,非死循環(huán)的是()。B.intk=108.以下程序段運(yùn)行后,循環(huán)體中的
n+=3;語(yǔ)句運(yùn)行的次數(shù)為(
)。inti,j,n=0;for(i=1;i<=3;i++)
{for(j=1;j<=i;j++)
{n+=3;printf("%d\n",n);}}A.6次
B.9次
C.12次
D.1次A108.以下程序段運(yùn)行后,循環(huán)體中的n+=3;語(yǔ)句運(yùn)行114.以下程序的運(yùn)行結(jié)果是(
)。
voidmain(){ints=0,i=0;while(i<10){i++;if(i%2==0)s+=i;}printf("%d\n",s);
}A.20 B.30 C.25 D.45B114.以下程序的運(yùn)行結(jié)果是()。B115.以下程序的運(yùn)行結(jié)果是(
)。
voidmain(){intx=5;do{printf("%2d",x--);}while(!x);}A.54321B.43210C.5D.4C115.以下程序的運(yùn)行結(jié)果是()。C116.以下程序的運(yùn)行結(jié)果是(
)。
voidmain(){inti,j,k=0;for(i=3;i>=1;i--)
{for(j=i;j<=3;j++)
k+=i*j;
}
printf("%d\n",k);
}A.19 B.29 C.6 D.25D116.以下程序的運(yùn)行結(jié)果是()。Dinta[10];
1、a表示數(shù)組名,是數(shù)組的首地址,也就是元素a[0]的地址。
2、a是地址常量,所以只要出現(xiàn)a++,或者是a=a+2賦值的都是錯(cuò)誤的。
3、a+1是跳一列。
inta[3][3]
1、a是a[0][0]的地址。
2、a+1是跳一行。
3、a[0]、a[1]、a[2]也都是地址常量,不可以對(duì)它進(jìn)行賦值操作,a[0]+1,a[1]+1,a[2]+1都是跳一列。數(shù)組inta[10];
1、a表示數(shù)組名,是數(shù)組的首地址,二維數(shù)組做題目的技巧:
如果有a[3][3]={1,2,3,4,5,6,7,8,9}這樣的題目。
步驟一:把他們寫成:第一列第二列第三列
a[0]
1
2
3
->第一行
a[1]
4
5
6
—>第二行
a[2]
7
8
9->第三行
步驟二:
*(a[0]+1)我們就知道是第一行的第一個(gè)元素往后面跳一列,那么這里就是a[0][1]元素,所以是2。
*(a[1]+2)我們就知道是第二行的第一個(gè)元素往后面跳二列。那么這里就是
a[1][2]元素,所以是6。
一定記住:只要是二維數(shù)組的題目,一定是寫成如上的格式,再去做題目,這樣會(huì)比較簡(jiǎn)單。
二維數(shù)組做題目的技巧:
如果有a[3][3]={1,2,數(shù)組的初始化,二維的,行標(biāo)可以不寫,列標(biāo)一定要寫。
inta[]={1,2}合法。inta[][4]={2,3,4}合法。但inta[4][]={2,3,4}非法。二維數(shù)組中的行指針
inta[1][2];
a現(xiàn)在就是一個(gè)行指針,a+1跳一行數(shù)組元素。
a[0],a[1]現(xiàn)在就是一個(gè)列指針。a[0]+1跳一個(gè)數(shù)組元素。
還有記住脫衣服法則:
a[2]
變成*(a+2)
a[2][3]變成*(a+2)[3]再可以變成
*(*(a+2)+3)
數(shù)組的初始化,二維的,行標(biāo)可以不寫,列標(biāo)一定要寫。
int函數(shù)1)
main()
{inta=5,b=6,c;
c=add(a,b);
printf(“%d”,c);
}調(diào)用函數(shù):a,b是實(shí)參
整個(gè)函數(shù)得到一個(gè)數(shù)值就是:add函數(shù)的返回?cái)?shù)值。
intadd(intx,inty)
{intz;
z=x+y;
returnz;
}
被調(diào)用函數(shù):x,y是形式參數(shù)
函數(shù)返回?cái)?shù)值是整型函數(shù)1)
main()
{inta=52)一定要注意參數(shù)之間的傳遞
實(shí)參和形參之間傳數(shù)值,和傳地址的差別。(考試的重點(diǎn))
傳數(shù)值的話,形參的變化不會(huì)改變實(shí)參的變化。
傳地址的話,形參的變化就會(huì)有可能改變實(shí)參的變化。
3)函數(shù)聲明的考查:
一定要有:函數(shù)名,函數(shù)的返回類型,函數(shù)的參數(shù)類型。
不一定要有:形參的名稱。2)一定要注意參數(shù)之間的傳遞
實(shí)參和形參之間傳數(shù)值指針變量的本質(zhì)是用來(lái)放地址,而一般的變量是放數(shù)值的。
int
*p中
*p和p的差別:
*p可以當(dāng)做變量來(lái)用;*的作用是取后面地址p里面的數(shù)值
p是當(dāng)作地址來(lái)使用。
*p++和(*p)++的之間的差別:改錯(cuò)題目中很重要
*p++是地址會(huì)變化。
(*p)++是數(shù)值會(huì)要變化。
三名主義:(考試的重點(diǎn))
數(shù)組名:表示第一個(gè)元素的地址。數(shù)組名不可以自加,他是地址常量名。(考了很多次)
函數(shù)名:表示該函數(shù)的入口地址。
字符串常量名:表示第一個(gè)字符的地址。指針(三個(gè)結(jié)論,什么時(shí)候指地址什么時(shí)候是元素)指針變量的本質(zhì)是用來(lái)放地址,而一般的變量是放數(shù)值的。
int
其他(選擇題)結(jié)構(gòu)體:struct共用體:union枚舉類型:enum新類型:typedef注意:關(guān)鍵字,區(qū)別其他(選擇題)結(jié)構(gòu)體:str函數(shù)調(diào)用填空題:沒其他可填時(shí)考慮:函數(shù)聲明函數(shù)的實(shí)參(在主函數(shù)中,不需要定義類型)形參(定義類型);函數(shù)調(diào)用填空題:沒其他可填時(shí)考慮:函數(shù)聲明36可編輯感謝下載36可編輯感謝下載37可編輯感謝下載37可編輯感謝下載題型:20*2=402*10=20選擇題填空題改錯(cuò)題編程題2*10=202*10=20題型:20*2=402*10=20選擇題填空題改錯(cuò)題編程題2改錯(cuò)、填空多考點(diǎn):#include<math.h>
預(yù)處理#defineN10宏定義floatff(floata,floatb,floatc);
函數(shù)聲明main()主函數(shù){inti,j,a[10],*p,sum,x=1;變量定義sum=0;賦值scanf(“%d”,&a[0]);輸入語(yǔ)句,參數(shù)是地址if(i==0)for(;;),while語(yǔ)句的考察,注意表達(dá)式的判斷,循環(huán)體語(yǔ)句的判斷。輸出語(yǔ)句}}改錯(cuò)、填空多考點(diǎn):#include<math.h>函數(shù)調(diào)用intss(inta,intb[],int*q){}main(){intx,s[10],y;ss(x,s,&y);
實(shí)參和形參個(gè)數(shù)相同,類型相同。}函數(shù)調(diào)用intss(inta,intb[],int*雙層循環(huán)inta[5][6]for(i=0;i<5;i++)for(j=5;j>=0;j--)i,j的范圍if(i%2==0)奇數(shù)位對(duì)應(yīng)偶數(shù)下標(biāo)a[i][j]=i+j+1;規(guī)律雙層循環(huán)inta[5][6]總體上必須清楚的:
1)程序結(jié)構(gòu)是三種:順序結(jié)構(gòu)
,循環(huán)結(jié)構(gòu)(三個(gè)循環(huán)結(jié)構(gòu)),選擇結(jié)構(gòu)(if和
switch)。
2)讀程序都要從main()入口,然后從最上面順序往下讀(碰到循環(huán)做循環(huán),碰到選擇做選擇)。
3)計(jì)算機(jī)的數(shù)據(jù)在電腦中保存是以二進(jìn)制的形式。數(shù)據(jù)存放的位置就是他的地址。
4)二進(jìn)制如何劃成十進(jìn)制??傮w上必須清楚的:
1)程序結(jié)構(gòu)是三種:順序結(jié)構(gòu),循環(huán)概念??嫉降模?/p>
1、編譯預(yù)處理不是C語(yǔ)言的一部分,不占運(yùn)行時(shí)間。C語(yǔ)言編譯的程序稱為源程序,它以ASCII數(shù)值存放在文本文件中。
2、每個(gè)C語(yǔ)言程序中main函數(shù)是有且只有一個(gè)。
3、在函數(shù)中不可以再定義函數(shù)。定義不可嵌套,但調(diào)用可以。
4、break可用于循環(huán)結(jié)構(gòu)和switch語(yǔ)句。5、優(yōu)先級(jí):?jiǎn)文?++,--,!)>算術(shù)表達(dá)式>關(guān)系表達(dá)式>邏輯表達(dá)式>三目>賦值。
概念??嫉降模?/p>
1、編譯預(yù)處理不是C語(yǔ)言的一部分,不占運(yùn)行時(shí)14.C語(yǔ)言的下列運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是(
)。A.++ B.+= C.|| D.!=下列敘述正確的是()
A為提高程序運(yùn)行速度可在源程序中加入一些宏定義
B一個(gè)C語(yǔ)言源程序只能有一條預(yù)處理命令C宏定義不占用程序運(yùn)行時(shí)間,但與程序中的語(yǔ)句一樣需要編程D宏定義中的宏名必須用大寫字母表示
AC14.C語(yǔ)言的下列運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是()。第一章1)合法的用戶標(biāo)識(shí)符由字母,數(shù)字,下劃線組成。并且第一個(gè)必須為字母或則是下劃線。關(guān)鍵字不可以作為用戶標(biāo)識(shí)符號(hào)。main
define
scanf
printf都是關(guān)鍵字。If是可以做為用戶標(biāo)識(shí)符。因?yàn)镮f中的第一個(gè)字母大寫了,所以不是關(guān)鍵字。
2)實(shí)型數(shù)據(jù)的合法形式:
2.333e-1就是合法的,且數(shù)據(jù)是2.333×10-1。
考試口訣:e前e后必有數(shù),e后必為整數(shù)。2.3小數(shù)點(diǎn)前后可省略其中一個(gè)。
3)字符數(shù)據(jù)的合法形式::
'1'是字符占一個(gè)字節(jié),"1"是字符串占兩個(gè)字節(jié)(含有一個(gè)結(jié)束符號(hào)‘\0’)。
'0'的ASCII數(shù)值表示為48,'a'的ASCII數(shù)值是97,'A'的ASCII數(shù)值是65。4)char是1字節(jié),int是2字節(jié),long是4字節(jié),float是4個(gè)字節(jié),double是8字節(jié)
第一章1)合法的用戶標(biāo)識(shí)符由字母,數(shù)字,下劃線組成。并且第一
5)在轉(zhuǎn)義字符中,’\x6d’十六進(jìn)制數(shù)。
‘\141’八進(jìn)制數(shù)。
‘\108’是非法的,因?yàn)椴豢梢猿霈F(xiàn)8。
6)強(qiáng)制類型轉(zhuǎn)換:
一定是(int)a不是
int(a),類型上一定有括號(hào)的。
注意(int)(3.6+3.6)=7和(int)
3.6+3.6=6.6的區(qū)別。
7)表達(dá)式的考查:
是表達(dá)式就一定有數(shù)值。
賦值表達(dá)式:表達(dá)式左邊一定是一個(gè)變量。
自加、自減表達(dá)式:假設(shè)a=5,++a(是為6),
a++(為5);考試口訣:++在前先加后賦,++在后先賦后加。
逗號(hào)表達(dá)式:優(yōu)先級(jí)別最低;表達(dá)式的數(shù)值逗號(hào)最右邊的那個(gè)表達(dá)式的數(shù)值。(2,3,4)的表達(dá)式的數(shù)值就是4。
8)位運(yùn)算的考查:會(huì)有一到二題考試題目。
<<左移一位表示乘以2,2位乘4,3位乘8;>>右移一位表示除以2,2位除4,3位除6。
9)%(求余)符號(hào)兩邊要求是整數(shù)。
10)取整丟小數(shù)的情況:1、(int)1.6=1;2、1/2=0;
5)在轉(zhuǎn)義字符中,’\x6d’十六進(jìn)制數(shù)。
18.(
)為正確的變量名。A.-k15 B.int C.k_5 D.k.jeep19.(
)為正確的字符常量。A.''\\'' B."\24m" C."c" D.'M'22.以下選項(xiàng)中,合法的實(shí)型常數(shù)是(
)。A.E-3 B..2E1 C.1E.5 D.1.5E29.語(yǔ)句
k=(m=5,n=++m);運(yùn)行之后,變量k、m、n的值依次為(
)。A.5,5,6 B.5,6,5 C.6,6,5 D.6,6,635.若有定義:intm=4,n=5;floatk;,則以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是(
)。A.(m+n)*=k B.m=(n==5) C.k=float(n)/m D.n%2.544.若有定義
inti=1,j=9;則表達(dá)式
(++j)*(i--)的值為(
)。A.0 B.10 C.9 D.8cDBDBB18.()為正確的變量名。44.若有定義inti第二章
1)printf函數(shù)的格式考查:
%d對(duì)應(yīng)int整型;%c對(duì)應(yīng)char字符;%f對(duì)應(yīng)float單精度;
%ld對(duì)應(yīng)
longint;%lf對(duì)應(yīng)double。寬度的,左對(duì)齊等修飾。
%.3f
2)scanf函數(shù)的格式考察:
注意該函數(shù)的第二個(gè)部分是&a這樣的地址,不是a;
scanf(“%d%d%*d%d”,&a,&b,&c);跳過(guò)輸入的第三個(gè)數(shù)據(jù)(b沒賦值)。輸入語(yǔ)句不能出現(xiàn)%6.2f,只能是%6f。
3)putchar,getchar函數(shù)的考查:
char
a;a=getchar()是沒有參數(shù)的,從鍵盤得到你輸入的一個(gè)字符給變量a。
putchar(‘y’)把字符y輸出到屏幕中。
4)如何實(shí)現(xiàn)兩個(gè)變量x,y中數(shù)值的互換(要求背下來(lái))
不可以把
x=y,y=x;要用中間變量
t=x;x=y;y=t。5)while((c=getchar())!=’\n’)
注意點(diǎn):括號(hào)在這里的重要性。
第二章
1)printf函數(shù)的格式考查:
%d對(duì)應(yīng)52.
若已定義:inta=5,b=9,c=6;則語(yǔ)句
b++;++c;a=b-c;運(yùn)行后a的值為(
)。A.5 B.3 C.2 D.454.若已定義
floatx;要從鍵盤輸入數(shù)據(jù)36.582給變量x,則應(yīng)選用(
)語(yǔ)句。A.scanf("%2.3f",&x); B.scanf("%6f",&x);C.scanf("%6.3f",&x); D.scanf("%5.3f",&x);58.若已定義
inta=11;執(zhí)行以下語(yǔ)句后的輸出結(jié)果是(
)。
printf("a=%d,a=%o,a=%x\n",a,a,a);A.a=11,a=11,a=b B.a=11,a=13,a=bC.a=11,a=13,a=c D.a=11,a=12,a=1361.以下程序段的運(yùn)行結(jié)果是(
)。
inta=1;printf("%d,%d,%d\n",a,++a,a++);3,3,1 B.1,2,2C.1,2,3 D.3,2,1BBBA52.若已定義:inta=5,b=9,c=6;則語(yǔ)句66.有以下程序:main(){intc;while((c=getchar())!='\n'){switch(c-'2'){case0:case1:putchar(c+4);case2:putchar(c+4);break;case3:putchar(c+3);default:putchar(c+2);break;}}}當(dāng)輸入:247<回車>,程序的輸出結(jié)果是(
)。689 B.6689C.66778 D.66887B66.有以下程序:Bc語(yǔ)言中是用非0表示邏輯真的,用0表示邏輯假的。
1)關(guān)系表達(dá)式:
表達(dá)式的數(shù)值只能為1(表示為真),或0(表示假)
關(guān)系的表達(dá)是為真的時(shí)候得到1。如
9>8這個(gè)是真的,所以表達(dá)式的數(shù)值就是1;a>b>c的問題
2)邏輯表達(dá)式:
為1(表示為真),0(表示假)
a)!>&&>||
優(yōu)先的級(jí)別。
b)不完全計(jì)算問題。
c)要表示
x是比0大,比10小的方法。0<x<10是不可以的。
一定要用
(0<x)&&(x<10)。
c語(yǔ)言中是用非0表示邏輯真的,用0表示邏輯假的。36.若有定義:inta=6;則語(yǔ)句
a*=a-=a/=3;運(yùn)行后,a的值是(
)。A.10 B.0 C.34 D.2446.若已定義
inta=3,b=2,c=1;則語(yǔ)句
++a||++b&&++c;運(yùn)行后b的值為(
)。A.0 B.3 C.1 D.248.若已定義:inta=2,b=2;則表達(dá)式
(a+(b++),b)的值是(
)。A.2 B.3 C.4 D.669.若已定義
intx=-16,y=-12,z;語(yǔ)句z=x<=y;運(yùn)行后z的值為(
)。.t. B.1 C..f. D.071.若定義
inta=2,b=3;則表達(dá)式
!a||b的值為(
)。A.0 B.1 C.2 D.3BBCBB36.若有定義:inta=6;則語(yǔ)句a*=a-=a/73.下列表達(dá)式()不能用來(lái)判斷整型變量x中的值是否為奇數(shù)。A.x%2==1 B.!(x%2==0) C.!(x%2) D.x%274.若有定義:inta=3,b=2,c=3;則值為0的表達(dá)式是(
)。A.(a-b)==(c/b) B.a>=cC.c-b||a+b&&(b*c-a-c) D.(b*c-a-c)&&(b*c-a-b)80.已定義
doublek=3.6;則正確的賦值表達(dá)式是(
)。A.k=double(-3.6) B.k%3C.k=k*(-1.0)=-3.6 D.k+=k-=(k=1.2)*(k=3)89.若有定義:floatx=2,y=4,h=3;下列表達(dá)式中與(x+y)*h/2.0計(jì)算結(jié)果不相符的是(
)。(x+y)*h/2 B.(x+y)*h*1/2C.(1/2)*(x+y)*h D.h/2*(x+y)CDDc73.下列表達(dá)式()不能用來(lái)判斷整型變量x中的值是1)if語(yǔ)句
else是與最接近的if且沒有else配套的相組合的。
2)條件表達(dá)式:
條件表達(dá)式1?表達(dá)式2:表達(dá)式3
注意是條件判斷為真時(shí)執(zhí)行表達(dá)式2的數(shù)值,當(dāng)是假時(shí)執(zhí)行表達(dá)式3的數(shù)值。
3)switch語(yǔ)句:
a)一定要注意:有break和沒有break的差別,沒有break時(shí)候,只要有一個(gè)case匹配了,剩下的都要執(zhí)行,有break則是直接跳出了
swiche語(yǔ)句。
b)switch只可以和break一起用,不可以和continue用。第三章1)if語(yǔ)句
else是與最接近的if且沒有els79.以下程序運(yùn)行后,a的值是(
)。main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}}A.101 B.100 C.8 D.7c79.以下程序運(yùn)行后,a的值是()。c98.以下程序段運(yùn)行后變量k的值為(
)。inta=3,b=2;
intk;k=(--a==b++)?a:b+1;A.0 B.1 C.2 D.399.以下程序的運(yùn)行結(jié)果是(
)。voidmain(){intn=9;switch(n--){default:printf("%d",n++);case8:case7:printf("%d",n);break;case6:printf("%d",n++);case5:printf("%d",n);}}A.8 B.7 C.89 D.87cc98.以下程序段運(yùn)行后變量k的值為()。cc101.
以下程序的運(yùn)行結(jié)果是(
)。voidmain(){inta;if(a=6)printf("%d\n",a);elseif(a>6)printf("%d\n",a+2);elseprintf("%d\n",a+3);}A.運(yùn)行時(shí)產(chǎn)生錯(cuò)誤信息
B.9 C.8 D.6D101.以下程序的運(yùn)行結(jié)果是()。D103.若有定義:inta=2,b=3,c=1;則以下程序段的運(yùn)行結(jié)果是(
)。
if(a>b)if(a>c)printf("%d",a);elseprintf("%d",b);printf("%d",c);A.31 B.21 C.3 D.1D103.若有定義:inta=2,b=3,c=1;則以第四章
1)三種循環(huán)結(jié)構(gòu):for;while();
do-while()三種。
a)for(;;)語(yǔ)句1;循環(huán)當(dāng)中必須是兩個(gè)分號(hào),千萬(wàn)不要忘記。
b)寫程序的時(shí)候一定要注意,循環(huán)一定要有結(jié)束的條件,否則成了死循環(huán)。
c)
do-while()循環(huán)的最后一個(gè)while();的分號(hào)一定不能夠丟。(當(dāng)心上機(jī)改錯(cuò))
2)break:退出整個(gè)循環(huán)。
continue:結(jié)束本次循環(huán),就是循環(huán)體內(nèi)剩下的語(yǔ)句不再執(zhí)行,跳到循環(huán)開始,然后判斷循環(huán)條件,進(jìn)行新一輪的循環(huán)。
3)嵌套循環(huán)
就是有循環(huán)里面還有循環(huán),這種比較復(fù)雜,要一層一層一步一步耐心的計(jì)算,一般記住兩層是處理二維數(shù)組的。
第四章
1)三種循環(huán)結(jié)構(gòu):for;while();
do105.下列程序段中,非死循環(huán)的是(
)。A.inti=100;while(1){i=i%100+1;if(i>=100)break;}C.ints=10;while(++s%2+s%2)s++;B.intk=0;do{++k;}while(k>=0);D.for(;;)A105.下列程序段中,非死循環(huán)的是()。B.intk=108.以下程序段運(yùn)行后,循環(huán)體中的
n+=3;語(yǔ)句運(yùn)行的次數(shù)為(
)。inti,j,n=0;for(i=1;i<=3;i++)
{for(j=1;j<=i;j++)
{n+=3;printf("%d\n",n);}}A.6次
B.9次
C.12次
D.1次A108.以下程序段運(yùn)行后,循環(huán)體中的n+=3;語(yǔ)句運(yùn)行114.以下程序的運(yùn)行結(jié)果是(
)。
voidmain(){ints=0,i=0;while(i<10){i++;if(i%2==0)s+=i;}printf("%d\n",s);
}A.20 B.30 C.25 D.45B114.以下程序的運(yùn)行結(jié)果是()。B115.以下程序的運(yùn)行結(jié)果是(
)。
voidmain(){intx=5;do{printf("%2d",x--);}while(!x);}A.54321B.43210C.5D.4C115.以下程序的運(yùn)行結(jié)果是()。C116.以下程序的運(yùn)行結(jié)果是(
)。
voidmain(){inti,j,k=0;for(i=3;i>=1;i--)
{for(j=i;j<=3;j++)
k+=i*j;
}
printf("%d\
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 年春節(jié)放假通知
- 海水的運(yùn)動(dòng)+導(dǎo)學(xué)案 高一上學(xué)期+地理+人教版(2019)必修一
- 論歐龍馬滴劑治療小兒慢性鼻竇炎的療效研究
- 育齡期女性乳腺癌患者生育憂慮的混合研究
- 三自由度波浪補(bǔ)償風(fēng)電過(guò)橋裝置系統(tǒng)研究
- 2023-2024學(xué)年高一秋學(xué)期期末語(yǔ)文模擬測(cè)試(二)試題講評(píng)課件 上課課件
- 復(fù)雜環(huán)境下的智能挖掘機(jī)目標(biāo)檢測(cè)研究
- 基于IL-33-ST2信號(hào)通路探討芪丹益肺通竅顆粒對(duì)AR大鼠的作用機(jī)制
- 2025年醫(yī)院黨建工作總結(jié)
- 二零二五年度綠色停車場(chǎng)運(yùn)營(yíng)外包合同3篇
- 禮盒業(yè)務(wù)銷售方案
- 術(shù)后肺炎預(yù)防和控制專家共識(shí)解讀課件
- 二十屆三中全會(huì)精神學(xué)習(xí)試題及答案(100題)
- 中石化高級(jí)職稱英語(yǔ)考試
- 小學(xué)五年級(jí)英語(yǔ)閱讀理解(帶答案)
- 2024二十屆三中全會(huì)知識(shí)競(jìng)賽題庫(kù)及答案
- 仁愛版初中英語(yǔ)單詞(按字母順序排版)
- 2024年全國(guó)統(tǒng)一考試高考新課標(biāo)Ⅱ卷語(yǔ)文+數(shù)學(xué)+英語(yǔ)試題(真題+答案)
- 2024年全國(guó)甲卷高考化學(xué)真題試題(原卷版+含解析)
- 小學(xué)一年級(jí)拼音天天練
- 新概念英語(yǔ)第二冊(cè)考評(píng)試卷含答案(第49-56課)
評(píng)論
0/150
提交評(píng)論