C考試系統(tǒng)題庫原版_第1頁
C考試系統(tǒng)題庫原版_第2頁
C考試系統(tǒng)題庫原版_第3頁
C考試系統(tǒng)題庫原版_第4頁
已閱讀5頁,還剩77頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

目錄TOC\o"1-5"\h\z\o"CurrentDocument"目錄 1單元練習(xí)題ーC語言基礎(chǔ)知識 3\o"CurrentDocument"ー、 判斷題 3\o"CurrentDocument"單項選擇題 4讀程序選擇題 7\o"CurrentDocument"四、程序填空題 8五、編程題 錯誤!未定義書簽。\o"CurrentDocument"ー、 判斷題 9\o"CurrentDocument"單項選擇題 9讀程序選擇題 錯誤!未定義書簽。\o"CurrentDocument"程序填空題 17編程題 錯誤!未定義書簽。單元練習(xí)題三數(shù)組 21判斷題........單項選擇題判斷題........單項選擇題三、讀程序選擇題….四、程序填空題........五、編程題 22 錯誤!未定義書簽。 28 錯誤!未定義書簽。TOC\o"1-5"\h\z單元練習(xí)題四函數(shù) 33判斷題 33\o"CurrentDocument"單項選擇題 34三、讀程序選擇題....四、程序填空題........三、讀程序選擇題....四、程序填空題........五、編程題 單元練習(xí)題五預(yù)處理......判斷題........單項選擇題三、讀程序選擇題....四、程序填空題........五、編程題 單元練習(xí)題六指針 判斷題........單項選擇題三、讀程序選擇題....四、程序填空題........五、編程題 錯誤! 錯誤! 錯誤! 錯誤! 錯誤! 錯誤! 錯誤! 錯誤! 40未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。 45..…錯誤!未定義書簽。..…錯誤!未定義書簽。判斷題 58單項選擇題 60

