2023年C語(yǔ)言程序設(shè)計(jì)期末復(fù)習(xí)題_第1頁(yè)
2023年C語(yǔ)言程序設(shè)計(jì)期末復(fù)習(xí)題_第2頁(yè)
2023年C語(yǔ)言程序設(shè)計(jì)期末復(fù)習(xí)題_第3頁(yè)
2023年C語(yǔ)言程序設(shè)計(jì)期末復(fù)習(xí)題_第4頁(yè)
2023年C語(yǔ)言程序設(shè)計(jì)期末復(fù)習(xí)題_第5頁(yè)
已閱讀5頁(yè),還剩47頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

TC語(yǔ)言程序設(shè)計(jì)復(fù)習(xí)題判斷題:C語(yǔ)言編寫(xiě)的源程序通過(guò)編譯、連接后,假如沒(méi)有錯(cuò)誤,則運(yùn)營(yíng)結(jié)果一定對(duì)的。()在C語(yǔ)言中,變量是不區(qū)分大小寫(xiě)的,如:a和A是同一個(gè)變量。()double類(lèi)型數(shù)據(jù)的輸入必須用格式“%lf”。()while和do-while循環(huán),肯定是可以互相替換的。()若有定義inta=2,則語(yǔ)句printf(“%d”,a++);的輸出結(jié)果為3。()在循環(huán)體中,使用continue語(yǔ)句,可以跳出該循環(huán)。()表達(dá)式3*5/2和表達(dá)式3/2*5的值相等。()任何變量都必須要定義其類(lèi)型。()表達(dá)式(double)(1/2)的值為0.5。()若有定義inta=0,b;執(zhí)行語(yǔ)句if(a=0)b=0;elseb=1;后,b的值是1。()C語(yǔ)言中用于結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是if、switch、break。()設(shè)有如下定義:inta=1,b=2,c=3,d=4,m=2,n=2;則計(jì)算表達(dá)式:(m=a>b)&&(n=c>d)后,n的值為2。()在可執(zhí)行的C語(yǔ)言程序中有且只有一個(gè)主函數(shù)main(),并且應(yīng)當(dāng)寫(xiě)在程序的最前面。()若有intx,則(x+1)++是一個(gè)合法的c語(yǔ)言表達(dá)式。()設(shè)intx=7,y=5,則x*=y-3后,x的值為14。()假如i的原值為3,則執(zhí)行語(yǔ)句:j=i++;后,j的值為3。()do-while語(yǔ)句先執(zhí)行循環(huán)體,后判斷循環(huán)條件,所以循環(huán)體至少會(huì)執(zhí)行一次。()表達(dá)式4.0*(1/2)的值為2.0。()‘\n’是一個(gè)字符常量。()表達(dá)式3.5%2是合法的C語(yǔ)言表達(dá)式。()C的任何類(lèi)型數(shù)據(jù)在計(jì)算機(jī)內(nèi)部都是以二進(jìn)制形式存儲(chǔ)的。()定義函數(shù)時(shí),必須要有形參和返回值。()在C程序中,main函數(shù)和自定義的函數(shù)都可以有多個(gè)。()語(yǔ)句return(a,b);則函數(shù)可以返回兩個(gè)值。()傳值調(diào)用時(shí),在函數(shù)中形參變量值改變后,不改變實(shí)參變量的值。()構(gòu)成數(shù)組的各個(gè)元素的數(shù)據(jù)類(lèi)型不一定要相同。()有定義:inta[5]={10,11,12,13,14},*p=a;,語(yǔ)句printf(“%d”,*p++);的輸出結(jié)果為11。()在C程序中,函數(shù)既可以嵌套定義,也可以嵌套調(diào)用。()傳值調(diào)用的形參只有在被調(diào)用時(shí),才被創(chuàng)建(分派存儲(chǔ)單元)。()在C程序中,若對(duì)函數(shù)類(lèi)型未加說(shuō)明,則函數(shù)的隱含類(lèi)型為void。()若a為一維數(shù)組名,則*(a+i)與a[i]等價(jià)。()C文獻(xiàn)使用前需要打開(kāi),使用后需要關(guān)閉。()定義為void類(lèi)型的函數(shù),其含義是調(diào)用函數(shù)后,被調(diào)用的函數(shù)的返回值為任意的類(lèi)型。()C語(yǔ)言程序中,若實(shí)參是變量,當(dāng)調(diào)用函數(shù)時(shí)實(shí)參和形參各占一個(gè)獨(dú)立的存儲(chǔ)單元。()在C語(yǔ)言中,所有函數(shù)之間都可以互相調(diào)用。()若有定義chars1[]=”Hello”,s2[]=”world!”,則strlen(s1)+strlen(s2)等于strlen(strcat(s1,s2))。()若有定義inta,*p=&a,*q=p;則p指向a,q指向p。()若有定義inta,*p=&a;char*t;由于指針的數(shù)據(jù)類(lèi)型事實(shí)上是指定指針?biāo)苤赶驅(qū)ο蟮臄?shù)據(jù)類(lèi)型,所以不能將p賦給t。()若fp是指向某文獻(xiàn)的指針,且已讀到該文獻(xiàn)的末尾,則C語(yǔ)言函數(shù)feof(fp)的返回值是0。()在使用fopen()函數(shù)時(shí)必須先定義一個(gè)類(lèi)型為FILE的文獻(xiàn)指針。()void類(lèi)型的函數(shù)一定無(wú)形參。()數(shù)組元素的下標(biāo)必須是整數(shù),不能用實(shí)數(shù)。()若有定義語(yǔ)句“inta[10];”則a[10-9/2]是合法的數(shù)組元素。()若有定義語(yǔ)句“inta[10],i=2;”,則&a[i]與a+i等價(jià)。()數(shù)組定義語(yǔ)句“charc[]="Hello";”與“charc[]={‘H’,’e’,’l’,’l’,’o’};”等價(jià)。()語(yǔ)句“double*p=&x,x;”使指針變量p指向變量x。()C語(yǔ)言規(guī)定,實(shí)參應(yīng)與其相應(yīng)的形參類(lèi)型一致。()系統(tǒng)判斷字符串結(jié)束的標(biāo)志是’\n’。()若打開(kāi)文獻(xiàn)的方式為“w”而該文獻(xiàn)已經(jīng)存在,則文獻(xiàn)中原有數(shù)據(jù)被清空。()單選題:可以把由高級(jí)語(yǔ)言編寫(xiě)的源程序翻譯成目的程序的系統(tǒng)軟件叫(B)A.源程序B.編譯程序C.匯編程序D.解釋程序下列結(jié)構(gòu)中,不屬于結(jié)構(gòu)化程序設(shè)計(jì)中的3種結(jié)構(gòu)的是(D)A.循環(huán)結(jié)構(gòu)B.順序結(jié)構(gòu)C.選擇結(jié)構(gòu)D.網(wǎng)狀結(jié)構(gòu)程序中調(diào)用了庫(kù)函數(shù)exit(0),必須包含頭文獻(xiàn)(B)A.string.hB.stdlib.hC.ctype.hD.math.hx、y是整型變量,執(zhí)行語(yǔ)句scanf("x=%d,y=%d",&x,&y);使x和y的值分別為7和9,對(duì)的的輸入是(C)A.79B.7,9C.x=7,y=9 D.x=7y=條件“-6≤x≤4”,相應(yīng)的C邏輯表達(dá)式是(D)A.x>=-6andx<=4B.-6<=x<=4C.x>=-6||x<=4D.x>=-6&&x<=4假設(shè)變量x、k都已定義,下列語(yǔ)句片段中,無(wú)語(yǔ)法錯(cuò)誤的是(B)A.switch(x){casex>=80:putchar(‘A’);casex<70:putchar(‘E’);}B.switch(x){case2+4:k=‘A’;defualt:k=‘E’;case3*5:k=‘B’;}C.switch(x){case3+x:k=x-2;case5*x:k=x+3;default:k=0;}D.switch(x){case4.5:k=0.5*x;case6.8:k=8*x;default:k=0;}判斷下面的while循環(huán)體的執(zhí)行次數(shù)(D)i=5;k=10;while(i=1)i=k--;A.B.10次C.2次D.無(wú)數(shù)次能對(duì)的地定義符號(hào)常量的是(B)A.#definen=6B.#definen6C.#definen6;D.#DEFINE若有定義語(yǔ)句“charc=‘\134’;”則變量c(A)A.包含1個(gè)字符B.包含2個(gè)字符C.包含3個(gè)字符D.包含4個(gè)字符設(shè)x和y均為int型變量,則語(yǔ)句“x+=y;y=x-y;x-=y;”的功能是(D)A.把x和y按從小到大排列B.把x和y按從大到小排列C.無(wú)擬定結(jié)果D.互換x和y中的值X=X+YY=X-YX=X-Y下列運(yùn)算符中,優(yōu)先級(jí)最低的是(D)A.?:B.&&C./=D.,若有條件表達(dá)式“x?a++:b--”,則以下表達(dá)式中(B)等價(jià)于表達(dá)式xA.x==0B.x!=0C.x==1D.x!=1以下關(guān)于switch語(yǔ)句和break語(yǔ)句的描述,只有(C)是對(duì)的的A.在switch語(yǔ)句中必須使用break語(yǔ)句B.break語(yǔ)句只能用于switch語(yǔ)句中C.在switch語(yǔ)句中,可以根據(jù)需要使用或不使用break語(yǔ)句D.break語(yǔ)句是switch語(yǔ)句的一部分以下程序段的循環(huán)次數(shù)是(A)for(i=3;i==0;)printf(“%d”,i--);A.0次B.3次C.2次D.無(wú)數(shù)次while(scanf(“%f”,&n),n<=0);下列描述對(duì)的的是(A)A.當(dāng)輸入n>0的值時(shí)循環(huán)終止B.當(dāng)輸入n<=0的值時(shí)循環(huán)終止C.scanf(“%f”,&n),n<=0不能充當(dāng)循環(huán)條件D.循環(huán)體不能為空以下不對(duì)的的C語(yǔ)言標(biāo)記符是(C)。A._nextB.a(chǎn)_1_2C.f(x,y)D.Prog若有定義:intk=2,x;則能使變量x的值為3的表達(dá)式是(B)。A.x=5/k+0.5B.x=5/k+1;C.x=x+kD.x=2*k--設(shè)charc=‘y’;,表達(dá)式c>=‘a(chǎn)’&&c<=‘z’||c>=‘A’&&c<=‘Z’的值為(B)A.0B.1C.“假”D.“真”若有定義inta=1,b=2,c=3;在下列選項(xiàng)中,不對(duì)的的賦值語(yǔ)句是(D)。A.a++;B.a=b=c=0;C.a=b==c;D.a=b+c=1;判斷下面的while循環(huán)體的執(zhí)行次數(shù)(D)。k=10,s=0;while(k>=0)s+=k--;A.0次B.1次C.10次D.11次設(shè)整型變量a為9,使b不為4的表達(dá)式是(B)。A.b=a/2B.b=(--a)-5C.b=a>3?4:5D.b=a%5循環(huán)語(yǔ)句for(x=0,y=0;(y!=123)||(x<4);x++);執(zhí)行(A)。A.無(wú)限次B.4次C.3次D.0次若有定義:inta=8,b=5,c;,則執(zhí)行語(yǔ)句c=a/b+0.4;后,c的值為(B)。A.1.4B.1C.2已知intx=10,y=20,z=30;,執(zhí)行if(x>y)z=x;x=y;y=z;后x,y,z的值是(B)。A.10,20,30B.20,30,30C.20,30,10D.20,30,20為了避免在嵌套的條件語(yǔ)句if-else中產(chǎn)生二義性,C語(yǔ)言規(guī)定:else子句總是與(B)配對(duì)。A.縮排位置相同的ifB.其之前最近的沒(méi)有else配對(duì)的ifC.其之后最近的ifD.同一行上的if下列各m的值中,能使表達(dá)式m%3==2&&m%5==3&&m%7==2值為1的是(A)。A.23B.17C.8D.6以下4個(gè)選項(xiàng)中,不能看作一條語(yǔ)句的是(D)。A.;B.a=0,b=0,c=0;C.while(i--);D.if(b==0)m=1;n=2;邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的數(shù)據(jù)類(lèi)型(D)。A.只能是0或1B.只能是0或非0正數(shù)C.只能是整型或字符型數(shù)據(jù)D.可以是任何類(lèi)型數(shù)據(jù)以下程序段輸出結(jié)果是(C)。intx=3;do{printf(“%3d”,x-=2);}while(!(--x));A.1B.30C.1-2D.死循環(huán)有定義”inta=5;”,語(yǔ)句”a+=a-=a+a;”,執(zhí)行后,變量a的值為(C)。A.10B.5C.-10D.-5下列各語(yǔ)句中,可以將變量u、s中最大值賦給變量t的是(C)。A.if(u>s)t=u;t=s;B.t=u;if(u>s)t=s;C.t=s;if(u>s)t=u;D.if(u>s)t=s;elset=u;下列可以對(duì)的表達(dá)字符型常量的是(B)。A.“a”B.’\t’C.”\n”D.18執(zhí)行x=(6*7%8+9)/3;后,x的值為(C)。A.1B.2C.3D.4設(shè)inta=3,b=6,c=9;,下列表達(dá)式中值為0的是(D)。A.2*a<=bB.a&&bC.(3*a-c)||bD.b-a<c-b下列語(yǔ)句中,哪一個(gè)可以輸出26個(gè)大寫(xiě)英文字母(D)。A.for(a=‘A’;a<=‘Z’;printf("%c",++a)); B.for(a=‘A’;a<‘Z’;a++)printf("%c",a);C.for(a=‘A’;a<‘Z’;printf("%c",++a));D.for(a=‘A’;a<=‘Z’;printf("%c",a++));下列(C)是c語(yǔ)言中的常量。A.e+2B.068C.‘\x41’D.π下列(C)表達(dá)式的值等于0。A.2%5B.1/2.0C.10>5>3D.!(‘a(chǎn)’-97)設(shè)有定義doublex=2.4,y=3.56;,則表達(dá)式(int)x+y的值為(A)。A.5.56B.5.4C.5D.設(shè)有語(yǔ)句intn=10,i=4;,則語(yǔ)句n%=i+1;執(zhí)行后,n的值是(A)。A.0B.1C.2D.3下列語(yǔ)句將大寫(xiě)字母轉(zhuǎn)換為小寫(xiě)字母,其它字符不變,其中對(duì)的的是(B)。A.if(ch>=‘A’||ch<=‘Z’)ch=ch+32;B.if(ch>=‘A’&&ch<=‘Z’)ch=ch+32;C.ch=(ch>=‘A’&&ch<=‘Z’)?ch+32:‘‘;D.ch=(ch>‘A’&&ch<‘Z’)?ch+32:ch;設(shè)有定義inta=0,b=0,t;,則執(zhí)行語(yǔ)句:t=a++&&++b;后,a和b的值是(b!)。A.a=0,b=0B.a=0,b=1C.a=1,b=0D.a=1,b=1若有inti;,執(zhí)行語(yǔ)句for(i=1;i++<4;);后變量i的值是(C)。A.3B.4C.5D.不擬定程序段intn=10;while(n>7){n--;printf("%d",n);}的輸出結(jié)果是(D)。A.109B.98C.1098D.987執(zhí)行下面程序段,若從鍵盤(pán)輸入33后,其輸出結(jié)果是(D)。intx;scanf(“%d”,&x);if(x>60)printf(“%d”,x);elseif(x>30)printf(“%d”,x);elseif(x>20)printf(“%d”,x);A.333333B.3333C.33D.333333設(shè)有函數(shù)調(diào)用語(yǔ)句:m=max(a,max(b,c));則函數(shù)max有(C)個(gè)實(shí)參A.1B.4C.2程序中調(diào)用了庫(kù)函數(shù)strlen,必須包含頭文獻(xiàn)(D)。A.stdlib.hB.math.hC.ctype.hD.string.h下列數(shù)組s中所存放字符串的長(zhǎng)度為(B)。chars[]="a\127b\\\tcd\xdg\n";A.9B.10C.11D.18下列能對(duì)的定義一維數(shù)組a的語(yǔ)句是(D)。A.inta(20);B.intn=20,a[n];C.intn;scanf("%d",&n);D.#definen20inta[n];inta[n];若有inta[8]={1,9,8,0,4,2,5,3};則數(shù)值為2的表達(dá)式是(C)。A.*aB.a[6]C.*a+1D.*(a+1)+5下列程序段的運(yùn)營(yíng)結(jié)果為(B)。chars[]="mn\0gy";printf("%s",s);A.mn0B.mnC.MngyD.mngy若有定義chars[8]="broke",*ps=s;則不能代表字符k的表達(dá)式是(A)。A.ps+3B.s[3]C.ps[3]D.*(ps+3)下面的程序段中循環(huán)體執(zhí)行次數(shù)(B)。chara[5],*t="Boy",*s=t;inti=0;while(*s!=‘\0’){a[i]=*s;s++;}A、4次B、3次C、0次D、無(wú)數(shù)次對(duì)變量定義及初始化為:FILE*p=fopen("d:\\aa.txt","r");intx;floata;chars;能對(duì)的的將文獻(xiàn)中的整數(shù)、實(shí)數(shù)、字符輸入到各變量的是(D)。A、fgets(x,a,s,p);B、fprintf(p,”%d,%f,%c”,x,a,s);C、fgetc(x,a,s,p);D、fscanf(p,”%d,%f,%c”,&x,&a,&s);函數(shù)定義如下:voidfun(intx,inty,int*a,int*b){*a=x+y;*b=x*y;}可以對(duì)的調(diào)用fun函數(shù)的是(B)。其中m、n是已經(jīng)定義過(guò)的int型變量。A、fun(5,8,m,n);B、fun(5,8,&m,&n);C、fun(5,8,*m,*n);D、fun(m,n,5,8);定義chars[4]={"Max"},t;執(zhí)行下面語(yǔ)句段后輸出結(jié)果是(B)。t=s[0];s[0]=s[2];s[2]=t;printf("%s\n",s);A、MaxB、xaMC、axMD、xMa以下敘述不對(duì)的的是(B)。A.main函數(shù)在C語(yǔ)言中必須有且只有一個(gè)B.C程序的執(zhí)行從main函數(shù)開(kāi)始,所以main函數(shù)必須放在程序最前面C.函數(shù)可以帶參數(shù),也可以不帶參數(shù)D.每個(gè)函數(shù)執(zhí)行時(shí),按函數(shù)體中語(yǔ)句的先后順序,依次執(zhí)行每條語(yǔ)句在C程序中,若對(duì)函數(shù)返回類(lèi)型未加說(shuō)明,則函數(shù)的隱含類(lèi)型為(A)。A.intB.doubleC.voidD.char有一個(gè)函數(shù)調(diào)用f((1,2),3*4),則本次調(diào)用的是下面哪個(gè)函數(shù)f(B)?voidf(inta);voidf(inta,intb);voidf(inta,intb,intc);voidf(inta,intb,intc,intd);若有定義語(yǔ)句“inta[10];”則下列對(duì)a中數(shù)組元素對(duì)的引用的是(C)。A.a(chǎn)[10]B.a(chǎn)[2.5]C.a(chǎn)[5%2]D.a(chǎn)[5+6]下列哪個(gè)語(yǔ)句存在語(yǔ)法錯(cuò)誤(C)?A.charc=‘A’;B.charc[]="A";C.charc=‘AB’;D.charc[]="AB";已知”chars[]=“ab\0cd”;”,則數(shù)組s的長(zhǎng)度為(),s所存放的字符串的長(zhǎng)度為()。BA.6和5B.6和2C.5和2D.5和5若有說(shuō)明:inti,j=1,*p=&i;則與i=j;等價(jià)的語(yǔ)句是(B)。A.i=*p;B.*p=j;C.i=&j;D.p=&j;有數(shù)組定義語(yǔ)句“chara[20];”,則對(duì)的的輸入語(yǔ)句為(D)。A.scanf("%s",&a);B.scanf("%s",a[]);C.gets(a[20]);D.gets(a);p和q同為指向int類(lèi)型的指針,則下面哪個(gè)表達(dá)式會(huì)導(dǎo)致語(yǔ)法錯(cuò)誤?(A)A.p+qB.p-qC.p=qD.p==q下列語(yǔ)句定義p為指向double型變量x的指針,其中對(duì)的的是(B)。A.doublex,*p=*x;B.doublex,*p=&x;C.double*p=&x,x;D.doublex;int*p;p=&x;已定義以下函數(shù):intfun(int*p){return*p;},fun函數(shù)返回值是(C)。A.不擬定的值B.形參p中存放的值C.一個(gè)整數(shù)D.形參p的地址值下面程序的運(yùn)營(yíng)結(jié)果為(A)。inta[]={1,2,3,4},*p=a;printf("%d",*p++);!!!!!printf("%d",*p);A.12B.11C.23D.22若有定義:charstr[]=“ABCD”,*p=str;則語(yǔ)句printf(“%d\n”,*(p+4));的輸出結(jié)果是(B)(已知’A’的ASCII碼為65)。A.68B.0C.字符D的地址D.不擬定的值下面(C)語(yǔ)句是從文獻(xiàn)中讀取一個(gè)字符。A.ch=getc();B.fputc(ch,fp);C.fscanf(fp,"%c",&ch);D.scanf("%c",&ch);以“只讀”方式打開(kāi)文本文獻(xiàn)c:\1.txt,下列語(yǔ)句中哪一個(gè)是對(duì)的的(B)。A.fp=fopen("c:\\1.txt","a");B.fp=fopen("c:\\1.txt","r");C.fp=fopen("c:\1.txt","wb");D.fp=fopen("c:\1.txt","r");已知數(shù)組的初始化語(yǔ)句為:inta[10]={1,2,3,4,5};則表達(dá)式a[5]的值為(D)。A.5B.1C.不擬定的值D.0表達(dá)式“c=*p++”的執(zhí)行過(guò)程是(A)。A.復(fù)制*p的值給c后再執(zhí)行p++B.復(fù)制*p的值給c后再執(zhí)行(*p)++C.復(fù)制p的值給c后再執(zhí)行p++D.執(zhí)行p++后將*p的值復(fù)制給c變量的指針,其含義是指該變量的(B)。A.值B.地址C.名字D.一個(gè)標(biāo)志若有定義:chars[]="HappyNewYear";則下面那條語(yǔ)句能輸出字符’N’(D)?A.printf(“%s”,s+5);B.printf(“%c”,s+5);C.printf(“%s”,*(s+5));D.printf(“%c”,*(s+5));C語(yǔ)言中函數(shù)返回值的類(lèi)型是由(C)決定的。A.調(diào)用該函數(shù)的主調(diào)函數(shù)類(lèi)型B.return語(yǔ)句中的表達(dá)式類(lèi)型C.定義函數(shù)時(shí)所指定的返回函數(shù)值類(lèi)型D.調(diào)用函數(shù)時(shí)臨時(shí)以下對(duì)的的函數(shù)說(shuō)明是(A)。A.intfun(int,int);B.intfun(intx,y);C.intfun(x,y);D.intfun(intx;inty);在C語(yǔ)言中,下面關(guān)于數(shù)組的描述對(duì)的的是(C)。A.?dāng)?shù)組的大小是固定的,但可以有不同類(lèi)型的數(shù)組元素B.?dāng)?shù)組的大小是可變的,但所有數(shù)組元素的類(lèi)型必須相同C.?dāng)?shù)組的大小是固定的,所有數(shù)組元素的類(lèi)型必須相同D.?dāng)?shù)組的大小是可變的,可以有不同的類(lèi)型的數(shù)組元素假定int類(lèi)型變量占用4個(gè)字節(jié),有定義:intx[10]={0,2,4};,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是(D)。A.3B.12C.10D.40下列程序段執(zhí)行后,s的值是(A)。S=1s=10+2s=120+3charch[]="123";inti,s=0;for(i=0;ch[i]>=‘0’&&ch[i]<=‘9’;i++)s=10*s+ch[i]-’0’;為A.123B.1C.3D.6要將20,30,40,50存入數(shù)組b中,下列對(duì)的的程序段是(A)。A.inti,b[4];for(i=0;i<4;i++)b[i]=(i+2)*10;B.intb[4];b={20,30,40,50};C.intb[4];b[1]=20,b[2]=30,b[3]=40,b[4]=50;D.intb[4];b[4]={20,30,40,50};設(shè)已有定義:char*st="howareyou";下列程序段中對(duì)的的是(A)。A.chara[12],*p=a+1;strcpy(p,st+4);B.chara[12];strcpy(++a,st);C.chara[12],*p;strcpy(p,st);D.chara[],*p=a+1;strcpy(p,&st[4]);若已有定義charstr[10];要將鍵盤(pán)輸入的字符串"apear"賦給str,應(yīng)使用(B)。A.scanf("%s",str);B.gets(str);C.str="apear";D.getchar(str);若inta=1,b=2,*pa=&a,*pb=&b;,執(zhí)行語(yǔ)句*pa*=3;b*=2;printf(“%d,%d”,*pa,*pb);后輸出(D)。A.1,2B.1,4C.3,2D.3,4若有inta=100,b=200,t,*temp,*pa=&a,*pb=&b;則下列各語(yǔ)句組中,不能實(shí)現(xiàn)變量a,b值互換的是(C)。A.t=a;a=b;b=t;B.t=*pa;*pa=*pb;*pb=t;C.temp=pa;pa=pb;pb=temp;D.a(chǎn)=a+b;b=a-b;a=a-b;已知有語(yǔ)句FILE*fp;intx=123;fp=fopen("out.dat","w");,假如需要將變量x的值以文本形式保存到磁盤(pán)文獻(xiàn)out.dat中,則以下函數(shù)調(diào)用形式中,對(duì)的的是(B)。A.fprintf("%d",x);B.fprintf(fp,"%d",x);C.fprintf("%d",x,fp);D.fprintf("out.dat","%d",x);以下對(duì)的的函數(shù)定義是(D)。A.doublefun(intx,inty)B.doublefun(intx,y){z=x+y;returnz;}{intz;returnz;}C.fun(x,y)D.doublefun(intx,inty){intx,y;doublez;{doublez;z=x+y;returnz;}z=x/y;returnz;}設(shè)有定義語(yǔ)句chars[]="abcDE";,則s[5]的值是(C)。A.未知字符B.’0’C.’\0’D.’E’當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)數(shù)組名,則向函數(shù)傳送的是(B)。A.?dāng)?shù)組的長(zhǎng)度B.?dāng)?shù)組的首地址C.?dāng)?shù)組每一個(gè)元素的地址D.?dāng)?shù)組每個(gè)元素中的值能對(duì)一維數(shù)組對(duì)的初始化的語(yǔ)句是(C)。A.inta[5]={0,1,2,3,4,5};B.inta[5]={};C.inta[5]={10};D.inta[5]={1,……,5};下面程序段的輸出結(jié)果是(A)。chara[10]="abcd";charb[4]="ABC";strcat(a,b);printf(“%s”,a);A.a(chǎn)bcdABCB.a(chǎn)bcdC.ABCD.ABCabcd設(shè)有下列定義chars[]="12345",*p=s;則下列表達(dá)式中錯(cuò)誤的是(D)。A.*(p+1)B.*(s+2)C.p="ABC"D.s="ABC"設(shè)有如下定義:inta[]={1,3,5,7,9};int*p;則下列程序段的輸出結(jié)果為(A)。p=a;*(p+2)+=2;printf(“%d,%d\n”,*p,*(p+2));A.1,7B.1,5C.5,9D.3,7判斷字符串s1與s2是否相等,應(yīng)當(dāng)使用的語(yǔ)句是(D)。A.if(s1==s2)B.if(s1=s2)C.if(s1[]==s2[])D.if(strcmp(s1,s2)==0)程序閱讀題:說(shuō)明:閱讀下列程序,在每小題提供的程序運(yùn)營(yíng)結(jié)果若干可選答案中,挑選一個(gè)對(duì)的答案。#include<stdio.h>答案:Avoidmain(){intn;for(n=1;n<=10;n++){if(n%3==0)break;printf("%d",n);}}A. 12B.369C.12457810D.#include<stdio.h>答案:Dvoidmain(){inti,n;scanf("%d",&n);//輸入24i=2;while(n>1)if(n%i==0){printf("%d\t",i);n/=i;}elsei++;printf("\n");}A.2261B.2341C.3222D.2223#include<stdio.h>答案:Avoidmain(){inti,m=15,y=-1;for(i=2;i<=m/2;i++)if(m%i==0)y=0;elsey=1;printf("%d##",y);}A.1##B.2##C.0##D.3###include<stdio.h>答案:Cvoidmain(){intj,k,s1,s2;s1=s2=0;for(j=1;j<=5;j++){s1++;for(k=1;k<=j;k++)s2++;}printf("%d%d",s1,s2);}A.55B.56C.515D.521#include"stdio.h"答案:Cvoidmain(){inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);//輸入printf("a=%d,b=%.1f,c=%.1f\n",a,b,c);}A.a=12,b=345,c=6543B.a=12,b=123,c=1234C.a=12,b=345.0,c=6543.0D.a=12.0,b=345.0,c=6543.0#include<stdio.h>答案:Dvoidmain(){chargrade;scanf("%c",&grade);//輸入Bswitch(grade){case‘A’:printf(">=85");case‘B’:case‘C’:printf(">=60");case‘D’:printf("<60");default:printf("error.");}}A.>=85>=60<60B.>=60<60C.>=60D.>=60<60error.#include<stdio.h>答案:Bvoidmain(){inta,b; for(a=1,b=1;a<100;a++) {if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}printf("%d\n",a);}A.7B.8C.9D.10#include<stdio.h>答案:Avoidmain(){inti,j,k,a=3,b=2;i=(--a==b++)?--a:++b;j=a++;k=b;printf("i=%d,j=%d,k=%d\n",i,j,k);}A.i=1,j=1,k=3B.i=1,j=1,k=2C.i=4,j=2,k=4D.i=2,j=1,k=3#include<stdio.h>答案:Bvoidmain(){inta=1,b=0;do{switch(a){case1:b=1;break;case2:b=2;break;default:b=0;}b=a+b;}while(b==0);printf("a=%d,b=%d\n",a,b);}A.a=1,b=3B.a=1,b=2C.a=1,b=1D.a=1,b=0#include<stdio.h>答案:Cvoidmain(){inti,a,b;for(a=10;a<=20;a++){b=1;for(i=2;i<=a/2;i++)if(a%i==0){b=0;break;}if(b==1) printf("%d",a);}}A.101214161820B.1113151719C.11131719D.101418#include<stdio.h>答案:Cvoidmain(){intn,sum_p=0,sum_f=0;scanf(“%d”,&n);while(n!=-1){if(n>=60&&n<=100)sum_p++;elseif(n>=0&&n<60)sum_f++;scanf(“%d”,&n);}printf(“%d,%d”,sum_p,sum_f);}輸入數(shù)據(jù)為2367879826101-20195680-1A.5,6B.4,5C.4,4#include<stdio.h>答案:Dvoidmain(){ints=0,i,t,flag=1;for(i=1;i<5;i++){t=flag*i*i;1-49-16s+=t;flag=-flag;}printf(“%d”,s);}A.15B.10C.-15D.#include<stdio.h>答案:Bvoidmain(){inti=0;while(i<3){switch(i){case0:printf("%d",i);case1:printf("%d",i);break;case2:printf("%d",i);break;}i++;}}A.012B.0012C.00112#include<stdio.h>答案:Cvoidmain(){inta=2,b=-1,c=2;if(a<b)if(b<0)c=0;elsec++;printf("%d\n",c);}A.0B.1C.2#include<stdio.h>答案:Avoidmain(){inti;for(i=1;i<=5;i++){if(i%2)printf(“*”);i=不為0執(zhí)行elsecontinue;printf(“#”);}printf(“$\n”);}A.*#*#*#$B.#*#*#*$C.*#*#$D.#*#*$#include<stdio.h>答案:Cvoidmain(){inti,j,sum,m,n=4;sum=0;for(i=1;i<=n;i++){m=1;1+2+6+24for(j=1;j<=i;j++)m=m*j;sum=sum+m;}printf(“sum=%d\n”,sum);}A.sum=10B.sum=24C.sum=33D.#include"stdio.h"答案:Avoidmain(){intj,x=0;for(j=0;j<=3;j++){if(j%2)continue;x++;}printf("x=%d\n",x);}A.x=2B.x=4C.x=3D.x=1#include<stdio.h>答案:Cvoidmain(){intk;for(k=1;k<5;k++){if(k%2)printf("#");elsebreak;printf("*");}}A.#B.*#*# C、#* D.#*#*#include<stdio.h>答案:Avoidmain(){intx=6,y=5;x+=1/8;x=(++x==y++)?x%3:x/3;printf("x=%d,y=%d\n",x,y);}A.x=2,y=6B.x=1,y=5C.x=2y=6D.x=1y=5#include<stdio.h>答案:Bvoidmain(){intk=1,sum=0;do{k=k*(k+1)/2;sum+=k;}while(sum%7);printf(“sum=%d”,sum);}A.7B.sum=7C.7.0D.sum=7.0下面程序執(zhí)行后的對(duì)的輸出項(xiàng)是()。答案:A#include<stdio.h>voidswap1(inta[]){intt;t=a[0];a[0]=a[1];a[1]=t;}voidswap2(inta,intb){intt;t=a;a=b;b=t;}voidmain(){intx[2]={1,5};inty[2]={1,5};swap1(x);swap2(y[0],y[1]);printf("x:%d%d\n",x[0],x[1]);printf("y:%d%d\n",y[0],y[1]);}A. x:51 B.x:15 C. x:15 D.y:15 y:51 y:15 y:51指出對(duì)的的程序是()。答案:B程序(1)程序(2)#include<stdio.h>#include<stdio.h>voidmain()voidmain(){{char*p;chars[80];doublex,y,*p;p=s[0];x=3.45;p=&x;y=*p;scanf("%s",s);printf("%f\n",y);printf("%s\n",p);}}程序(3)程序(4)#include<stdio.h>#include<stdio.h>voidmain()voidmain(){{intx,*p;int*p=&a;*p=x;inta;printf("%d\n",*p);printf("%d\n",*p);}}A.程序(1) B.程序(2)C.程序(3)D.程序(4)下面程序的輸出結(jié)果是()。答案:B#include<stdio.h>voidast(intx,inty,int*cp,int*dp){*cp=x+y;*dp=x-y;x=*cp+*dp;y=*cp-*dp;}voidmain(){intx,y,c,d;x=7;y=8;ast(x,y,&c,&d);printf("%d,%d,%d,%d\n",x,y,c,d);}A.7,8,0,0B.7,8,15,-1C.15,-1,15,-1D.14,16,0,0下面程序執(zhí)行時(shí)輸入:HangZhouChina,則輸出結(jié)果是()。答案:A#include<stdio.h>voidmain(){charc[81];inti;scanf(“%s”,c);for(i=0;c[i]!=‘\0’;i++)if(c[i]>=‘a(chǎn)’&&c[i]<=‘z’)c[i]-=32;printf(“%s”,c);}A.HANGZHOU B.HangZhouChina C.HangZhou D.HANGZHOUCHINA#include<stdio.h>答案:Dvoidf(char*s,char*t){for(;*s!=‘\0’;s++);for(;*t!=‘\0’;s++,t++)*s=*t;*s=‘\0’;}voidmain(){chara[80],b[80];printf(“PleseInputstrings:”);gets(a);//輸入Hello,↙gets(b);//輸入Everyone!↙f(a,b);printf("%s\n",a);}A.Hello,B.Everyone!C.Everyone!Hello,D.Hello,Everyone!#include<stdio.h>答案:Cvoidmain(){inta[6]={5,1,3,7,8,4},i,j,k;for(i=1;i<=3;i++){k=a[5];for(j=4;j>=0;j--)a[j+1]=a[j];a[0]=k;}for(i=0;i<6;i++)printf("%2d",a[i]);printf(“\n”);}A.487315B.513784C.784513D.573184#include<stdio.h>答案:Bvoidfun(inta,intb,int*c){inti,j;i=a%10;a=a/10;j=b%10;b=b/10;*c=a*1000+j*100+i*10+b;}voidmain(){intx=41,y=28,z=0;fun(x,y,&z);printf("%d,%d,%d\n",x,y,z);}A.41,28,0B.41,28,4812C.4,2,0D.4,2,4812#include<stdio.h>charfun(char*c){if(*c>=‘A’&&*c<=‘Z’)*c-=‘A’-’a’;return*c;}voidmain(){chars[81],*p=s;gets(s);while(*p!=‘\0’){*p=fun(p);putchar(*p);p++;}printf("\n");}若運(yùn)營(yíng)時(shí)從鍵盤(pán)輸入:OPENTHEDOOR<CR>(此處<CR>代表Enter),則程序運(yùn)營(yíng)后的輸出結(jié)果是(B)。A.oPENtHENdOORB.openthendoorC.OPENTHENDOORD.OpenThenDoor程序填空題:說(shuō)明:閱讀下列程序說(shuō)明和相應(yīng)程序,在每小題提供的若干可選答案中,挑選一個(gè)對(duì)的答案。輸入一批以-1結(jié)束的整數(shù),求偶數(shù)和?!境绦颉?include<stdio.h>voidmain(){intx,sum;sum=0;scanf("%d",&x);____(1)____{答案:Bif(___(2)___)sum=sum+x;答案:C___(3)____;答案:B}printf(___(4)____);答案:C}(1)A.while(x==-1)B.while(x!=-1)C.if(x==-1)D.if(x!=-1)(2)A.x==2B.x%2==2C.x%2==0D.x/2==0(3)A.scanf("%d",x) B.scanf("%d",&x)C.sum=0D.x=sum(4)A."sum=%d,&sum"B."sum=%d",&sumC."sum=%d",sumD."sum=%d,sum"輸入一個(gè)正整數(shù)n,計(jì)算s=1-1/3+1/5-1/7…前n項(xiàng)之和#include<stdio.h>voidmain(){intdenominator,flag,i,n;doubleitem,sum;printf("Entern:");scanf("%d",&n);denominator=1;____(1)______;答案:Bsum=0;for(i=1;____(2)____;i++){答案:Citem=___(3)____;答案:Asum=sum+item;_____(4)______;bdenominator=denominator+2;}printf("Sum=%.2f\n",sum);}(1)A.flag=0B.flag=1C.flag=-1D.(2)A.i<nB.i<n-1C.i<=nD.i<=n-1(3)A.flag*1.0/denominator; B.-flag*1.0/denominator;C.-flag/denominator;D.flag/denominator;(4)A.flag=1B.flag=-flagC.flag=-1D.flag=0輸入1個(gè)整數(shù),求各位數(shù)字的平方和。例如:輸入-123,輸出14(即12+22+32)。#include<stdio.h>voidmain(){intdigit,in,s;scanf("%d",&in);____(1)____;答案:A____(2)____;答案:Cwhile(in>0){____(3)____;答案:Bs=s+digit*digit;____(4)____;答案:D}printf("sum=%d\n",s);}(1)A.if(in<0)in=-inB.if(in)in=-inC.if(!in)in=-inD.in=-in(2)A.s=1B.sum=1C.s=0D.sum=0(3)A.digit=in/10B.digit=in%10C.digit=in/2D.digit=in-10(4)A.in*=10B.in--C.in++D.in/=10【程序說(shuō)明】輸入一行字符(以回車(chē)鍵結(jié)束),分別記錄出其中的英文字母、空格、數(shù)字和其他字符的個(gè)數(shù)。#include<stdio.h>voidmain(){intblank=0,digit=0,letter=0,other=0;charc;c=getchar();while(____(1)____){答案:Dif(____(2)____)/*判斷英文字母*/答案:Bletter++;elseif(c>=‘0’&&c<=‘9’)/*判斷數(shù)字字符*/digit++;elseif(____(3)____)/*判斷空格*/答案:Ablank++;elseother++;____(4)____;答案:C}printf("letter=%d,blank=%d,digit=%d,other=%d\n",letter,blank,digit,other);}(5)A.c==‘\0’B.c!=‘\0’C.C==‘\n’D.c!=‘\n’(6)A.c>=‘A’&&c<=‘z’B.c>=‘A’&&c<=‘Z’||c>=‘a(chǎn)’&&c<=‘z’C.c>=‘a(chǎn)’&&c<=‘Z’D.c>=‘A’&&c<=‘Z’&&c>=‘a(chǎn)’&&c<=‘z’(7)A.c==‘‘B.c=‘‘C.c==“”D.c=“”(8)A.breakB.continueC.c=getchar()D.c++從鍵盤(pán)任意輸入某班40個(gè)學(xué)生的成績(jī),輸出最高分并記錄出不及格人數(shù)。#include<stdio.h>voidmain(){intscore,max,n=0,i;scanf(“%d”,&score);if((1))n++;答案:Dmax=score;for(i=1;(2);i++){答案:Cscanf(“%d”,&score);if(_(3)_)max=score;答案:Bif(score<60)n++;}printf("最高分:%d,有%d個(gè)學(xué)生不及格\n",(4));答案:C}(1)A.max>0B.max<60C.score>0D.score<60(2)A.n<40B.n<=40C.i<40D.i<=40(3)A.max>scoreB.max<scoreC.n>scoreD.n<score(4)A.score,nB.score,--nC.max,nD.max,--n【程序說(shuō)明】以下程序用來(lái)判斷輸入的數(shù)a是否為素?cái)?shù)(質(zhì)數(shù))。若一個(gè)整數(shù)除了能被1和自身除盡外,不能被其它任何數(shù)除盡,則此數(shù)即為素?cái)?shù)。#include<stdio.h>voidmain(){inti,n,a,ok;printf("Enteranumber:");scanf("%d",&a);ok=1;i=2;n=a/2;while(ok&&____(1)____)答案:Bif(a%i!=0)____(2)____;答案:Celseok=____(3)____;答案:Dprintf("%d",a);if((4))printf("是素?cái)?shù)!\n");答案:Celseprintf("不是素?cái)?shù)!\n");}(1)A.i<nB.i<=nC.i>=nD.i==n(2)A.ok=0B.ok=1C.i++D.i=1(3)A.TRUEB.FALSEC.1D.0(4)A.i==nB.i==aC.okD.ok==0【程序說(shuō)明】函數(shù)inver(charstr[])的功能是使輸入的一個(gè)字符串按反序存放。#include<string.h>inver(charstr[]){chart;inti,j,len;len=(1)答案:Afor(i=0,(2);i<j;i++,j--)答案:B{t=str[i];(3)答案:Cstr[j]=t;}}voidmain(){charstr[20];scanf("%s",str);(4)答案:Dprintf("轉(zhuǎn)換后字符串是:%s\n",str);}【供選擇的答案】(1)A、strlen(str);B、strlen(str[]);C、str(str);D、str(str[])(2)A、j=lenB、j=len-1C、j=len+1D、j=0(3)A、str[j]=str[i];B、str[i]=t;C、str[i]=str[j];D、t=str[j];;(4)A、inver(str[0]);B、inver(*st);C、inver(str[i])D、inver(str);從鍵盤(pán)上輸入5個(gè)學(xué)生的C語(yǔ)言成績(jī),以格式%5d寫(xiě)到文本文獻(xiàn)aa.txt中。#include<stdio.h>#include<stdlib.h>voidmain(){FILE*fp1;inti,score;fp1=_____(1)_______;答案:Bfor(i=0;i<5;i++){scanf("%d",&score);______(2)_____;答案:D}close(fp1);}【供選擇的答案】(1)A.fopen("c:\aa.txt","w")B.fopen("c:\\aa.txt","w")C.fopen("c:\\aa.txt","a")D.fopen("c:\\aa.txt","r")(2)A.fprintf(fp1,"%5d",&score)B.fscanf(fp1,"%5d",&score)C.printf("%5d",score)D.fprintf(fp1,"%5d",score)編寫(xiě)程序,輸入n,m,求組合數(shù)Cmn。規(guī)定定義兩個(gè)函數(shù)jc和cmn分別計(jì)算階乘和組合數(shù)#include<stdio.h>_____(1)_______答案:Cinti;longt=1;_____(2)_____答案:At*=i;returnt;}longcmn(intm,intn){_____(3)_______答案:B}voidmain(){intn,m;printf("Inputmandn:\n");scanf("%d%d",&m,&n);printf("cmn=%ld\n",_____(4)_____);答案:B}(1)A.longjc(intn);B.longjc(int);C.longjc(intn){D.longjc(int){(2)A.for(i=1;i<=n;i++)B.for(i=0;i<n;i++)C.for(i=1;i<n;i++)D.for(i=0;i<=n;i++)(3)A.cmn=jc(m)/(jc(n)*jc(m-n));B.returnjc(m)/(jc(n)*jc(m-n));C.cmn

溫馨提示

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

評(píng)論

0/150

提交評(píng)論