版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGEword文檔可自由復(fù)制編輯二、C選擇題1.表達(dá)式“(a=4*5,b=a*2),b-a,a+=2”的值是()。A.2 B.20 C.22 D.422.以下是一個(gè)自定義函數(shù)的頭部,其中正確的是()。A.intfun(inta[],b) B.intfun(inta[],inta)C.intfun(int*a,intb) D.intfun(chara[][],intb)3.以下數(shù)組聲明語(yǔ)句中正確的是()。A.intn,a[n]; B.inta[];C.inta[2][3]={{l},{2},{3}}; D.inta[][3]={{l},{2},{3}};4.已知在某C語(yǔ)言編譯系統(tǒng)中表達(dá)式sizeof(int)的值是2,如果希望將常量-70000正確地保存在一個(gè)變量a中,該變量聲明語(yǔ)句應(yīng)當(dāng)是()。A.inta; B.longinta; C.unsignedinta; D.unsignedinta;5.以下聲明語(yǔ)句中,用于聲明一個(gè)行指針變量的是()。A.int*p(int); B.int*p; C.int(*p)[3]; D.int(*p)(int);6.在以下程序中,需要在fun函數(shù)中聲明一個(gè)int型的變量,以下選項(xiàng)中()不能用做該變量的名字。#include<math.h>inty;main(){inta=1;fun(a);}intfun(intx){_______; /*int型變量聲明語(yǔ)句位置*/… /*若干執(zhí)行語(yǔ)句*/}A.x B.y C.fabs D.fun7.如有語(yǔ)句“intx,y=0,z,*p[3];p[0]=&x;p[1]=&y;p[2]=&z;”,以下表達(dá)式中有語(yǔ)法錯(cuò)誤的是()。A.y++ B.p++ C.*++p[0] D.(*p[0])++8.設(shè)有聲明語(yǔ)句“inta[3][3]={1,2,3,4,5,6,7,8,9};”,以下語(yǔ)句中除()外均能輸出a[1][2]的值。A.printf("%d",*(*(a+1)+2)) B.printf("%d",*(&a[2][0]-1));C.printf("%d",*(a[1]+2)); D.printf("%d",*(a+1)[2]);9.已知有聲明語(yǔ)句intx=8,則下列表達(dá)式中,值為2的是()。A.x+=x-=x B.x%=x-2 C.x>8?x=0:x++ D.x/=x+x10.以下關(guān)于函數(shù)的敘述中正確的是()。A.在函數(shù)體中可以o直接引用另一個(gè)函數(shù)中聲明為static類(lèi)別的局部變量的值B.在函數(shù)體中至少必須有一個(gè)return語(yǔ)句C.在函數(shù)體中可以定義另一個(gè)函數(shù)D.在函數(shù)體中可以調(diào)用函數(shù)自身11.若有聲明語(yǔ)句“inta[10],b[3][3];”,則以下對(duì)數(shù)組元素賦值的操作中,不會(huì)出現(xiàn)越界訪問(wèn)的是()。A.a(chǎn)[-1]=0 B.a(chǎn)[10]=0 C.b[3][0]=0 D.b[0][2]=012.若有聲明語(yǔ)句“charch=’a’,*pc=&ch;”,以下語(yǔ)句中有語(yǔ)法錯(cuò)誤的是()。A.(*pc)++; B.ch+=-‘a(chǎn)’+‘A’;C.toupper(ch)=ch; D.ch++;13.已知有聲明語(yǔ)句“inta[5]={1,2,3,4,5},*p,i;”,以下語(yǔ)句中()不能正確輸出a數(shù)組全部元素的值。A.for(p=a,i=0;i<5;i++)printf("%d",*(p+i));B.for(p=a;p<a+5;p++)printf("%d",*p);C.for(p=a,i=0;p<a+5;p++,i++)printf("%d",p[i]);D.for(p=a;p<a+5;p++)printf("%d",p[0]);14.已知某程序如下:floatp=1.5;#definep2.5main(){printf("%f",p);}則main函數(shù)中標(biāo)識(shí)符p代表的操作數(shù)是()。A.float型變量 B.double型變量C.float型常量 D.double型常量15.已有聲明“intS[2][3]”,以下選項(xiàng)中()正確地引用了數(shù)組S中的基本元素。A.S[1>2][!1] B.S[2][0] C.S[1] D.S16.邏輯“異或”運(yùn)算可描述為“axorb”,其中a和b為參加運(yùn)算的兩個(gè)操作數(shù),運(yùn)算結(jié)果為當(dāng)且僅當(dāng)a、b兩個(gè)操作數(shù)中只有一個(gè)為真時(shí)才為真,其他情況下均為假。以下表達(dá)式中()可以正確表示邏輯“異或”運(yùn)算。A.a(chǎn)||b B.a(chǎn)&&b C.(a&&b)&&!(a||b) D.(a||b)&&!(a&&b)17.若有聲明“inta[5],*b=a,(*c)[3],*d[3];”,則在以下表達(dá)式中有語(yǔ)法錯(cuò)誤的是()。A.a(chǎn)[0]=0 B.b[0]=0 C.c[0]=0 D.d[0]=018.若有聲明:intk,a,b;unsignedlongy=5;doublex=1.23;則以下表達(dá)式中正確的是()。A.x%(-5) B.x=y[6] C.k=(a=1,b=2,&a+&b) D.a(chǎn)+=a-=(b=2)*(a=3)19.一個(gè)用C語(yǔ)言編寫(xiě)的源程序中,()是必不可少的。A.取名為main的函數(shù)定義 B.#include<stdio.h>C.變量聲明 D.注釋20.以下聲明中正確的是()。A.intn=2,a[n]={10}; B.intn=10,*p[2]=&n;C.intn=10,a[2]={n}; D.inta[2][2]={10},(*p)[2]=a+1;21、若有函數(shù)fun的定義為voidfun(…){staticinta=1;…}則下列敘述中不正確的是()。A.在每次調(diào)用fun函數(shù)時(shí),變量a的值是上次調(diào)用結(jié)束時(shí)a的值B.在fun函數(shù)之外,可以用變量名a直接引用a的值C.在其他函數(shù)中,可以出現(xiàn)聲明doublea=2.5;D.fun函數(shù)的形式參數(shù)不能取名為a22.以下單目運(yùn)算符均只需要一個(gè)操作數(shù),其中要求操作數(shù)的類(lèi)型只能是指針型的是()。A.& B.++ C.! D.*23.已知有聲明“intgood=l;”,若要使得表達(dá)式“p="good"+good”無(wú)語(yǔ)法錯(cuò)誤(包括警告錯(cuò)誤),p應(yīng)當(dāng)聲明為()。A.charp; B.char*p; C.intp; D.int*p;24.以下全局變量聲明中正確的是()。A.a(chǎn)utointi=1; B.floata=1,b=0.5,c=a+b;C.charfor=1; D.staticcharch;25.若已有聲明“doublea[2][3]={1,2,3,4,5,6};”,則下列表達(dá)式中不能正確引用a[1][1]值的是()。A.*(a[0]+4)B.*(a[1]+1)C.*(*(a+3)+1)D.*(*a+4)26、已有聲明“inta[5];”,以下表達(dá)式中不能正確取得a[1]指針的是()。A.&a[1]B.++aC.&a[0]+1D.a(chǎn)+l27.以下關(guān)于語(yǔ)句的說(shuō)法中正確的是()。A.do-while語(yǔ)句的循環(huán)體至少會(huì)被執(zhí)行1次B.while語(yǔ)句的循環(huán)體至少會(huì)被執(zhí)行1次C.for語(yǔ)句的循環(huán)體至少會(huì)被執(zhí)行1次D.在C語(yǔ)言中只能用do、do-while或for語(yǔ)句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)28.已知函數(shù)f的定義如下:voidf(void){printf("That’sgreat!");}則調(diào)用f函數(shù)的正確形式是()。A.f;B.f();C.f(void);D.f(1);29.以下程序在編譯時(shí)在第三行報(bào)錯(cuò)“Redeclarationof‘a(chǎn)’infunctiond”,如果決定修改該行聲明中出現(xiàn)的局部變量a的名字,則下列選項(xiàng)中不能用來(lái)替換變量名a的是()。intb;voidd(inta){intf;doublea=1; printf("%d",a);}main(){inte=1;d(e);} A.f B.e C.d D.b30、以下語(yǔ)句中不包含關(guān)鍵字的是()。 A.x=sqrt(2);B.while(x!=0)x--;C.if(x<0)x=-x;D.returnx;31.在main函數(shù)體內(nèi)部和外部均允許出現(xiàn)的實(shí)體是()。A.預(yù)處理命令B.語(yǔ)句 C.另一函數(shù)的定義 D.函數(shù)形式參數(shù)聲明32、已知有聲明intx=2:,以下表達(dá)式中值不等于8的是()。A.x+=2,x*2B.x+=x*=XC.(x+7)/2*((x+1)%2+1)D.x*7.2/x+133、執(zhí)行以下程序時(shí), #include<stdio.h> main() {inta;floatb;scanf("%3d%f",&a,&b);printf("%d\t%f",ab);}若要求變量a和b分別從鍵盤(pán)獲得輸入值45和678.0,則以下四種輸入數(shù)據(jù)中(代表“空格”鍵,<CR>代表“回車(chē)”鍵),不能達(dá)到該要求的輸入數(shù)據(jù)是()。A.45678<CR>B.45<CR>678<CR>C.45,678<CR>D.045678<CR>34.下列程序段中,能將變量x、y中值較大的數(shù)保存到變量a、值較小的數(shù)保存到變量b的程序段是()。A.if(x>y)a=x;b=y;elsea=y;b=x;B.if(x>y){a=x;b=y;}elsea=y;b=x;C.if(x>y){a=x;b=y;}else{a=y;b=x;}D.if(x>y){a=x;b=y;}else(x<y){a=y;b=x;}35.已知函數(shù)fun的定義如下:voidfun(intx[],inty){intk;for(k=0;k<y;k++)x[k]+=y;}若main函數(shù)中有聲明inta[10]={10}及調(diào)用fun函數(shù)的語(yǔ)句,則正確的fun函數(shù)調(diào)用形式是()。A.fun(a[],a[0]);B.fun(a[0],a[0]);C.fun(&a[0],a[0]);D.fun(a[0],&a[0]);36.設(shè)有下列程序段:staticcharb=2;voidY(){ staticfloatd=4;……}inta=1;voidX(){intc=3;……}關(guān)于程序段中各變量的屬性,以下敘述中錯(cuò)誤的是()。A.a(chǎn)是全局變量,函數(shù)X可以訪問(wèn),函數(shù)Y不能訪問(wèn)B.b是全局變量,函數(shù)X和函數(shù)Y都可以訪問(wèn)C.c是動(dòng)態(tài)變量,函數(shù)X可訪問(wèn),函數(shù)Y不可訪問(wèn)D.d是靜態(tài)變量,函數(shù)X和函數(shù)Y都可以訪問(wèn)37、若有如下聲明和語(yǔ)句:intt[3][3],*pt[3],k;for(k=0;k<3;k++)pt[k]=&t[k][0];則表達(dá)式*(*(pt+1)+2)所引用的是()。A.t[2][0] B.&t[2][0] C.t[1][2] D.&t[1][2]38.設(shè)有聲明floata=1.23456;inti;,欲將a中的數(shù)值保留小數(shù)點(diǎn)后兩位,第三位進(jìn)行四舍五入運(yùn)算,能實(shí)現(xiàn)該功能的表達(dá)式是()。A.i=a*100+0.5,a=i/100.0 B.a(chǎn)=(a*100+0.5)/100.0C.a(chǎn)=((int)a*100+0.5)/l00.0 D.a(chǎn)=(a/100+0.5)/100.039.若已有聲明“intx=4,y=3;”,則表達(dá)式x<y?x++:y++的值是()。A.2 B.3 C.4 D.540.設(shè)有變量聲明“charc;”,執(zhí)行“for(;c=(getchar()!=’\n’);)printf("%c",c);”時(shí),從鍵盤(pán)上輸入“ABCDEFG↙”之后,輸出的結(jié)果是()。A.ABCDEFG B.AABBCCDDEEFFGGC.非字母數(shù)字字符 D.語(yǔ)句不能執(zhí)行41.以下表示數(shù)學(xué)式“a<b<c”的邏輯表達(dá)式中,錯(cuò)誤的是()。A.a(chǎn)<b<c B.a(chǎn)<b&&b<c C.!(a>=b)&&!(b>=c) D.!(a>=b||b>=c)42.下面關(guān)于循環(huán)語(yǔ)句for、while、do_while的敘述中,正確的是()。 A.三種循環(huán)語(yǔ)句的循環(huán)體都必須放入一對(duì)花括號(hào)中 B.三種循環(huán)語(yǔ)句中都可以缺省循環(huán)終止條件表達(dá)式 C.三種循環(huán)語(yǔ)句的循環(huán)體都至少被無(wú)條件地執(zhí)行一次 D.三種循環(huán)語(yǔ)句都可能出現(xiàn)無(wú)窮循環(huán)43、若有聲明“inta[]={l,2,3,4},*p,i;”,則以下程序段中不能輸出13的是()。A.for(i=0;i<4;i+=2)printf("%d",a[i]);B.for(p=0;p<4;p+=2)printf("%d",a[p]);C.for(p=a;p<a+4;p+=2)printf("%d",*p);D.for(p=a,i=0;i<4;i+=2)printf("%d",p[i]);44、下列敘述中正確的是()。A.main函數(shù)必須出現(xiàn)在其他函數(shù)之前B.main函數(shù)中至少必須有一條語(yǔ)句C.C程序總是從main函數(shù)的第一條語(yǔ)句開(kāi)始執(zhí)行D.C程序總是在執(zhí)行完main函數(shù)的最后一條語(yǔ)句后結(jié)束45.已知有結(jié)構(gòu)定義和變量聲明如下: structstudent { charname[20]; intscore; structstudent*h; }stu,*p;int*q;以下選項(xiàng)中錯(cuò)誤的是()。A.p=&stu; B.q=&stu.score; C.scanf("%s%d",&stu); D.stu.h=p;46、設(shè)有聲明“intp[10]={1,2},i=0;”,以下語(yǔ)句中與“p[i]=p[i+1],i++;”等價(jià)的是()。A.p[i]=p[i+1]; B.p[++i]=p[i]; C.p[++i]=p[i+1]; D.i++,p[i-1]=p[i];47.設(shè)有結(jié)構(gòu)定義及變量聲明如下: structproduct { char[5]; floadtprice; }y[4]={"100",100};以下表達(dá)式中錯(cuò)誤的是()。A.(*y).code[0]=’2’; B.y[0].code[0]=’2’ C.y->price=10; D.(*y)->price=10;48.若有聲明“inta=3,b=4,c=5;”,則下列表達(dá)式中值為0的是()。A.a(chǎn)&&b=0 B.a(chǎn)<=b C.a(chǎn)||b&&c D.!(!c||1)49.已知有聲明“l(fā)ongx,y;”,且x中整數(shù)的十進(jìn)制表示有n位數(shù)字(4<n<10),若要求去掉整數(shù)x十進(jìn)制表示中的最高位,用剩下的數(shù)字組成一個(gè)新的整數(shù)并保存到y(tǒng)中,則以下表達(dá)式中能正確實(shí)現(xiàn)這一功能的是()。A.y=x/(10*(n-1))B.y=x%(10*(n-1))C.y=x%(long)pow(10,n-1)D.y=x%(10^(n-1))50.已知有聲明“intx,y;”,若要求編寫(xiě)一段程序?qū)崿F(xiàn)“當(dāng)x大于等于0時(shí)y取值1,否則y取值-1”,則以下程序段中錯(cuò)誤的是()。 A.if(x>=0)y=1;elsey=-1;B.y=x>=0?1:01;C.switch(){casex>=0:y=1;break; default:y=-1; }D.switch(x-abs(x)){case0:y=1;break;default:y=-1;}51、已知有聲明“intm[]={5,4,3,2,1},i=0;”,下列對(duì)m數(shù)組元素的引用中,錯(cuò)誤的是()。 A.m[++i]B.m[5]C.m[2*2]=0D.m[m[4]]52、若函數(shù)調(diào)用時(shí)的實(shí)參為變量,則以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。A.實(shí)參和其對(duì)應(yīng)的形參占用同一存儲(chǔ)單元B.形參不占用存儲(chǔ)單元C.同名的實(shí)參和形參占用同一存儲(chǔ)單元D.形參和實(shí)參占用不同的存儲(chǔ)單元53.C語(yǔ)言規(guī)定,在一個(gè)源程序中main函數(shù)的位置()。A.必須在最開(kāi)始B.必須在最后C.必須在預(yù)處理命令的后面D.可以在其他函數(shù)之前或之后54、已知有聲明“inta=3,b=4,c;”,則執(zhí)行語(yǔ)句“c=1/2*(a+b);”后,c的值是()。A.0B.3C.3.5D.455、已知字母A的ASCII碼是65,字母a的ASCII碼是97,變量c中存儲(chǔ)了一個(gè)大寫(xiě)字母的編碼。若要求將c中大寫(xiě)字母編碼轉(zhuǎn)換成對(duì)應(yīng)小寫(xiě)字母編碼,則以下表達(dá)式中不能實(shí)現(xiàn)該功能的是()。A.c=tolower(c)B.c=c+32C.c=c-‘A’+’a’D.c=(c+’A’)%26-‘a(chǎn)’56.已知有定義和聲明: structstudent{ intno; charname[20]; struct{intyear,month,day;}birth;}s;若要求將日期“1989年11月12日”保存到變量s的birthA.year=1989;month=11;day=12;B.s.year=1989;s.month=11;s.day=12;C.birth.year=1989;birth.month=11;birth.day=12;D.s.birth.year=1989;s.birth.month=11;s.birth.day=12;57、執(zhí)行以下程序后的結(jié)果是()。#include<stdio.h>voidmain() { intx=3; Do{ printf("%d\t",x=x-3);}while(!x); }A.輸出一個(gè)數(shù):0B.輸出一個(gè)數(shù):3C.輸出兩個(gè)數(shù):0和-3D.無(wú)限循環(huán),反復(fù)輸出數(shù)58.設(shè)有聲明“inta=4,b=3,c=5;”,以下4個(gè)程序段中有3個(gè)程序段的執(zhí)行效果是相同的,另一個(gè)執(zhí)行效果不同的是()。A.if(a>b)c=a,a=b,b=c;B.if(a>b){c=a,a=b,b=c;}C.if(a>b)c=a;a=b;b=c;D.if(a>b){c=a;a=b;b=c;}59、以下關(guān)于if語(yǔ)句和switch語(yǔ)句的敘述中錯(cuò)誤的是()。A.if語(yǔ)句和switch語(yǔ)句都可以實(shí)現(xiàn)算法的選擇結(jié)構(gòu)B.if語(yǔ)句和switch語(yǔ)句都能實(shí)現(xiàn)多路(兩路以上)選擇C.if語(yǔ)句可以嵌套使用D.switch語(yǔ)句不能嵌套使用60.若有聲明語(yǔ)句“chars1[10]={0},s2[10]="books";”,則能將字符串"books"賦給數(shù)組s1保存的表達(dá)式是()。A.s1="books"; B.strcpy(s2,s1);C.s1=s2; D.strcat(sl,s2);61.已知A盤(pán)根目錄下的一個(gè)文本數(shù)據(jù)文件data.dat中存儲(chǔ)了100個(gè)int型數(shù)據(jù),若需要修改該文件中已經(jīng)存在的若干個(gè)數(shù)據(jù)的值,只能調(diào)用一次fopen函數(shù),已有聲明語(yǔ)句“FILE*fp;”,則fopen函數(shù)的正確調(diào)用形式是()。A.fp=fopen("a:\\data.dat","r+");B.fp=fopen("a:\\data.dat","w+");C.fp=fopen("a:\\data.dat","a+");D.fp=fopen("a:\\data.dat","w");62.?dāng)?shù)組和鏈表都可以用于存儲(chǔ)一組彼此有關(guān)聯(lián)的數(shù)據(jù),以下說(shuō)法中不正確的是()。A.?dāng)?shù)組占用一塊連續(xù)的存儲(chǔ)區(qū)域,鏈表可能占用若干塊不連續(xù)的存儲(chǔ)區(qū)域B.?dāng)?shù)組和鏈表所占用的存儲(chǔ)區(qū)域均不能在程序運(yùn)行期間動(dòng)態(tài)地分配C.?dāng)?shù)組中的數(shù)據(jù)可以隨機(jī)存取或順序存取,鏈表中的數(shù)據(jù)只能順序存取D.?dāng)?shù)組的長(zhǎng)度是固定的,鏈表的長(zhǎng)度是不固定的63.設(shè)有定義和聲明語(yǔ)句:typedefstructdtype{inta;structdtype*b;}node;staticnodex[3]={5,&x[1],7,&x[2],9,’\0’},*prt=&x[0];下列選項(xiàng)中,表達(dá)式值不為5的是()。A.x[1].b->a-2B.Ptr->b->a-2C.(ptr+1)->a-2D.ptr->a64.在以下程序中,需要在main函數(shù)之后定義一個(gè)函數(shù),以下選項(xiàng)中()可以用做該函數(shù)的名字。#defineP3.14inty;main(){inta=1;函數(shù)名(a);…/*若干執(zhí)行語(yǔ)句*/}int函數(shù)名(intx){returnx*x;}A.main B.y C.P D.print65.已知有語(yǔ)句“FILE*fp;intx=123;fp=fopen("out.dat","w");”,如果需要將變量x的值以文本形式保存到一個(gè)磁盤(pán)文件out.dat中,則以下函數(shù)調(diào)用形式中正確的是()。A.fprintf("%d",x); B.fprintf(fp,"%d",x);C.fprinff("%d",x,fp); D.fprintf("out.dat","%d",x);66.已知有聲明語(yǔ)句“chars1[10]="12345",s2[10]="abcde",s3[10];”,以下語(yǔ)句中能將s1中存儲(chǔ)的字符串和s2中存儲(chǔ)的字符串正確交換的是()。A.s3=s1,s1=s2,s2=s3;B.s3[0]=s1[0],s1[0]=s2[0],s2[0]=s3[0];C.strcpy(s3[0],s1[0]),strcpy(s1[0],s2[0]),strcpy(s2[0],s3[0]);D.strcpy(s3,s1),strcpy(sl,s2),strcpy(s2,s3);67.在定義任何一個(gè)函數(shù)時(shí),下列選項(xiàng)中()是不可缺少的。A.函數(shù)名之前的數(shù)據(jù)類(lèi)型 B.函數(shù)名之后的一對(duì)圓括號(hào)C.形式參數(shù)聲明 D.函數(shù)體中的語(yǔ)句68.已有數(shù)據(jù)類(lèi)型定義和變量聲明如下:structperson{intnum;charname[20],sex;struct{intclass;charprof[20];}in;}a={20,"Lining",’M’,{5,"computer"}},*p=&a;下列語(yǔ)句中正確的是()。A.printf("%s",a->nname); B.printf("%s",p->in.prof);C.printf("%s",*); D.printf("%c",p->in->prof);69.若有以下程序:intx;intf(inty){return標(biāo)識(shí)符;}#include<stdio.h>intw;main(){intz=2;f(z);…}則在函數(shù)f中return語(yǔ)句后允許出現(xiàn)的標(biāo)識(shí)符是()。A.x或w B.x或y C.z或w D.NULL70.以下跳轉(zhuǎn)語(yǔ)句中,只有()可以選擇不唯一的跳轉(zhuǎn)目的地。A.continue; B.break; C.goto標(biāo)識(shí)符; D.return;71.在缺省情況下,標(biāo)準(zhǔn)C的編譯系統(tǒng)中預(yù)定義的標(biāo)準(zhǔn)輸出流stdout直接連接的設(shè)備是()。A.軟盤(pán) B.硬盤(pán) C.鍵盤(pán) D.顯示器72.已有枚舉類(lèi)型定義:“enumletter{A,B,C=7,D,E};”,以下表達(dá)式中除()外,其他表達(dá)式的機(jī)內(nèi)值均等于10。A.’\xb’-1 B.B+E C.010+2 D73.已知數(shù)據(jù)類(lèi)型定義和變量聲明如下:structsk{inta;floatb;}data[2],*p;若有p=data,則以下對(duì)data[0]中成員a的引用中錯(cuò)誤的是()。A.data[0]->a B.data->a C.p->a D.(*p).a74.已知有聲明“charc=’1’;intx=300;floatt=35000;doubled=3.1234567e10;”,則以下表達(dá)式求值時(shí)除()外其結(jié)果都可能是不準(zhǔn)確的。A.x=t/c B.t=d/x C.t=d/1e5f D.t=x+c75.已有預(yù)處理命令和聲明如下:#defineN10inta=2,c=1;doubleb=1.2;下述程序段正確的是()。A.switch(a){casec:a--;break;casec+1:a++;break;}B.switch(a){caseN>0:a=1;break;case1:a=0;break;}C.switch(a){case2:b++;break;case‘0’:b=3;}D.switch(b){case1.0:b++;break;case1.2:b=1;break;}76.若有以下聲明和定義:voidfun(intc){printf("%d",c);}main(){void(*a)(int)=fun,*b(int),(*c)(int);/*調(diào)用fun函數(shù)語(yǔ)句位置*/}void*b(intc){}如果在main函數(shù)中需要調(diào)用fun函數(shù),以下調(diào)用語(yǔ)句中錯(cuò)誤的是()。A.fun(1); B.(*a)(1); C.b=fun;(*b)(1); D.c=a;(*c)(1);77.以下敘述正確的是()。A.一個(gè)用C語(yǔ)言編寫(xiě)的程序在運(yùn)行時(shí)總是從main函數(shù)開(kāi)始逐條執(zhí)行語(yǔ)句的B.main函數(shù)是系統(tǒng)庫(kù)函數(shù)C.main函數(shù)中每行只能出現(xiàn)一條語(yǔ)句D.main函數(shù)必須出現(xiàn)在所有其他函數(shù)之前78.以下關(guān)于函數(shù)形式參數(shù)的聲明中正確的是()。A.inta[]B.inta[][]C.inta[]={0}D.inta[2][]79.關(guān)于函數(shù)返回值,以下敘述中正確的是()。A.函數(shù)返回值的類(lèi)型由函數(shù)體內(nèi)return語(yǔ)句包含的表達(dá)式的類(lèi)型決定B.函數(shù)返回值的類(lèi)型由函數(shù)頭部定義的函數(shù)類(lèi)型決定C.若函數(shù)體中有多個(gè)return語(yǔ)句,則函數(shù)的返回值是排列在最后面的return語(yǔ)句中表達(dá)式的值D.若函數(shù)體內(nèi)沒(méi)有return語(yǔ)句,則函數(shù)沒(méi)有返回值80.已知字符A的機(jī)內(nèi)編碼為65,則執(zhí)行下列函數(shù)調(diào)用語(yǔ)句時(shí),不能輸出字符B的是()。 A.putchar(‘B’);B.putchar("B"); C.putchar(66);D.putchar(‘\x42’);81.下列一維數(shù)組的聲明中正確的是()。 A.inta[];B.intn=10,a[n]; C.inta[10+1]={0};D.inta[3]={1,2,3,4};82.已知有結(jié)構(gòu)類(lèi)型定義:typedefstructex{longintnum; charsex; structex*next; }student;下列敘述錯(cuò)誤的是()。 A.structex是結(jié)構(gòu)類(lèi)型B.student是結(jié)構(gòu)類(lèi)型的變量名 C.ex可缺省D.student不可缺省83.下列程序段的輸出結(jié)果是()。inti,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];for(i=0;i<4;i+=2)printf("%d",*(p+i)); A.52B.51C.53D.9784.已知有聲明”chara[6],*p=a;”,現(xiàn)需要在程序運(yùn)行過(guò)程中將字符串"Hello",保存到a數(shù)組中,則下列選項(xiàng)中能正確完成此操作的表達(dá)式是()。 A.a(chǎn)[6]="Hello"B.a(chǎn)="Hello" C.p="Hello"D.strcpy(a,"Hello")85.若要使表達(dá)式“p++”無(wú)語(yǔ)法錯(cuò)誤,則變量p不能聲明為()。 A.intp;B.doublep;C.int*p;D.struct{intx;}p;86.以下函數(shù)定義中正確的是()。A.intfun(inta,b){}B.intfun(inta[][]){}C.intfun(void){}D.intfun(staticinta,intb){}87.已知有函數(shù)f的定義如下:intf(inta,intb){if(a<b)return(a,b);elsereturn(b,a);}在main函數(shù)中若調(diào)用函數(shù)f(2,3),得到的返回值是()。 A.2B.3C.2和3D.3和288.下列各選項(xiàng)都是在C語(yǔ)言程字段中增加的注釋?zhuān)渲凶⑨尫椒ㄥe(cuò)誤的是()。A.voidmain(/*intargc,char,*argv[]*/) {}B.voidmain(){pri/*remark*/ntf("name");}C.voidmain() {intx/*=10*/;printf("%d",x);} D.voidmain(){intx=10;/*printf("%d",x);*/}89.若有定義和聲明typedefenum{green,red,yellow,blue,b1ack}color;colorflower;,則下列語(yǔ)句中正確的是()。A.green=red;B.flower=red;C.color=red;D.enum=red;90.若已定義一個(gè)有返回值的函數(shù),則以下關(guān)于調(diào)用該函數(shù)的敘述中錯(cuò)誤的是()。A.函數(shù)調(diào)用可以作為獨(dú)立的語(yǔ)句存在B.函數(shù)調(diào)用可以出現(xiàn)在表達(dá)式中C.函數(shù)調(diào)用可以作為一個(gè)函數(shù)實(shí)參D.函數(shù)調(diào)用可以作為一個(gè)函數(shù)形參91.對(duì)應(yīng)main函數(shù)中的fun函數(shù)調(diào)用語(yǔ)句,以下給出的四個(gè)fun函數(shù)首部中,錯(cuò)誤的是()。main(){inta[50],n;fun(n,&a[9]);}A.voidfun(intm,intx[])B.voidfun(ints,inth[41])C.voidfun(intp,int*s)D.voidfun(intn,inta)92.若有聲明“inti;floatx;chara[50];”,為使i得到值1,x得到值3.1416,a得到值yz,當(dāng)執(zhí)行語(yǔ)句“scanf("%3d%f%2s",&i,&x,a);”時(shí),正確的輸入形式是()。A.1,3.1416,yz↙B.13.1416yz↙C.0013.1416yz↙D.i=001,x=3.1416,a=yz↙93.程序段“intx=3;do{printf("%d",x--);}while(!x);”的執(zhí)行結(jié)果是()。A.321B.2C.3D.死循環(huán)94.假定已有聲明“chara[30],*p=a;”,則下列語(yǔ)句中能將字符串“ThisisaCprogram.”正確地保存到數(shù)組a中的語(yǔ)句是()。A.a(chǎn)[30]="ThisisaCprogram.";B.a(chǎn)="ThisisaCprogram.";C.p="ThisisaCprogram.";D.strcpy(p,"ThisisaCprogram.");95.若需要對(duì)一個(gè)數(shù)據(jù)文件abc.txt中的數(shù)據(jù)做加密處理并且限定只能做一次打開(kāi)文件操作,則在“fp=fopen("abc.txt",模式字符串);”中,模式字符串應(yīng)當(dāng)是()。A."w+"B."r+"C."a+"D."r"96.下列在C語(yǔ)言源程序的錯(cuò)誤中,通常不能在編譯時(shí)發(fā)現(xiàn)的是()。A.括號(hào)不匹配B.非法標(biāo)識(shí)符C.?dāng)?shù)組元素下標(biāo)值越界D.程序結(jié)構(gòu)不完整97.若有程序段“charc=256;inta=c;”,則執(zhí)行該程序段后a的值是()。A.256B.65536C.0D.-198.若有枚舉類(lèi)型定義“enumlist1{x1,x2,x3,x4=6,x5,x6};”,則枚舉常量x2和x6代表的值分別是()。A.1,6B.1,8C.2,6D.2,899.若程序中已有相應(yīng)的聲明,下列語(yǔ)句中錯(cuò)誤的是()。A.printf(i==4?"%6d\n":"%6d",i);B.i==4?printf("%6d\n",i):printf("%6d",i);C.for(i=10;;i--)if(i==1)break;D.for(i=10;;)if(i--);break;100.已知有聲明“chara[]="Itismine",*p="Itismine";”,下列敘述中錯(cuò)誤的是()。A.strcpy(a,"yes")和strcpy(p,"yes")都是正確的B.a(chǎn)="yes"和p="yes"都是正確的C.*a等于*pD.sizeof(a)不等于sizeof(p)三、C基本概念填空題1.包含二目運(yùn)算符的表達(dá)式可一般地表示為(x)op(y),其中op代表運(yùn)算符,x、y代表操作數(shù)。若op是“+”運(yùn)算符,且x和y均為常量時(shí),不能同時(shí)為(1)常量。2.當(dāng)(2)語(yǔ)句被執(zhí)行時(shí),程序的執(zhí)行流程無(wú)條件地從一個(gè)函數(shù)跳轉(zhuǎn)到另一個(gè)函數(shù)。3.在函數(shù)內(nèi)部聲明局部變量時(shí)缺省了存儲(chǔ)類(lèi)型,該變量存儲(chǔ)類(lèi)型為(3)。4.包含二目運(yùn)算符的表達(dá)式可一般地表示為(x)op(y),其中op代表運(yùn)算符,x、y代表操作數(shù)。若op是關(guān)系運(yùn)算符或邏輯運(yùn)算符,則不管x、y為何值,表達(dá)式的值是(4)。5.在C語(yǔ)言中大部分執(zhí)行語(yǔ)句都含關(guān)鍵字。例如,for語(yǔ)句含關(guān)鍵字for。除這些語(yǔ)句外不含關(guān)鍵字的非空操作語(yǔ)句是(5)。6.常量’\n’的數(shù)據(jù)類(lèi)型是(6)。7.已知main函數(shù)中有聲明“inta[10];”,若在main函數(shù)中出現(xiàn)語(yǔ)句“fun(a);”,執(zhí)行該函數(shù)調(diào)用語(yǔ)句時(shí)傳遞給fun函數(shù)對(duì)應(yīng)位置形式參數(shù)的值是(7)。8.在聲明變量時(shí),類(lèi)型修飾符unsigned一般用于修飾基本類(lèi)型中的int和(8)。9.已知某程序中有如下片段:inti;floatf;/*p的聲明*/p=&i;p=&f;若要保證該段程序沒(méi)有任何語(yǔ)法錯(cuò)誤,p應(yīng)當(dāng)聲明為(9)。10.已有聲明“floatx;doubley;inta;longb;charc;”,則表達(dá)式x+y*a/x+b/y+c值的類(lèi)型為(10)。11.系統(tǒng)庫(kù)函數(shù)scanf和gets在被調(diào)用執(zhí)行時(shí)都可以讀取從鍵盤(pán)輸入的一串?dāng)?shù)字字符,其中函數(shù)(11)具有將讀取的數(shù)字字符串轉(zhuǎn)換為整型數(shù)的功能。12.若有函數(shù)定義intf(){intx=4,y=3,z=2;returnx,y,z;},則調(diào)用函數(shù)f后的返回值是(12)。13.若二維數(shù)組a有m列,則在存儲(chǔ)該數(shù)組時(shí),a[i][j]之前有(13)個(gè)數(shù)組元素。14.一個(gè)用C語(yǔ)言編寫(xiě)的程序在運(yùn)行時(shí),如果沒(méi)有發(fā)生任何異常情況,則只有在執(zhí)行了(14)函數(shù)的最后一條語(yǔ)句或該函數(shù)中的return語(yǔ)句后,程序才會(huì)終止運(yùn)行。15.?dāng)?shù)學(xué)式所對(duì)應(yīng)的C語(yǔ)言表達(dá)式為(15)。16.若一個(gè)函數(shù)不需要形式參數(shù),則在定義該函數(shù)時(shí),應(yīng)使形式參數(shù)表為空或放置一個(gè)(16)。17.已知有聲明floatd=1;doublef=1;longg;和語(yǔ)句printf("____",g=1O+’i’+(int)d*f);,為了正確地以十進(jìn)制形式輸出printf參數(shù)表中第二個(gè)參數(shù)(表達(dá)式)的值,則在第一個(gè)參數(shù)中的下劃線位置處應(yīng)填寫(xiě)的格式轉(zhuǎn)換說(shuō)明符是(17)。18.設(shè)函數(shù)a的定義如下:voida(){intx=12,y=345;FILE*fp=fopen("my.dat","w");fprintf(fp,"%d%d",x,y);fclose(fp);}已知main函數(shù)中有聲明intx,y;FILE*fp=fopen("my.dat","r");,若需要從文件my.dat中正確地讀出由函數(shù)a寫(xiě)入的兩個(gè)數(shù)據(jù)并分別保存到變量x和y中,則在main函數(shù)中使用的讀數(shù)據(jù)語(yǔ)句應(yīng)當(dāng)是(18)(要求寫(xiě)出語(yǔ)句的完整格式)。19.執(zhí)行以下程序段后,number的值是(19)。charstr[]="Hello!";intnumber;number=sizeof(str);20.若有說(shuō)明inta[][4]={1,2,3,4,5,6,7,8,9};,則數(shù)組a第一維的大小是(20)。21.設(shè)有如下聲明和語(yǔ)句:inta=2,b,c=5;scanf("%d",&b);b=c--||scanf("%d",&c)&&a++;該程序段執(zhí)行時(shí),若從鍵盤(pán)輸入的數(shù)據(jù)是4□3(□代表空格鍵),則變量C的值為(21)。22.若有聲明“chara[3]="AB";char*p=a;”,執(zhí)行語(yǔ)句“printf("%d",p[2]);”后輸出結(jié)果是(22)。23.若有聲明“inta=32767,b;”,則在TurboC2.0系統(tǒng)中執(zhí)行語(yǔ)句“printf("%d",b=++a);”后輸出結(jié)果是(23)。24.若有函數(shù)聲明“intsub(int(*x1)(),int*x2);”,則形式參數(shù)x1是指向(24)的指針變量。25.若有宏定義“#definemax(a,b)(a>b?a:b)”,則表達(dá)式“max(2,max(3,1))”的值是(25)。26.在聲明局部變量時(shí),不能使用的存儲(chǔ)類(lèi)別標(biāo)識(shí)符是(26)。27.在以下程序的main函數(shù)中,語(yǔ)句“fun(x,10);”內(nèi)的實(shí)參x表示數(shù)組x的(27)。voidfun(inta[10],intn){ inti;for(i=0;i<n;i++)a[i]++; }main(){ intx[10]={0};fun(x,l0); }28.已知程序中有聲明“inta;longb;”,若需要接收從鍵盤(pán)輸入的電話號(hào)碼字符串(010)64782656(其中010是區(qū)號(hào),64782656是電話號(hào)碼)并將其中的區(qū)號(hào)、電話號(hào)碼分別存儲(chǔ)到變量a、b中,則實(shí)現(xiàn)該功能的輸入語(yǔ)句應(yīng)為“scanf("(28)",&a,&b);”。29.若有聲明“doublex=10,y=5;”,則計(jì)算xy的庫(kù)函數(shù)調(diào)用形式是(29)。30.在C語(yǔ)言源程序中,不帶任何修飾符的浮點(diǎn)數(shù)直接量(例如:3.14)都是按(30)類(lèi)型數(shù)據(jù)存儲(chǔ)的。31.若有聲明“charsl[10]="ABCDE",s2[10]="A\\0";”,則語(yǔ)句“printf("%d",strlen(strcpy(sl,s2)));”的輸出結(jié)果是(31)。32.已知有函數(shù)定義“intfun(){return(3,4);}”,則調(diào)用fun后的函數(shù)返回值是(32)。33.在一個(gè)C語(yǔ)言源程序中,必不可少的是(33)。34.執(zhí)行以下程序段中的語(yǔ)句“k=M*M+1;”后k的值是(34)。 #defineN2 #defineMN+1 k=M*M+1;35.聲明局部變量時(shí)若缺省存儲(chǔ)類(lèi)別,該變量的存儲(chǔ)類(lèi)別是(35)。36.?dāng)?shù)學(xué)式所對(duì)應(yīng)的C語(yǔ)言表達(dá)式為pow(x,(36))。37.已知有聲明和語(yǔ)句“inta;scanf("a=%d",&a);”,欲從鍵盤(pán)上輸入數(shù)據(jù)使a中的值為3,則正確的輸入應(yīng)是(37)。38.已知有聲明“charch;inta;”執(zhí)行語(yǔ)句“scanf("%c%d",&ch,&a);”時(shí)如果從鍵盤(pán)輸入的數(shù)據(jù)是“123”,則變量a得到的值是(38)39.若有以下宏定義:#defineM(a,b)–a/b;則執(zhí)行語(yǔ)句“printf("%d",M(4+3,2+1));”后輸出結(jié)果為(39)。40.執(zhí)行程序段“intx=0x6c;printf("x=%x\n",x);”后的輸出結(jié)果為(40)。41.只能在循環(huán)體中出現(xiàn)的語(yǔ)句是(41)語(yǔ)句。42.&既可以用做單目運(yùn)算符也可以用做雙目運(yùn)算符,其中用做單目運(yùn)算符時(shí)表示的功能是(42)。43.當(dāng)程序讀寫(xiě)數(shù)據(jù)文件時(shí),需要有聲明語(yǔ)句“FILE*fp;”,在該聲明語(yǔ)句之前必須包含頭文件(43)。44.在文件中,以符號(hào)常量EOF作為文本文件(字符流文件)的結(jié)束標(biāo)記,EOF代表的值是(44)。45.若有聲明“chara=0;intb=1;floatc=2;doubled=3;”,則表達(dá)式“c=a+b+c+d”值的類(lèi)型為(45)。46.若某個(gè)程序運(yùn)行時(shí)創(chuàng)建了多個(gè)輸入流,當(dāng)執(zhí)行到程序中的scanf函數(shù)時(shí),只有在(46)輸入流為空時(shí)才會(huì)暫停程序運(yùn)行而等待輸入。47.執(zhí)行“printf("%d,%d",i,j,k,m);”后在屏幕上將輸出(47)個(gè)整數(shù)。48.設(shè)已有非空文本數(shù)據(jù)文件file1.dat,要求能讀出文件中原有的全部數(shù)據(jù),并在文件原有數(shù)據(jù)之后添加新數(shù)據(jù),則用FILE*fp=fopen("file1.dat",(48))打開(kāi)該文件。49.在TurboC2.0系統(tǒng)中,若將實(shí)型常數(shù)1.5存儲(chǔ)在內(nèi)存中,它占用(49)個(gè)字節(jié)。50.若有定義“enumseq{mouse,cat,dog,rabbit=0,sheep,cow=6,tiger};”,則執(zhí)行語(yǔ)句“printf("%d",cat+sheep+cow);”后輸出結(jié)果是(50)。51.若有聲明“inta=30,b=7;”,則表達(dá)式“!a+a%b”的值是(51)。52.已知數(shù)據(jù)文件a.dat是通過(guò)執(zhí)行以下程序建立的,若在另一個(gè)程序運(yùn)行時(shí)需要從該數(shù)據(jù)文件中正確讀取數(shù)據(jù),則應(yīng)當(dāng)調(diào)用的讀文件庫(kù)函數(shù)的函數(shù)名是(52)。main(){FILE*fp=fopen("a.dat","wb");floatx=25.0;fwrite(&x,sizeof(float),1,fp);fclose(fp);}53.在C語(yǔ)言的源程序中若出現(xiàn)常量“1L”,則該常量的類(lèi)型是(53)。54.已知有聲明”intx=1,y=2;”,則執(zhí)行表達(dá)式”(x>y)&&(--x>O)”后x的值為(54)。55.在調(diào)用函數(shù)fopen("a:\\b.dat","r")時(shí),若A盤(pán)根目錄下不存在文件b.dat,則函數(shù)的返回值是(55)。56.已知有聲明intx=1,y=2,z=3:則執(zhí)行語(yǔ)句x>y?(z-=--X):(z+=++x);后,變量x、z的值分別是(56)。57.循環(huán)語(yǔ)句中通常都包含一個(gè)“循環(huán)條件表達(dá)式”,該表達(dá)式的值決定是否執(zhí)行下一次循環(huán)。在C語(yǔ)言的循環(huán)語(yǔ)句中,“循環(huán)條件表達(dá)式”可缺省的語(yǔ)句是(57)。58.關(guān)鍵字case和default只能在(58)語(yǔ)句中出現(xiàn)。59.在用fopen函數(shù)打開(kāi)一個(gè)已經(jīng)存在的數(shù)據(jù)文件abc時(shí),若要求既可以讀出abc文件中原來(lái)的內(nèi)容,也可以用新的數(shù)據(jù)覆蓋文件原來(lái)的數(shù)據(jù),則調(diào)用fopen函數(shù)時(shí),使用的存取方式參數(shù)應(yīng)當(dāng)是(59)。60.若有聲明“inti=7;floatx=3.1416;doubley=3;”,表達(dá)式i+’a’*x+i/y值的類(lèi)型是(60)型。61.與整型數(shù)學(xué)算式等價(jià)的c語(yǔ)言表達(dá)式是(61)。62.若要使表達(dá)式p="jiangsu"無(wú)任何錯(cuò)誤(包括語(yǔ)法錯(cuò)誤和警告錯(cuò)誤),p的聲明形式應(yīng)為(62)。63.若有聲明“inta=5,b=2;”,則表達(dá)式“b+=(float)(a+b)/2”運(yùn)算后b的值為(63)64.若有聲明“chars[10]="remind";”,執(zhí)行“puts(s+2):”后的輸出結(jié)果是(64)。65.已知某程序中有預(yù)處理命令“#include<stdio.h>”,為使語(yǔ)句“zx=fopen("c:\\a.txt","r");”能正常執(zhí)行,在該語(yǔ)句之前必須有聲明(65)。66.可以改變局部變量的生存期、但不能改變它的作用域的存儲(chǔ)類(lèi)別是(66)。67.C語(yǔ)言有效的預(yù)處理命令總是以(67)開(kāi)頭。68.若有聲明“inta=15,b=20,c=25,e;”,則執(zhí)行語(yǔ)句“e=a>b?—c:++c;”后變量e的值是(68)。69.若有聲明“inta=3,b=4;floatx=4.5,y=3.5;”,則表達(dá)式“(float)(a+b)/2+(int)x%(int)y”的值是(69)。70.若已有定義“enumTP{A,B,C};”,則執(zhí)行語(yǔ)句“printf("%d\n",A+1);”后輸出結(jié)果是(70)。71.若需要打開(kāi)D盤(pán)上user子目錄下已經(jīng)存在的名為abc.txt的文本文件,先獨(dú)處文件中數(shù)據(jù),后追加寫(xiě)入新數(shù)據(jù),則正確的函數(shù)調(diào)用語(yǔ)句是“fp=fopen("D:\\user\\abc.txt",(71));”。72.若有聲明“intx;”且sizeof(x)的值為2,則當(dāng)值為(72)時(shí)“x+1>x”為假。73.若有聲明“floaty=3.14159;intx;”,則計(jì)算表達(dá)式“x=y*100+0.5,y=x/100.0”后y的值是(73)74.C語(yǔ)言有!、&&、||三個(gè)邏輯運(yùn)算符,其中優(yōu)先級(jí)高于算術(shù)運(yùn)算符的是(74)。75.若有聲明“intr=2;”,則執(zhí)行語(yǔ)句“printf("%d",sizeof(2*3.14*r));”時(shí)輸出(75)。76.?dāng)?shù)學(xué)表達(dá)式所對(duì)應(yīng)的C語(yǔ)言表達(dá)式為(76)。77.若有以下聲明:char*p="%d,%d\n";inta=1,b=2;則執(zhí)行語(yǔ)句“printf(p,a,b);”時(shí)輸出(77)。78.已知有聲明“charch=’g’;”,則表達(dá)式ch=ch-‘a(chǎn)’+’A’的值為字符(78)的編碼。79.在C語(yǔ)言系統(tǒng)中,如果一個(gè)變量能正確存儲(chǔ)的數(shù)據(jù)范圍為整數(shù)-32768~32768,則該變量在內(nèi)存中占(79)字節(jié)。80.已知有聲明“inta[3][2]={{1,2},{3,4},{5,6}},*p=a[0];”則執(zhí)行語(yǔ)句“printf("%d\n",*(p+4));”后的輸出結(jié)果是(80)。81.若有聲明“doublen;”,則數(shù)學(xué)公式“”對(duì)應(yīng)的C語(yǔ)言表達(dá)式是(81)。82.若有聲明“inta=0,b=1,c=2;”,執(zhí)行語(yǔ)句“if(a>0&&++b>0)c++;elsec--;”后,變量a、b、c的值分別是時(shí)輸出(82)。83.聲明“FILE*p;”中的類(lèi)型標(biāo)識(shí)符“FILE”是在頭文件(83)中定義的。84.除goto語(yǔ)句外,在循環(huán)結(jié)構(gòu)中執(zhí)行(84)語(yǔ)句可提前結(jié)束本次循環(huán)直接進(jìn)入下一次循環(huán)。85.若有程序段“inta[10],*p=a,*q;q=&a[5];”,則表達(dá)式q-p的值是(85)。86.執(zhí)行語(yǔ)句序列“inta,b;a=b=4;a+=b%3;”后,變量a,b的值分別是(86)。87.使用TURBOC系統(tǒng)編譯C語(yǔ)言源程序后生成的文件名后綴是(87)。88.C語(yǔ)言源程序中用十六進(jìn)制表示整型常數(shù)必須以(88)開(kāi)頭。89.如果一個(gè)循環(huán)結(jié)構(gòu)的循環(huán)體至少要執(zhí)行一遍,則最適合描述該循環(huán)結(jié)構(gòu)的語(yǔ)句是(89)語(yǔ)句。90.若要聲明一個(gè)無(wú)符號(hào)整型變量x,則正確的聲明形式是“(90)intx;”。91.已知有聲明“intn=12;doublea;”則執(zhí)行語(yǔ)句“a=n/=5;”后,a的值為(91)。92.若有數(shù)據(jù)類(lèi)型定義如下:unionA{floata1;floata2;};則表達(dá)式sizeof(unionA)的值為(92)。四、C運(yùn)行結(jié)果題1.以下程序運(yùn)行時(shí)輸出第一個(gè)數(shù)是(1),第二個(gè)數(shù)是(2),第三個(gè)數(shù)是(3)。#include<math.h>main(){staticinta[3][3],i,j;for(i=0;i<3;i++)for(j=0;j<3;j++){switch(abs(i-j)){case0:if(i==0||i==2)a[i][j]+=3;elsea[i][j]++;break;case1:a[i][j]+=2;break;case2:a[i][j]+=3;}}printf("%d,%d,%d",a[1][1],a[1][2],a[2][0]);}2.以下程序運(yùn)行時(shí)輸出第一行是(4),第二行是(5)。#include<string.h>intconvert(chars1[],chars2[]){inti=0,j,s;chartab[8][4]={"000","001","010","011","100","101","110","111"};for(i=0,j=0;s1[i]!='\0';i++,j=j+3)strcpy(&s2[j],tab[s1[i]-'0']);for(i=0,s=0;i<strlen(s2);i++)s=s*2+s2[i]-‘0’;returns;}main(){charss1[]="15",ss2[80];inty;y=convert(ss1,ss2);printf("%d\n%s",y,ss2);}3.已知int型變量的存儲(chǔ)字節(jié)數(shù)為2,以下程序運(yùn)行時(shí)輸出結(jié)果是(6)。#include<stdio.h>main(){inta=3,b=2,c=7,d=6,e=8;longf=a*10000+b*1000+c*100+d*10+e;printf("%ld",f);}4、以下程序運(yùn)行時(shí)輸出結(jié)果是(7)。#include<stdio.h>main(){char*p="student";if(p=="student")printf("yes");elseprintf("no");}5.以下程序運(yùn)行時(shí)輸出結(jié)果是(8)。#include<ctype.h>#include<stdio.h>main(){char*s="23a4";intk=0,a=0,b=0;do{if(isdigit(s[k])){if(s[k]%2==0){a=a+s[k]-'0';continue;}a=a+s[k]-'0';b=b+s[k]-'0';}}while(s[k+1]&&++k);printf("%d,%d,%d\n",k,a,b);}6.以下程序運(yùn)行時(shí)輸出結(jié)果是(9)。#include<stdio.h>main(){chara=2.56;intd=a;printf("%d",d+1);}7、以下程序運(yùn)行時(shí)輸出結(jié)果的第一行是(10),第二行是(11),笫三行是(12)。#include<stdio.h>typedefstructs{intindex;intvalue;}M;main(){staticinti,j,k,c[4][4];Ma[10]={{0,1},{3,2},{5,3},{6,4},{9,5},{15,6},{-1,0}},*p=a,b[10]={{1,1},{3,2},{4,3},{6,4},{10,5},{13,6},{-1,0}},*q=b;while(p->index!=-1){i=p->index/4;j=P->index%4;c[i][j]=p->value; p++;}while(q->index!=-1){i=q->index/4;j=q->index%4;c[i][j]+=q->value;q++;}for(i=0;i<4;i++){for(j=0;j<4;j++)printf("%d",c[i][j]);printf("\n");}}8.以下程序運(yùn)行時(shí)輸出結(jié)果是(13)。#include<stdio.h>main(){char*s,*s1="Here";s=s1;while(*s1)s1++;printf("%d\n",s1-s);}9.以下程序運(yùn)行時(shí)輸出結(jié)果是(14)。#include<stdio.h>main(){inta=0,b=0,c=0; if(a++&&(b+=a)||++c)printf("%d,%d,%d\n",a,b,c);}10.以下程序運(yùn)行時(shí)輸出結(jié)果的第一行是(15),第二行是(16),第三行是(17)。#defineN3main(){inti,j,k=1,a[N][N]={0};for(i=0;i<=N/2+1;i++){for(j=0;j<=i;j++)a[j][i-j]=k++;}for(;i<2*N;i++){for(j=i+1-N;j<=N-1;j++)a[j][i-j]=k++;}for(i=0;i<N;i++){for(j=0;j<N;j++)printf("%4d",a[i][j]);printf("\n");}}11、以下程序輸出結(jié)果為(18)。 voidf(inta,int*b) {a++;b++;(*b)++;} main() {inti,x[2]={4,4}; f(x[0],&x[0]); printf("%d,%d",x[0],x[1]); }12、以下程序運(yùn)行時(shí),輸出結(jié)果是(19)。 #include<stdio.h> fun(intx) { if(x/2>0)fun(x/2); printf("%d",x%2); } main() { fun(20);putchar(‘\n’);}13、以下程序運(yùn)行后的輸出結(jié)果為(20)。#include<stdio.h>intb;intfun(inta){staticintc=3;return((++a)+(++b)+(++c));}voidmain(){inti,a=2;for(i=0;i<2;i++)printf("%5d",fun(a));}14.以下程序運(yùn)行時(shí)輸出結(jié)果為(21)。#include<stdio.h>main(){ ints=1,n=255; do { s*=n%10; n/=10; }while(n); printf("%d\n",s);}15.以下程序運(yùn)行后輸出結(jié)果中第一行為(22),第二行為(23),第三行為(24)。#include<stdio.h>main(){ inti,j,a[3][3]={0}; for(i=0;i<3;i++) { for(j=0;j<3;j++) switch(i-j+2) { case0: case1:a[i][j]=1;break; case2:a[i][j]=2;break; case3:a[i][j]=3;break; case4:a[i][j]=4;break; }} for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%4d",a[i][j]);printf("\n"); }}16.以下程序運(yùn)行后的輸出結(jié)果是(25)。#include<Stdio.h>#definecount(n)++nmain(){ intx=-3,n=8; while(count(x))n--; printf("%d\n",n);}17.以下程序運(yùn)行后的輸出結(jié)果是(26)。#include<stdio.h>main(){ chara[]="369",*p=a; ints=0,t=1; while(*++p)t*=10; p--; while(t) { s+=(*p-'0')*t; p--; t/=10; } printf("%d\n",s);}18.以下程序運(yùn)行時(shí)輸出結(jié)果的最后一行是(27)。#include<stdio.h>voidmain(){inta=1,b=1,i; for(i=1;i<=2;i++){ a=a+b;printf("%d/%d,",b,a);b=a+b;printf("%d/%d\n",a,b);} printf("\n");}19.以下程序運(yùn)行后輸出結(jié)果為(28)。#include<stdio.h>voidmain(){ inti,sum=0; for(i=0;i<5;i++) { switch(i) { case0: case1:sum++; case3:sum++; case4:sum--;break; } } printf("%d\n",sum);}20.以下程序運(yùn)行時(shí)輸出結(jié)果是(29)。 #include<stdio.h> voidmain() { intk=5,n=0; while(k>0) { switch(k) { case1: case3:n+=1;k--;break; default:n=0;k--; case2: case4:n+=2;k--;break; } printf("%3d",n); } }21.以下程序運(yùn)行時(shí)輸出到屏幕的結(jié)果是(30)。#include<stdio.h>voidmain(){ inti=1,m=0; switch(i) { case1: case2:m++; case3:m++; } printf("%d",m);}22、以下程序運(yùn)行時(shí)輸出到屏幕的結(jié)果是(31)。 #include<stdio.h> #defineMAX(A,B)A>B?2*A:2*B voidmain() { inta=1,b=2,c=3,d=4,t; t=MAX(a+b,c+d); printf("%d\n",t);}23.下列程序運(yùn)行時(shí)輸出到屏幕的結(jié)果是(32)。#include<stdio.h>voidmain(){ inta=1,b=2; a+=b; b=a-b; a-=b; printf("%d,%d\n",a,b);}24.以下程序運(yùn)行時(shí)輸出到屏幕的結(jié)果是(33)。#include<stdio.h>voidmain(){ ints[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i,j; for(i=0;i<12;i++) { j=s[i]; c[j]++; } for(i=1;i<5;i++)printf("%d",c[i]);}25、以下程序運(yùn)行時(shí)輸出到屏幕的結(jié)果中第一行是(34),第二行為(35)。#include<stdio.h> #include<ctype.h> voidcompute(char*s) { intt,r; charop; for(r=0;isdigit(*s);s++)/*isdigit(*s)判斷s指向的字符是否為數(shù)字字符*/ r=r*10+*s-‘0’; while(*s) { op=*s++; for(t=0;isdigit(*s);s++) t=t*10+*s-'0'; switch(op) { case'+':r=r+t;break; case'-':r=r-t;break; case'*':r=r*t;break; case'/':if(t)r=r/t;else{puts("devideerror");return;} } } printf("%d\n",r); } voidmain() { compute("12+6-19+2"); compute("12/6*19/2"); }26.以下程序運(yùn)行時(shí)輸出到屏幕的結(jié)果中第一行是(36),第二行是(37)。 #include<stdio.h
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 語(yǔ)文一年級(jí)“荷葉圓圓說(shuō)”課稿
- 數(shù)學(xué)三年級(jí)《年月日》說(shuō)課稿
- 2024景區(qū)租賃經(jīng)營(yíng)協(xié)議及規(guī)定條款
- 2024年適用公司貨物運(yùn)輸協(xié)議范例
- 小學(xué)音樂(lè)說(shuō)課稿9篇
- 服裝務(wù)工合同范本
- 旅游景區(qū)文化演出項(xiàng)目可行性研究報(bào)告
- 生態(tài)農(nóng)業(yè)科技示范園可行性投資申請(qǐng)報(bào)告計(jì)劃書(shū)
- 2024專(zhuān)業(yè)辦公樓租賃協(xié)議范本
- 招聘法人合同范本
- 項(xiàng)目部印章使用授權(quán)書(shū)
- (完整版)英語(yǔ)四線格(A4打印)
- 文明禮儀主題班會(huì)課件(共23張)
- 航站樓管理部《機(jī)場(chǎng)使用手冊(cè)》實(shí)施細(xì)則
- 腦卒中基本知識(shí)課件
- 高效溝通與管理技能提升課件
- 消防維保方案 (詳細(xì)完整版)
- 四年級(jí)上冊(cè)英語(yǔ)課件- M3U1 In the school (Period 3 ) 上海牛津版試用版(共15張PPT)
- 檔案館建設(shè)標(biāo)準(zhǔn)
- 高邊坡支護(hù)專(zhuān)家論證方案(附有大量的圖件)
- 蘇教版五年級(jí)上冊(cè)數(shù)學(xué)試題-第一、二單元 測(cè)試卷【含答案】
評(píng)論
0/150
提交評(píng)論