三、讀程序選擇題四、程序填空題.…五、編程題 單元練習(xí)題ハ文件........…錯誤!未定義書簽。 68.....錯誤!未定義書簽。 72TOC\o"1-5"\h\z\o"CurrentDocument"ー、判斷題..…錯誤!未定義書簽。 68.....錯誤!未定義書簽。 72\o"CurrentDocument"二、單項選擇題 73\o"CurrentDocument"四、程序填空題 77五、編程題 錯誤!未定義書簽。第一章C語言基礎(chǔ)知識(c語言概述、算法、數(shù)據(jù)類型運算符表達式、位運算)ー、判斷題R1?在C語言中,逗號運算符的優(yōu)先級最低。.在C語言可執(zhí)行程序的開始執(zhí)行點是程序中第一個函數(shù)。.“5ch”是合法的變量名。R4.C語言程序書寫格式自由,一行內(nèi)可以寫幾個語句,ー個語句可以分寫在多行上。5.當輸入數(shù)據(jù)時,必須指明變量的地址,如scanf("%『,&りN6.表達式i++與++i在任何場合功能完全相同。7.在賦值表達式中,賦值號左邊的變量和右邊的表達式之值的數(shù)據(jù)類型可以不相同。Floata;intb=l;a=b;R8.C語言程序中,語句以逗號結(jié)尾。().在C程序中,APH和aph代表不同的變量。( ).a-=7等價于a=a-7。( )Nil.printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5歹リ。如果字符串長度大于5,則輸出按原字符長從左向右全部輸出。().如果x>y為真或a<b為真,表達式(x>y)&&(a<b)就為真。().C語言程序的變量必須先定義再使用。().若a和b是同類型變量,在執(zhí)行了賦值語句a=b;后b中的值將放入a中,b中的值將丟失。().程序的執(zhí)行總是從main函數(shù)開始,在程序的最后一個函數(shù)中結(jié)束。( )N16.變量的三個屬性是指變量的名字、變量的值和變量在內(nèi)存中的地址。〇17.運算符優(yōu)先順序:賦值運算符(邏輯運算符〈關(guān)系運算符(算術(shù)運算符()18.對應(yīng)float類型的變量,也可以用等號“==”進行數(shù)值的判斷。().表達式:1&&3.14和1&3的值ー樣大。〇01&11=1.為了正確計算表達式既要考慮運算符的優(yōu)先級,也要考慮其結(jié)合性。()21、任何C程序都是從main函數(shù)開始和結(jié)束;.在C程序中,使用分號“;”表示語句的結(jié)束。().C程序中的必須要有至少ー個main的函數(shù),可以有多個。().在C程序中,無論是整數(shù)還是實數(shù),都能準確無誤的表示。().在C程序中,賦值運算符的優(yōu)先級最低。().當輸入數(shù)值數(shù)據(jù)時,對于整型變量只能輸入整型值;對于實型變量只能輸入實型值。().在C程序中,變量可以ー邊定義ー邊使用。().C程序中的注釋部分可有可無,可以省略。().字符型變量可以存放多個字符。().在對ー個C程序進行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤。()在C程序中,無論是整數(shù)還是實數(shù),都能被準確無誤地表示。().一個C程序的執(zhí)行是從本程序的main函數(shù)開始,到main函數(shù)結(jié)束。〇〇4.運算符優(yōu)先順序:賦值運算符(邏輯運算符(關(guān)系運算符(算術(shù)運算符〇二、單項選擇題R1、以下標識符中,不能作為合法的C用戶定義標識符的是:()A.a3_b3 B.void C._123 D.abcR2、C語言規(guī)定:在ー個源程序中,main函數(shù)函位置()〇A.必須在最后 B.必須在系統(tǒng)調(diào)用的庫函數(shù)的后面。C.必須在最開始。 D.可以任意R3、下列說法中正確的是()〇C程序書寫時,不區(qū)分大小寫字母C程序書寫時,?行只能寫ー個語句C.C程序書寫時,一個語句可分成幾行書寫D.C程序書寫時每行必須有行號4、已知ch是字符型變量,下面不正確的賦值語句是()〇A.ch=5+9;B.ch='a'+bC.ch='\0D.ch="7'+"6';5、若有定義:inta=7;floatx=2.5,y=4.7;則表達式x+a%3*(int)(x+y)%2/4的值是()。A.2.750000B.0.00000C.3.500000 D.2.500000.已知ch是字符型變量,下面正確的賦值語句是()〇A.ch='123';B.ch='\08';C.ch='\xff';D.ch="\.以下標識符中,不能作為合法的C用戶定義標識符的是:0A)a3_b3B)void C)_123 D)abc.C語言中,運算對象必須是整包的運算符是0A)% B)/ C)%和/ D)*.在C程序中,用表示邏輯值“真”。A)1 B)非0的數(shù) C)非1的數(shù) D)大于0的數(shù)N8.設(shè)intc=5和inta;a=2+(c+=c,c+8,++c),貝リa=A)15 B)14 C)13 D)16.C語言中的標識符只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符A)必須為字母或下劃線。 B)必須為下劃線。

C)必須為字母 D)可以是字母、數(shù)字和下劃線中的任一種字符。.若變量已正確定義并賦值,表達式不符合C語言語法。A)a*b/c;B)3.14%2 C)2,bD)a/b/c11,下列說法中正確的是。A)C程序書寫時,不區(qū)分大表達式小寫字母B)C程序書寫時,一行只能寫ー個語句C)C程序書寫時,ー個語句可分成兒行書寫D)C程序書寫時每行必須有行號.為表示數(shù)學(xué)關(guān)系x2y2z,正確的C語言表達式是。A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)C)(x>=y>=z)D)C)(x>=y>=z).不合法的八進制數(shù)是D)01A)0 B)028 C)077D)0114、以下不能定義為用戶標識符是AMainB_0C_intDsizeof15.若x=5,y=4則y*=x+5;等價于y=y*(x+5)y的值為()。TOC\o"1-5"\h\zA.40B.20CB.15 D.3016、組成C語言程序的基本單位是( )。A)過程 B)子程序0函數(shù) D)主程序和子程序17.下列哪個標識符是C語言合法的標識符( )。A)a*b B)-xyzC)ba2 D)5iN18.若有定義:inta=7;floatx=2.5,y=4.7:則表達式x+a%3*(int)(x+y)/4的值是( )。A)2.75 B)3.502.5 D)019.設(shè)intm=l,n=2;則++m==n的結(jié)果是()A、0BA、0B、1C、2D、3N20.若變量已定義并賦值,下列符合C語法的表達式是:( )A,a:=b+1 B、a=b=c+2C、int18.5%3 D、a=a+7=c+bR¢3)在C程序中,設(shè)ー表達式中包含有intJong,unsigned和char類型的變量和數(shù)據(jù),則表達式最后的運算結(jié)果類型是( )A.int B.char C.unsigned D.longR21.C語言中基本的數(shù)據(jù)類型包括。A)整型、實型、邏輯型 B)整型、實型、字符型C)整型、字符型、邏輯型D)整型、實型、邏輯型、字符型N22.若定義x和y為double類型,則表達式:x=2,y=x+5/2的值是A)4 B)4.5 C)4.0 D)3.0.在以下運算符中,優(yōu)先級最高的運算符是A)?: B)++ 〇&& D)+=.C語言中基本的數(shù)據(jù)類型不包括〇A)整型 B)字符串型C)字符型 D)實型.若定義intx=7,y=5,z;則表達式:z=x+5/2*y的值是A)7 B)7.5C)17 D)19.5.以下說法中正確的是()A、C語言程序總是從第一個定義的函數(shù)開始執(zhí)行B、在C語言程序中,要調(diào)用的函數(shù)必須在main。函數(shù)中定義C、C語言程序總是從main。函數(shù)開始執(zhí)行D、C語言程序中的main。函數(shù)必須放在程序的開始部分TOC\o"1-5"\h\z(1)設(shè)inta=2,b;則執(zhí)行b=a&&l;語句后,b的結(jié)果是( )A.O B.l C.2 D.3N¢2)逗號表達式(a=3*5,a*4),a+15的值是( )A.15 B.60 C.30 D.75.若已經(jīng)定義了一個字符型變量為a,下面哪個表達式的含義跟其余表達式不同:A)a!=0 B)a!=‘、〇' C)a D)!a.在以下運算符中,優(yōu)先級最高的運算符是A), B)[] C)&& D)+=.在C語言中,邏輯值“真”用表示。A)true B)大于〇的數(shù) 〇非〇的整數(shù)D)非〇的數(shù).表達式是滿足:當c的值為1、3、5三個數(shù)中任意ー個時值為“真”,否則值為“假”的表達式A)(c=l)ll(c=3)ll(c=5) B)(c!=l)&&(c!=3)&&(c!=5)C)(c==l)&&(c==3)&&(c=5)D)(c==l)ll(c==3)ll(c==5).C語言中,int類型數(shù)據(jù)占2個字節(jié),則long類型數(shù)據(jù)占()A,1個字節(jié)B、2個字節(jié)C、3個字節(jié)D、4個字節(jié).下列字符串是合法的標識符的是()。A、_HJB、9_studentC、longD、LINE1.下列說法中正確的是()〇A、C程序書寫時,不區(qū)分大小寫字母B、C程序書寫時,一行只能寫ー個語句C、C程序書寫時,一個語句可分成幾行書寫D、C程序書寫時每行必須有行號.在C語言中,要求參加運算的數(shù)必須是整數(shù)的運算符是()。A、/ B、! C、% D、==.C語言中,邏輯“真”等價于()〇A、大于零的數(shù) B、大于零的整數(shù)C、非零的數(shù) D、非零的整數(shù)6.假設(shè)在程序中a,b,c均被定義為整型,并且已賦大于1的值,則下列能正確表示代數(shù)式1/abc的表達式是()。A、!/a*b*c B、1/(a*b*c)C、!/a/b/(float)cD、1.0/a/b/c.下列合法的字符常量是()〇A、’\084'B、'\x43'C、’ab‘D、〇”.在C語言提供的合法的關(guān)鍵字是()A、switchB、cherC、CaseD、sturct.若已定義x和y為double類型,則表達式:x=l,y=x+3/2的值是A、2 B、1C、2.0D、2.5三、程序填空題!以下程序不用第三個變量實現(xiàn)兩個數(shù)對調(diào)的操作。#includ"stdio.h"main()Iinta,b;scanf("%d,%d",&a,&b);//5,10a=< >;(三個字符)b=< >;(三個字符)a=a-b;printf("%d,%d",a,b);)2、選擇程序的運行結(jié)果 〇main(){intx=l,y=2,z,a,b,c,d;z=++x||++y;printf("x=%d\n”,x);printf("y=%d\rT,y);/?輸出結(jié)果く >(三個字符)*/a=-l; b=-2; c=++a&&b++;printf("b=%d\n”,b);/?輸出結(jié)果〈 >(三個字符)*/ }3以下程序的結(jié)果為main()(unsignedinta=3,b=10;printf("%d\n",a?2lb?l);/?輸出結(jié)果〈 >*/printf("%d\n",a?2&b?l);/?輸出結(jié)果〈 >*/)4若x=3,y=z=4,則下列表達式的值是。(z>=y>=x)?1:0/?值為く>*/z>=y&&y>=x/?值為く >*/5已知floatx=4.3,inty:執(zhí)行語句y=(int)x后,x為< >型(填寫小寫英文字母),且y=< >(填寫阿拉伯數(shù)字);6表達式‘c'&&'d’的值為< >(填寫阿拉伯數(shù)字),'c'&&'d'11!(3+4)的值為< >(填寫阿拉伯數(shù)字)。7若x為int類型,則與邏輯表達式“X”等價的表達式是< >,與邏輯表達式“!X”等價的表達式是< >。8表示“整數(shù)x的值大于5”時邏輯值為“真”的表達式是< >,邏輯值為“假”的表達式是< >9已知字母A的ASCII碼為十進制數(shù)65,且設(shè)ch為字符型變量,則表達式ch='A,-'4'+’9'的值為<>(ー個字符常量);若定義:charc='\72';則變量c中包含的字符個數(shù)為< >(數(shù)字)。10、C語言所提供的基本數(shù)據(jù)類型的整型類型包括:< >、整型、<>〇(按每種類型所占字節(jié)數(shù),從小到大排列)

第二章C語言程序結(jié)構(gòu)(順序程序設(shè)計、選擇結(jié)構(gòu)程序設(shè)計、循環(huán)控制)ー、判斷題.do-while語句中的條件為非〇時,就結(jié)束該循環(huán)。.在switch-case語句中,不是每個case后都要使用break語句。().Break語句只能用于循環(huán)結(jié)構(gòu)中。()48.未給變量賦初值,只是運行結(jié)果不正確,不會有其他不良影響。〇5、switch語句中,可以不使用break語句;6、for語句中,三個表達式都可以省略;(7)在for循環(huán)中使用break語句的目的是使流程跳出循環(huán)體,終止當前循環(huán).continue語句只能用于循環(huán)語句中。().while語句中的條件為〇時,就結(jié)束該循環(huán)。.在循環(huán)體內(nèi)使用break語句或continue語句的作用相同。()在C語言中,邏輯值“真”用表示。)1 12)大于〇的數(shù)13)非〇的整數(shù)14)非〇的數(shù)在循環(huán)語句的循環(huán)體中,continue語句的作用是( )。15)立即終止整個循環(huán)17)結(jié)束本次循環(huán)16)15)立即終止整個循環(huán)17)結(jié)束本次循環(huán)18)結(jié)束本次循環(huán)并跳出循環(huán)語句while(!e);中,條件!e等價于( )22.e==l19.e=0 20.e!=0 21.e!=l22.e==l設(shè)intc=5和inta;a=2+(c+=c++,c+8,++c),貝リa=23)15 24)14 25)13 26)16c=c+c++若要表示if(a不等于〇)這ー關(guān)系式,則能正確表示這ー關(guān)系的表達式為if()27)a<>0 28)!a 29)a=0 30)a二、單項選擇題N1、以下不是死循環(huán)的語句是

for(;;x+i);while(1){x++;}fbr(i=10;;i--)sum+=i;for(;(c=getchar())!='\n';)2.for(;;x+i);while(1){x++;}fbr(i=10;;i--)sum+=i;for(;(c=getchar())!='\n';)2.設(shè)有程序段intk=10;while(k=0)k=k-1;以下描述正確的是()。A,循環(huán)體語句ー次也不執(zhí)行。C.while循環(huán)語句執(zhí)行十次。printf("%c”,c);N3.對下述程序,正確的判斷是main(){inta,b;scanf("%d,%d",&a,&b);if(a>b)a=b;b=a;elsea++;b++;printf("%d,%d",a,b);}A.有語法錯誤不能通過編譯C,若輸入5,4則輸出4,5R4.以下程序main()B.D.)。B.循環(huán)是無限循環(huán)。循環(huán)體語句執(zhí)行ー次。若輸入4,5則輸出5,6D,若輸入5,4則輸出5,5inti=010j=10,k=0xl0;printf("%d,%d,%d\n",i,j,k);}有語法錯誤不能通過編譯輸出結(jié)果是()A.8,10,16B.8,10,10C.10,10,10D.10,10,16A.8,10,16B.8,10,10C.10,10,10D.10,10,16R5.若變量已正確說明為int類型,要給a,b,c輸入數(shù)據(jù),以下語句正確的是A)read(a,b,c);B)scanf(“%d%d%d”,a,b,c);A)read(a,b,c);C)scanf("%D%D%D”,&a,%b,%c);D)scanf("%d%d%d",&a,&b,&c);R6.已知在ASCII字符集中,字符〇的ASCH值為48,下面程序的輸出結(jié)果為。main()charx,y;x='O';y二'9';pimtf("%d,%d\n”,x,y);A)因輸出格式不合法,輸出錯誤信息B)48,57D)48,58C)0,9D)48,58.語句for(k=0;k<5;++k)

if(k==3)continue;printf("%d”,k);}的輸出結(jié)果為。A)012 B)0124C)01234D)沒有輸出結(jié)果.為表示關(guān)系x>=y>=z,應(yīng)使用C語言表達式=A)(y<=x)&&(y>=z) B)(x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)&(y>=z)6.若變量已正確定義,語句k=0;elsek=l;w和等價。A、k=(a>b)?l:〇; B、k=a>b;C、k=a<=b; D、a<=b?0:1;9.以下程序的輸出結(jié)果是voidmain()inta=2,b=5;printf(11a=%%%d,b=嬲%d”,a,b);)A)a=%2,b=%5 B)a=2,b=5C)a=%%d,b=%%d D)a=%d,b=%dN10.以下程序的輸出結(jié)果是voidmain(){intx=10,y=10;printf(**%d%d\n”,x-,--y);)A)1010 B)99 C)910D)10911.若要表示if(a不等于〇)這ー關(guān)系式,則能正確表示這一關(guān)系的表達式為if()A)a<>0 B)!a C)a=0 D)aR12對于循環(huán)語句while(1);下面( )是正確的A、死循環(huán) B、循環(huán)一次C、不進入循環(huán)體 D、編譯有錯.下面程序的輸出是(假設(shè)int數(shù)據(jù)是2個字節(jié))voidmain(){inta=32768;printf(4ta=%d\n^^,a);A)a=32768B)a=32767C)a=-32768D)a=-lA)a=32768B)a=32767C)a=-32768D)a=-l.表達式是滿足:當c的值為1、3、5三個數(shù)中任意ー個時值為“真”,否則值為“假”的表達式A)(c=l)||(c=3)II(c=5) B)(c!=l)&&(c!=3)&&(c!=5)C)(c==1)&&(c==3)&&(c=5) D)(c==l)II(c==3)||(c==5)N15.以下程序段的輸出結(jié)果是intx=3;do{printfC%3dM,x-=2;}while(!(—x));A)1 B)30C)1-2 D)死循環(huán)16、數(shù)字字符〇的ASCII值為48,若有以下程序main()(chara=T,b='2';printf("%c,",b++);printf("%d\n",b-a);}程序運行后的輸出結(jié)果是A3,2B50,2 C2,2D2,5017、有以下程序main()(inta,b,d=25;a=d/10&(-l);b=a&&(-1);printf("%d,%d\n",a,b);)程序運行后的輸出結(jié)果是A6,1 B2,1 C6,0 D2,0.若定義floata,現(xiàn)要從鍵盤輸入a的數(shù)據(jù),其整數(shù)位為3位,小數(shù)位為2位,則選用()〇A)scanf&a); B)scanf("%5.2f”,a);C)scanfぐ’%6.2f",&a); D)scanf("版",a);.若定義inti;則以下循環(huán)語句的循環(huán)執(zhí)行次數(shù)是()〇for(i=2;i==0;)printf("%d",i―);A)無限次 B)〇次C)1次 D)2次.下面程序段ーx=3;do

y=x-;if(!y){printf("x");continue;}printf("#");)while(l<=x<=2);A)將輸出##C)是死循環(huán).以下程序中,while循環(huán)的循環(huán)次數(shù)是(ttinclude"stdio.h"main(){inti=0;while(i<10){if(i<l)continue;if(i==5)break;i++;I}A、1B、10 C、6N22.有以下程序:^include"stdio.h"inta=3;main()(ints=0;{inta=5;s+=a++;}s+=a++;printf("%d\n',s);}B)將輸出##*D)含有不合法的控制表達式八D、死循環(huán),不能確定次數(shù)AB)將輸出##*D)含有不合法的控制表達式八D、死循環(huán),不能確定次數(shù)A、8B、10C、7D、1123(4)下面程序段的運行結(jié)果是( )main(){inta=ll,b=10,c=0;a/=b+(b&&c);printf(f,%d\n"a);}TOC\o"1-5"\h\zA.O B.l C.l.l D.ll24(5)兩次運行下面程序,如果從鍵盤上分別輸入6和4,則程序的輸出結(jié)果是( )main( )(intx;scanf("%d",&x);if(x++>5)printf("%d",x);elseprintf("%d\n",x-l);}A,7和5 B,6和3 C.7和4 D.6和4(6)語句while(!e);中,條件!e等價于( )A.e=O B.e!=O C.e!=l D.e==OR25下面程序的輸出是.main()intk=l1;printf("k=%d,k=%o,k=%x\n",k,k,k);A)k=ll,k=12,k=13C)k=ll,k=013,k=oXbA)k=ll,k=12,k=13C)k=ll,k=013,k=oXbB)k=ll,k=13,k=13D)k=ll,k=13,k=b26(7)下面程序的運行結(jié)果是( 26(7)下面程序的運行結(jié)果是( )main(){inti=l,sum=O;lop:sum=sum+i;i=i+2;if(i<6)gotolop;printf(,fsuni=%d\n7,sum);}A.sum=4 B.sum=9 C.sum=16D.sum=2527.以下程序的輸出結(jié)果是—voidmainO{inta=2,b=5;printf(t4a=%%%d,b=%%%d,,Ja,b);}A)a=%2,b=%5 B)a=2,b=5C)a=%%d,b=%%d D)a=%d,b=%d28執(zhí)行下面的程序后,a的值為main(){inta,b;for(a=l,b=l;a<100;a++)(if(b>=20)break;if(b%3==l){b+=3;continue;}b-=5;))A)7 B)8C)9 D)102930.下面的程序會()main(){intx=3,y=0,z=0;if(x-y+z)printf("****");elseprintf(“####");}A、有語法錯誤不能通過編譯 B、輸出****C、可以通過編譯,但不能通過連接,因而不能運行 D、輸出####4.以下程序的輸出結(jié)果是()main。{intx=10,y=10,i;for(i=0;x>8;y=++i)printf(<t%d%d”,x-,y);A>10192B、9876C>10990D>1010911.下面程序的輸出是main()(intk=ll;printf(',k=%d,k=%o,k=%x\n',,k,k,k);]A)k=ll,k=12,k=13 B)k=ll,k=13,k=13C)k=ll,k=013,k=oXb D)k=ll,k=13,k=b2.兩次運行下面的程序,如果從鍵盤上分別輸入6和4,則輸出結(jié)果是ーmain(){intx;scanf("%d",&x");if(x++>5)printf("%d",x)elseprintf("%d\n",x-);)A)7和5 B)6和3C)7和4 D)6和43.讀程序#include^^stdio.h^^main(){inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);printf("\na=%d,b=%f,c=%f\n",a,b,c);)若運行時從鍵盤上輸入9876543210<CR>(<CR>表示回車),則上面程序的輸出結(jié)果是 A)a=98,b=765,c=4321B)a=l,b=432,c=8765C)a=98,b=765.000000,c=4321.000000D)a=98,b=765.0,¢=4321.05.下面程序的輸出是ーmain(){intx=3,y=6,a=0;while(x++!=(y-=l))(a+=l;if(y<x)break;}printf(,,x=%d,y=%d,a=%d\n',,x,y,a);}A)x=4,y=4,a=l B)x=5,y=5,a=lC)x=5,y=4,a=3 D)x=5,y=4,a=l8.三、程序填空題F1.以下程序可判斷輸入的ー個整數(shù)是否能被3或7整除,若能整除,輸出“yes”,否則輸出“no”。請?zhí)羁铡?include"stdio.h"voidmain()(intk;printf(aEnteraintnumber:w);scanf("%d”,v>);if(<>)printf("yes\n");elseprintf("no\n”);)N2.下面程序的功能是計算!-3+5-7+……-99+101的值。main()(inti,t=l,s=O;for(i=l;i<=101;i+=2)(t=< >;s=s+t;t=< >;)printf("%d\nn,s);)F3.下面程序的功能是從鍵盤上輸入若干學(xué)生的學(xué)習(xí)成績,統(tǒng)計并輸出最高成績和最低成績,當輸入為負數(shù)時結(jié)束輸入。main(){floatx,amax,amin;scanf(n%fH,&x);amax=x;amin=x;while(<>=0>){if(x>amax)amax=x;if(<>)amin=x;scanf("%f”,&x);}printf(n\namax=%f\namin=%f\n,,,amax,amin);}F4.下面程序的功能是計算100至1000之間有多少個數(shù)其各位數(shù)字之和是5。#include“stdio.h"voidmain()(inti,s,k,count=0;for(i=100;i<=1000;i++)(s=0;k=i;while(k)(s=s+k%10;k=< >;|if(<>)count++;)printf("%d”,count);}F5下列程序功能是求數(shù)組中主對角線元素之和,請補充完成main(){inta[3][3],ij,s=0;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",<?;for(i=0;i<3;i++)for(j=0;j<3;j++)if(<>)s+=a[i][j];printf("s=%d\n",s);R6.下面程序的功能是:輸入一個字符,如果它是ー個大寫字母,則把它變成小寫字母,如果它是ー個小寫字母,則把它變成大寫字母,其它字符不變,請將程序補充完整:main(){charch;scanf(''%c",&ch);if(ch>='A'&&ch<='Z') ch=ch+32;elseif(< >='a'&&ch< >)<>;printf("%c”,ch);R7.請將用戶輸入的x,y,z三個整數(shù)按照從小到大的順序排列main()(intx,y,z,t;scanf("%d,%d,%d",&x,&y,&z);if(x>y){t=y;y=x;x=t;}if? ?{t=z;z=x;x=t;}if? ?{t=y;y=z;z=t;}printf("smalltobig:%d,%d,%d\n",x,y,z);}F8.以下程序從讀入的整數(shù)數(shù)據(jù)中,統(tǒng)計大于零的整數(shù)個數(shù)和小于零的整數(shù)個數(shù)。用輸入零來結(jié)束輸入,程序中用i統(tǒng)計大于零的個數(shù),用變量j統(tǒng)計小于零的整數(shù)。請?zhí)羁?。voidmain(){intn,i,j;i=0;j=0;printf("EnterINTnumbers,with0toend\n");scanf("%d",&n);while(< >){if(n>0)i=i++;if(n<0)j=j++;<>;)printf(“i=%4dj=%4d\n”,i,j);F9.以下程序用“輾轉(zhuǎn)相除法”來求出兩個正整數(shù)的最大公約數(shù)。請?zhí)羁?。若兩個數(shù)分別放在m和n中,求最大公約數(shù)的算法如下:(1)將兩數(shù)中最大的那個放在m中,小的放在n中。(2)求出m被n除后的余數(shù)r。(3)若余數(shù)為0則執(zhí)行步驟(7);否則執(zhí)行步驟(4)。(4)把除數(shù)作為新的被除數(shù);把余數(shù)作為新的除數(shù)。(5)求出新的余數(shù)r。(6)重復(fù)步驟(3)到(5)。(7)輸出n,n即為最大公約數(shù)。voidmain(){intr,m,n;TOC\o"1-5"\h\zprintf(uEnter );scanf("%d%d",< >);printf(um=%dn=%d\nn,m,n);if(m<n){r=m;m=n;n=r;}r=< >;while(r!=0){m=n,n=r,r=m;}printf(<<H.C.F=%d\n,n);)RIO,以下程序可判斷輸入的ー個字符是否為小寫字母,如果是,則轉(zhuǎn)換為對應(yīng)的大寫字母并輸出;否則,就原樣輸出。請?zhí)羁铡?include"stdio.h"voidmain(){chark;printf(uEnteracharacterhere:v);scanf("%c",v>);if(<k>='a'&&k< >)printf("%c\n”,k-32);elseprintf("%c\n",k);1.程序打印如下形式的圖形*東?***main(){for(inti=l;i<=4;i++){for(intj=1; @ ;j++)printff(2)):2.充下列程序,找出100—200之間的全部素數(shù)#include"math.h''main(){intm,k,i,n=0;for(m=101;m<=200;m=m+2)(k=sqrt(m);for(i=2;(6);i++)if( (7))break;if((8)){printf("%d”,m);n=n+l;}if(n%10==0)printf("\n”);}printf("\n”);第三章數(shù)組ー、判斷題.字符串“girl”大于字符串“good”。.C語言中有字符串變量,與字符數(shù)組等價。()R3.同一數(shù)組可以存儲不同類型的值。()N4.若有:inta[2][3];貝リa+1和a[l]的值以及類型都一樣。〇R5.字符‘、〇’的值就是0。().C語言中是用字符串變量來存放字符串。().表達式sizeof("abc")的值是4〇()N8.同數(shù)組的名字ー樣,函數(shù)的名字也是ー種指針。〇9、C語言中在定義數(shù)組時,ー個數(shù)組的數(shù)組元素的數(shù)據(jù)類型可以不相同;10、chara[10];a[10]=9;上述語句編譯不會出錯;R11.數(shù)組元素的下標是從1開始標號的。()N12.若a為ー維數(shù)組名,貝リ?(a+i)與a[i]等價。().循環(huán)語句中的continue語句的作用是結(jié)束整個循環(huán)。().字符串"That"小于字符串"the"。().字符個數(shù)多的字符串比字符個數(shù)少的字符串大。()有以下語句:intb;char 則正確的輸入語句是)scanf("%d%s",&b,&c); 17)scanf("%d%s",&b,c);18)scanf("%d%s",b,c);19)scanf("%d%s",b,&c);已有定義:chara[]="xyz",b[]={'x','y','z'}以下敘述中正確的是20數(shù)組a和b的長度相同 21a數(shù)組長度小于b數(shù)組長度a數(shù)組長度大于b數(shù)組長度strlen(a)=strlen(b)=3設(shè)有數(shù)組定義:chararray[]="China":則數(shù)組array所占的存貯空間為個字節(jié).4 245 25 6 26 7若定義intx[10];則TurboC編譯系統(tǒng)為該數(shù)組分配個字節(jié)存儲單元。27.10 28.11 29.20 30.21二、單項選擇題R1、對兩個數(shù)組a和b進行如下初始化chara[7]="ABCDEF";charb[6]={'A'/B'C'D','E','F');則以下敘述正確的是 ()A)a與b數(shù)組完全相同 B)a與b長度相同C)a和b中都存放字符串 D)a數(shù)組比b數(shù)組長度長R2.若有說明:inta[3][4];則對a數(shù)組元素的正確引用是()A,a[2][4] B.a[l,3] C,a[l+l][0] D.a(2)(l)R3,合法的數(shù)組定義是()A、intaロゴstring”;B、inta[5]={0,1,2,345};C、vhsts=nstringM;D、charaロ={0,123,4,5};4.以下正確的聲明是()〇A.inta[l][4]={l,2,3,4,5}; B.floatx[3][]={{1},{2},{3});C.longb[2][3]={{l},{1,2},{1,2,3}};D.doubley[][3]={0};5下列語句的執(zhí)行結(jié)果是()〇staticcharstr[10]={"china"};printf("%d",strlen(str));A.10 B.6 C.5 D.OR6、以下能正確定義一維數(shù)組的選項是Ainta[5]={0,l,2,3,4,5}; Bchara[]={0,l,2,3,4,5};Cchara={'A','B','C'); Dinta[5]="0123";.下面程序段的運行結(jié)果是()。chara[7]="abcdef,;ABC\0efcharb[4]="ABC";strcpy(a,b);printf("%c",a[5]);A.空格 BAO C.e D.f8定義如下變量和數(shù)組,則輸出結(jié)果是()。inti;intx[3][3]={l,2,3,4,5,6,7,8,9);for(i=0;i<3;i++) printf("%d",x[i][2-i]);A.l59B.l47 C.357 D.369.下列對ー維數(shù)組a的正確說明語句為( )。A)inta(10); B)intn=10,a[n];intn;scanf("刎",&n);inta[n];^defineSIZE10inta[SIZE];.下列二維數(shù)組的說明中,不正確的是()A、floata[3*8][7-3] B、floata[][3]={O,l,8};C、#defineL3 floata[L][3]D.inta[6],[7].執(zhí)行以下程序段后,S的值是inta[]={5,3,7,2,1,5,4,10);ints=0,k;for(k=0;k<8;k+=2)s+=*(a+k);s=s+a[k]A、!7B、27C、13D、無定值.若有定義:charc[10];從鍵盤輸入“LiFang”,則正確的函數(shù)引用是( )A.scanf("%c”,&c[10J); B.gets(c);C.scanf("%s”,&c); D.gets(c[10]);N13.以下程序的輸出結(jié)果是〇main(){charsi[20]=uChina,,,s2[20]=4<for,,,s[10];if(strcmp(sl,s2)!=0)printf("%s\n",strcat(s2,sl));elseprintf("%d\n”,strlen(sl));)A)ChinaforB)5C)forChinaD)314選擇下面程序運行的結(jié)果:ttinclude“stdio.h"intm[3][3]={{l},{2},{3});intn[3][3]={1,2,3};main(){printf("%d\n",m[l][〇]+n[〇][〇]);printf("%d\n",m[0][l]+n[l][0]);)TOC\o"1-5"\h\z第1條printf語句行輸出的結(jié)果為( )A、〇B、1C,3D、2R15(9)以下對ー維數(shù)組a中的所有元素進行正確初始化的是( )A.inta[10]=(0A0,0); B.inta[101={ };C.inta[]={0); D.inta[10]={10*2};16(10)(8)若定義intx[10];則TurboC編譯系統(tǒng)為該數(shù)組分配( )個字節(jié)存儲單元。A.10 B.ll C.20 D.21

N18.有如下程序main(){inta[3][3]=({l,2}t{3,4},{5,6}},ij,s=O;for(i=l;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%d”,s);)該程序的輸出結(jié)果是A、!8B,19C、20D,21N19.執(zhí)行下列程序時輸入123〈空格>456(空格>789〈回車〉,輸出結(jié)果是()。#inciude“sldio.h"main(){chars[100];intc,i;scanf(M%cM,&c);scanf(M%dH,&i);scanf(M%sM,s);printf(M%c,%d,%s\nu,c,i,s);)D、1,23,456A、123,456,789B、1,456,789C、1,23,456,789D、1,23,456main(){charstr[l ;printf(,,%d\n",strlen(str));(strlen不算、〇,sizeof算、〇)A)6A)611.合法的數(shù)組定義是(Aヽintaロゴstring";C、vhsts="string";.以下正確的聲明是ーB)712)B、inta[5]={0,l,2,3?4,5};D、charaロ={0,1,2,3,4,5};A.inta[l][4]={l,2,3,4,5}; B.floatx[3][]={{1},{2},{3});C.longb[2][3]={{l},{1,2},{1,2,3}};D.doubley[][3]={0};N23.閱讀下面程序,回答問題。include“stdio.h"voidmain()(inti,jrow,column,m;staticintarray[3][3]={{100,200,300},{28,72,-30},{-850,2,6}};m=array[0][0];for(i=0;i<3;i++)for(j=0;j<3;j++)if(array[i][j]<m)(m=array[i][j];row=i;column=j;)printf("%d,%d,%d”,m.row.column);)該程序的功能是()。A、計算二維數(shù)組的元素和B、求二維數(shù)組的最小值及其下標C、對二維數(shù)組進行排序D、求二維數(shù)組的最大值及其下標24.若有以下程序段:inta[]={4,0,2,3,l},kj,t;for(j=l;j<5;j++)(t=a|j];k寸1;while(k>=O&&t>a[k]){a[k+l]=a[k];k-;)a[k+l]=t;)則該程序段的功能是ー(8)―A)對數(shù)組a進行插入排序(升序)。B)對數(shù)組a進行插入排序(降序)。C)對數(shù)組a進行選擇排序(升序)。D)對數(shù)組a進行選擇排序(降序)。N25.執(zhí)行如下程序段,當輸入為Iam<CR>時,輸出的結(jié)果是charstr[80];scanf("%s'',str);strcat(str,"sad!");printf(lt%s",str);A)Iamsad!B)Isad!C)Isad!D)sad!

4.main(){inta[10]={l,2,3,-4,5,6,7,-8,9,10},s=O;for(inti=0;i<10;i++){if(a[i]<0)break;s+=a[i];printfs);}(3)下面程序的輸出是include"stdio.h"include"stdlib.h"main(){charstrl[20],str2[20];scanf(“%s”,strl);〃從鍵盤輸入Helloworldprintf("%s”,strl);/Z輸出結(jié)果1fflush(stdin);gets(slr2);〃從鍵盤輸入Helloworldprintf("%s”,str2);ノ喩出結(jié)果2}輸出結(jié)果1是:(D)WorldHello(D)WorldHello(D)WorldHello(D)WorldHello輸出結(jié)果2是:(A)Hello (B)World (C)HelloWorld7..選擇下面程序運行的結(jié)果:Sinclude"stdio.h"intm[3][3]={{1},{2},{3}};intn[3][3]={1,2,3};main()printf("%d\n",m[l][0]+n[0][0]);printf(*%d\n,/,m[0][l]+n[l][0]):TOC\o"1-5"\h\z第1條printf語句行輸出的結(jié)果為( )A、0 B、1 C、3 D、2.還是剛オ1題那個程序,第2條printf語句行輸出的結(jié)果為( )A、2 B、4 C、6 D,05.函數(shù)調(diào)用:strcat(strcpy(strl,str2),str3)的功能是( )A、將串str!復(fù)制到串str2中后再連接到串str3之后:B、將串str!連接到串str2之后再復(fù)制到串str3之后;C、將串str2復(fù)制到串str!中后再將串str3連接到串strl之后;C、將串strl復(fù)制到串str2中后再將串str3連接到串str2之后;三、程序填空題F1整型數(shù)組求和inta[10]={0,l,2,34,5,6,7,8,9},sum=O,*pa;pa=a;for(pa=a;(<>);(< >))sum=sum+*pa;F2.下面函數(shù)的功能是將一個字符串逆序存放,請?zhí)羁铡?include,'stdio.hn#include“string.h"voidfun(charstr[])(<>;inti,j;for(i=0,j=strlen(str);i<j;i+4-,j—)(m=str[i];str[i]=< >;str[j-l]=m;}printf("%s\n”,str);)R3.下程序從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計其中正數(shù)的個數(shù),并計算它們之和。請?zhí)羁?。main(){inti,a[20],sun,count;suum=count=0;for(i=0;i<20;i++)scanf("%d",< >);{if(a[i]>0){count++;sum+=<>;)}printf("sum=%d,count=%d\n",sum,count);}F4.函數(shù)YangHui的功能是把楊輝三角形的數(shù)據(jù)賦給二維數(shù)組的下半三角,形式如下11213114641其構(gòu)成規(guī)律是:第。列元素和主對角線無素均為1其余元素為其左上方和正上方元素之和數(shù)據(jù)的個數(shù)每行遞增1請將程序補充完整。#defintN6voidYangHui(int*[N][N]){inti,j;x[0][0]=lfor(i=l;i<N;i++){x[i][0]=< >=1;for(j=l;j<i;j++)x[i][j]=< >+x[i-l][j];1}F5、以下程序的功能是將字符串s中的數(shù)字字符放入d數(shù)組中,最后輸出d中的字符串。例如,輸入字符串:abcl23edf456gh,執(zhí)行程序后輸出:123456。include“stdio.h"#include"string.h''main(){chars[80],d[80];inti,j;gets(s);for(i=j=0;s[i]!=,\0';i++)if(s[iJ>=,0,< >s[i]<=,9,){d[j]=s[i];j++;)d[j]=< >;puts(d);}R6.將60分以下的所有成績顯示到屏幕上intscore[l0]={56,76,65,43,98,67,34,89,90,76},i;for(i=0;(< >);i++)if(<score[i]<>)printf(uscore[%d]=%d\n,,,i,score[i]);F7.在n行n列的矩陣中,每行都有最大的數(shù),本程序求這n個最大數(shù)中的最小一個。#include<stdio.h>#defineN100inta[N][N]voidmain(){introw,col,max,min,n;/?輸入合法n(く100),和輸入n*n個整數(shù)到數(shù)組a的代碼略?/for(row=0;row<n;row++)(for(max=a[row][0],col=l;col<n;col++)if(max<a[row][col])max=a[row][col];if(< >)min=max;elseif(min>max)< >;)printf("theminofmaxnumbersif%d\n”,min);IF9求字符串中字符的個數(shù)char*p="HelloWorld”;intnum=O,k=O;while(*(p+k)!=< >){num=<>;k++;}printfC(2)(3)求字符串中字符的個數(shù)(2)(3)求字符串中字符的個數(shù)char*p="HelloWorld,,;intnum=0,k=0;while(*(p+k)!=(① )){(②)(③N10(4)統(tǒng)計字符串的單詞數(shù)量(單詞用空格分隔)

charstr[30]={44Welcomemyfriend!”};inti,num;for(i=l;str[i]!=< >;i++)(if(str[i]!=',&&str[i-l]==< >)num++;}printf("num=%d”,num);printf("num二%d”,num);(4)統(tǒng)計字符串的單詞數(shù)量(單詞用空格分隔)charstr[301={^Welcomemyfriend!,9};inti,num;for(i=l;str[i]!=(① );i++)(if(str[i]!=(② )&&str[i-l]==(③ ))num++;)printf("num=%d”,num);折半查找法:設(shè)數(shù)組長度為n,則將輸入的數(shù)m與a[n/2]比較,若m<a[n/2],則將a[0]到a[n/2T]的數(shù)繼續(xù)折半進行查找;若m=a[n/2],則表示找到該數(shù)的位置;若m>a[n/2],則將a[n/2+l]到a[n]的數(shù)繼續(xù)折半進行查找。.程序功能:有10個數(shù)按升序放在一個數(shù)組中,輸入ー個數(shù),要求用折半查找該數(shù)是數(shù)組中的第幾個元素,如果該數(shù)不在數(shù)組中,打印出“N0”。?include“stdio.h"voidmain()(inta[10]={12,32,45,62,71,76,80,85,90,95);intnum,bott,top,mid;scanf(〃%d〃,&num);bott=0,top=9;while(bott小于等于top){mid=(bott+top)/2;if(num==a[mid]){printf(/z%disthe%dnumber\n〃,num,mid);break;}elseif(num小于a[mid])< >;elsebott=mid+1;}if? >大于top)printf("N0\n");}第四章函數(shù)ー、判斷題RI.C程序中,函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套。R2.C程序中,若對函數(shù)類型未加顯示說明,則函數(shù)的隱含類型為“inビ。3.在調(diào)用函數(shù)時,只能將實參的值傳遞給形參,形參的值不能傳遞給實參。R4.函數(shù)的返回值是通過函數(shù)中的return語句獲得的。.用數(shù)組名作函數(shù)參數(shù)時傳遞的是數(shù)組的值。.全局變量可以被任何ー個函數(shù)中的任何ー個表達式使用。.ー個函數(shù)可以帶回ー個整型值、字符值、實型值等,也可以帶回指針型的數(shù)據(jù)。.C函數(shù)既可以嵌套定義又可以遞歸調(diào)用.( ).C語言規(guī)定,函數(shù)的實參應(yīng)與其對應(yīng)的形參類型一致。().若全局變量和局部變量同名,則全局變量被遮蔽。〇.若要在函數(shù)f中修改變量a的值,應(yīng)該把a的地址傳遞給f。().當數(shù)組做為參數(shù)傳遞給函數(shù)時,是把數(shù)組中的所有元素都傳遞給了該函數(shù)。()N13.給局部變量加上static屬性后,其生存期和作用域都擴展了。〇14、在某個變量前用extern聲明,可以擴展變量的作用域;15、外部變量采用靜態(tài)存儲,內(nèi)部變量采用動態(tài)存儲;16、靜態(tài)外部變量只能在本文件使用,其他文件不能使用該變量;17(1)不同函數(shù)內(nèi)的變量,可以用相同的名字N18(2)設(shè)函數(shù)調(diào)用表達式為:fun(fun(a,b),c),則函數(shù)fun帶3個參數(shù)。(4)C語言中,函數(shù)返回值的類型是由定義函數(shù)時所指定的函數(shù)類型決定的(5)在main函數(shù)內(nèi)定義的變量在整個程序范圍內(nèi)有效(10)靜態(tài)外部變量,不允許其它文件中的函數(shù)訪問(1)不同函數(shù)內(nèi)的變量,可以用相同的名字N23(2)設(shè)函數(shù)調(diào)用表達式為:add(sub(a,b),c),則函數(shù)add帶3個參數(shù)。.在C程序中return語句最多可以返回一個值。().若函數(shù)類型和return語句中表達式類型不一致時,返回類型以函數(shù)類型為準。().在C語言中實參和與其對應(yīng)的形參各占用獨立的存儲單元。〇27由一個函數(shù)調(diào)用另ー個函數(shù),被調(diào)用的函數(shù)乂調(diào)用其他函數(shù)的關(guān)系,稱為函數(shù)的嵌套調(diào)用。(T)28ー個函數(shù)直接或者間接地自己調(diào)用自己的過程成為遞歸調(diào)用。(T)29使用遞歸方法解決問題,必須要有一個明確的結(jié)束遞歸的條件。(T)30遞歸調(diào)用也稱為循環(huán)定義,即用其自身來定義自己的過程。(T)二、單項選擇題1、C語言規(guī)定,簡單變量做實參時,它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式是()A.地址傳遞 B.單向值傳遞C.由實參傳給形參,再由形參傳回給實參D.由用戶指定傳遞方式R2、若調(diào)用ー個函數(shù),且此函數(shù)中沒有return語句,則正確的說法是〇該函數(shù)A.沒有返回值B.返回若干個系統(tǒng)默認值C.能返回一個用戶所希望的函數(shù)值D.返回?ー個不確定的值R3、C語言允許函數(shù)值類型缺省定義,此時該函數(shù)值隱含的類型是()A.float型B.int型C.long型 D.double型R4、在C語言程序中,以下描述正確的是()A.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B.函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套C.函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套D.函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套5.voidmain(){intf(int);intw=2,k;for(k=0;k<3;k++)(w=f(w);priiHf("%d\n",w);}}intf(intx)(inty=0;staticintz=3;y++;z++;return(x+y+z);]程序結(jié)束后,Z的值為0⑴A)3 B)4 C)5 D)6R6.在一個被調(diào)用函數(shù)中,關(guān)于return語句使用的描述,錯誤的是()A、被調(diào)用函數(shù)中可以不用return語句B、被調(diào)用函數(shù)中可以使用多個return語句C>被調(diào)用函數(shù)中,如果有返回值,就一定要有return語句

D、被調(diào)用函數(shù)中,ー個return語句可返回多個值給調(diào)用函數(shù).以下程序輸出的結(jié)果是()。#include<stdio.h>intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);printfC%d\n”,r);}A、A、!2B、13C、14D、15(2)若有如下函數(shù)定義:add(floatx,floaty)則下列說法正確的是( )B.函數(shù)返冋值是floatB.函數(shù)返冋值是float型D.函數(shù)返回值是void型C.函數(shù)返回值是int型9intxl=30,x2=40;//xlx2是全局變量voidmain(){intx3=10,x4=20;sub(x3,x4);sub(x2,xl);L1:printf(u%d,%d,%d,%d\nn,x3,x4,xl,x2);}voidsub(intx,inty)(xl=x;x=y;y=xl;L2:printf("%d,%d\n”,x,y);)LI行輸出結(jié)果為。⑶A)10,20,30,40 B)10,20,40,10C)20,10,40,30 D)10,20,40,40R10.以下對C語言函數(shù)的描述中,正確的是()。A、C程序由一個或ー個以上的函數(shù)組成B、C函數(shù)既可以嵌套定義又可以遞歸調(diào)用C、函數(shù)必須有返冋值,否則不能使用函數(shù)D、C程序中調(diào)用關(guān)系的所有函數(shù)必須放在同一個程序文件中11.以下函數(shù)值的類型是()〇fun(floatx){floaty;y=3*x-4;returny;}A、intB、不確定 C、voidD、float.ー個C程序由函數(shù)A(),B(),C()和函數(shù)P()構(gòu)成,在函數(shù)A()中分別調(diào)用了函數(shù)B()和函數(shù)C(),在函數(shù)B()中調(diào)用了函數(shù)A0,且在函數(shù)P()中也調(diào)用了函數(shù)A0,則可以說()。A、函數(shù)B()中調(diào)用的函數(shù)A()是函數(shù)A()的間接遞歸調(diào)用B、函數(shù)A()被函數(shù)B()調(diào)用是直接遞歸調(diào)用C、函數(shù)P()直接遞歸調(diào)用了函數(shù)A0D、函數(shù)P()中調(diào)用的函數(shù)A()是函數(shù)P()的嵌套.下面函數(shù)調(diào)用語句含有實參的個數(shù)為()。func((a,b,c,d),(e,f,g));A、1B、2C、4D、以上都不對.已有函數(shù)max(a,b)為了讓函數(shù)指針變量p指向函數(shù)max正是確的賦值方法是()。A、p=max; B、*p=max;C、p=max(a,b); D、*p=max(a,b);N15.下面程序運行的結(jié)果為:#include<stdio.h>voidswap(inta,intb){intt;t=a;a=b;b=t;)main()intm=3,n=4;printf("Theold:m=%d,n=%d\n”,m,n);swap(m,n);Printf("Thenew:m=%d,n=%d\n”,m,n);)A、3,4B、m=3,n=4C、3,4D、m二3,n二43,4 m=3,n=4 4,3 m=4,n=3N16、選擇程序的運行結(jié)果 。main(){intx;x=try(5);printf("%d\n',x);}try(intn){if(n>0)return(n*try(n-2));else return(1);)A) 1 B) 150 120 D)答案均是錯誤的.有以下程序viodfun(inta,intb,intc){a=456;b=567;c=678;}main(){intx=10,y=20,z=30;fun(x,y,z);〃值傳遞printf("%d,%d,%d\n",x,y,z);}輸出結(jié)果是()〇A.30,20,10B.10,20,30 C.456,567,678 D.678,567,456.下列語句的執(zhí)行結(jié)果是()。staticcharstr[10]={"china"};printf("%d",strlen(str));A.10 B.6 C.5 D.ON19.讀程序,回答問題。#include<stdio.h>inta=2;intf(intn)staticinta=3;intt=0;if(n%2)staticinta=4;t+=a++;)elsestaticinta=5;t+=a++;)returnt+a++;)voidmain()(ints=a,i;for(i=0;i<3;i++)s+=f(i);printf("%d\n",s);)程序運行結(jié)果是()。A、26B、28C、29D、25.有如下程序intfunc(inta,intb)(return(a+b);)mainO(intx=2,y=5,z=8,r;r=func(func(x,y),z);printf("%d\n”,r);)該程序的輸出的結(jié)果是A)12 B)13 C)14 D)15.有以下程序viodfun(inta,intb,intc){a=456;b=567;c=678;}main(){intx=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n”,x,y,z);)輸出結(jié)果是。A)30,20,10 B)、!0,20,30〇456,567,678D)678,567,456.以下程序執(zhí)行之后sum的值是。main(){inti,sum;for(i=l;i<6;i++)sum+=i;printf("%d\n",sum);}A)15B)14C)不確定D)0N23,voidmain(){intf(int);intw=2,k;for(k=0;kv3;k++)(w=f(w);printf("%d\n”,w);))intf(intx)(inty=0;staticintz=3;y++;z++;return(x+y+z);)程序結(jié)束后,w的值為〇⑵A)20 B)7C)28D)13N24.intx1=30,x2=40;//xlx2是全局變量voidmain()(intx3=10,x4=20;sub(x3,x4);sub(x2,xl);Ll:printf(44%d,%d,%d,%d\n,,,x3,x4,xl,x2);)voidsub(intx,inty)(xl=x;x=y;y=x1;L2:printf("%d,%d\n”,x,y);L2行輸出結(jié)果為=⑷A)10,20B)20,10C)10,20D)20,1040,10 10,40 10,40 40,1025、有以下程序voidss(char*s,chart){while(*s){if(*s==t)*s=l-'a'+'A';s++;))main(){charstr1[1OOJ=,'abcddfefdbd",c='d';ss(strl,c);printf(H%s\nH,str1);//?)程序運行后的輸出結(jié)果是〇A)ABCDDEFEDBDB)abcDDfefDbDC)abcAAfefAbAD)Abcddfefdbd三、程序填空題F1下列程序的功能是:將一個數(shù)字字符串轉(zhuǎn)換為ー個整數(shù)。例如,有字符串“-1234567”程序?qū)⑺D(zhuǎn)換為整數(shù)ー1234567。#include<stdio.h>#include<string.h>longfs(char*p){inti=0.sign=l;longnum=0;if(pg」)sign=<>;if(p[i]='+'||p[i]=,1)i=l;elsei=0;while(p[i]!='\O')!< >=10;num+=p[i]-48;i++;)num=sign*num;return(num);}voidmain(){chars[9];longn;printf(uEnterastring:\n");gets(s);n=fs(s);printf("%d\n",n);}F2下列給定程序中,函數(shù)fun的功能是:用選擇法對數(shù)組中的n個元素按從小到大的順序進行排序#include<stdio.h>#defineN20voidfun(inta[],intn){inti,j,t,p;for(j=O;j<n-1;j++){P=j;for(< >;i<n;i++)if(a[p]>a[i])<>;t=a[p];a[p]=a[j];a|j]=t;)}main()(inta[N]={9,6,8,3,-l},i,m=5;printf("排序前的數(shù)軸:");for(i=0;i<m;i++)printf("%d",a[i]);printf("\n");fun(a,m);printf("排序后的數(shù)據(jù):");for(i=0;i<m;i++)printf("%d",a[i]);printf("\n");)F3.下列給定程序中,函數(shù)fun的功能是:從n個學(xué)生的成績中統(tǒng)計出低于平均分的學(xué)生人數(shù),此人數(shù)由函數(shù)值返回,平均分存放在形參aver所指的存儲單元中。例如,若輸入8名學(xué)生的成績:80.5 60 72 90.5 98 51.5 88 64則低于平均分的學(xué)生人數(shù)為4(平均分為:75)〇

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論