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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

TC語言程序設計復習題判斷題:C語言編寫的源程序通過編譯、連接后,假如沒有錯誤,則運營結果一定對的。()在C語言中,變量是不區(qū)分大小寫的,如:a和A是同一個變量。()double類型數(shù)據(jù)的輸入必須用格式“%lf”。()while和do-while循環(huán),肯定是可以互相替換的。()若有定義inta=2,則語句printf(“%d”,a++);的輸出結果為3。()在循環(huán)體中,使用continue語句,可以跳出該循環(huán)。()表達式3*5/2和表達式3/2*5的值相等。()任何變量都必須要定義其類型。()表達式(double)(1/2)的值為0.5。()若有定義inta=0,b;執(zhí)行語句if(a=0)b=0;elseb=1;后,b的值是1。()C語言中用于結構化程序設計的三種基本結構是if、switch、break。()設有如下定義:inta=1,b=2,c=3,d=4,m=2,n=2;則計算表達式:(m=a>b)&&(n=c>d)后,n的值為2。()在可執(zhí)行的C語言程序中有且只有一個主函數(shù)main(),并且應當寫在程序的最前面。()若有intx,則(x+1)++是一個合法的c語言表達式。()設intx=7,y=5,則x*=y-3后,x的值為14。()假如i的原值為3,則執(zhí)行語句:j=i++;后,j的值為3。()do-while語句先執(zhí)行循環(huán)體,后判斷循環(huán)條件,所以循環(huán)體至少會執(zhí)行一次。()表達式4.0*(1/2)的值為2.0。()‘\n’是一個字符常量。()表達式3.5%2是合法的C語言表達式。()C的任何類型數(shù)據(jù)在計算機內部都是以二進制形式存儲的。()定義函數(shù)時,必須要有形參和返回值。()在C程序中,main函數(shù)和自定義的函數(shù)都可以有多個。()語句return(a,b);則函數(shù)可以返回兩個值。()傳值調用時,在函數(shù)中形參變量值改變后,不改變實參變量的值。()構成數(shù)組的各個元素的數(shù)據(jù)類型不一定要相同。()有定義:inta[5]={10,11,12,13,14},*p=a;,語句printf(“%d”,*p++);的輸出結果為11。()在C程序中,函數(shù)既可以嵌套定義,也可以嵌套調用。()傳值調用的形參只有在被調用時,才被創(chuàng)建(分派存儲單元)。()在C程序中,若對函數(shù)類型未加說明,則函數(shù)的隱含類型為void。()若a為一維數(shù)組名,則*(a+i)與a[i]等價。()C文獻使用前需要打開,使用后需要關閉。()定義為void類型的函數(shù),其含義是調用函數(shù)后,被調用的函數(shù)的返回值為任意的類型。()C語言程序中,若實參是變量,當調用函數(shù)時實參和形參各占一個獨立的存儲單元。()在C語言中,所有函數(shù)之間都可以互相調用。()若有定義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ù)類型事實上是指定指針所能指向對象的數(shù)據(jù)類型,所以不能將p賦給t。()若fp是指向某文獻的指針,且已讀到該文獻的末尾,則C語言函數(shù)feof(fp)的返回值是0。()在使用fopen()函數(shù)時必須先定義一個類型為FILE的文獻指針。()void類型的函數(shù)一定無形參。()數(shù)組元素的下標必須是整數(shù),不能用實數(shù)。()若有定義語句“inta[10];”則a[10-9/2]是合法的數(shù)組元素。()若有定義語句“inta[10],i=2;”,則&a[i]與a+i等價。()數(shù)組定義語句“charc[]="Hello";”與“charc[]={‘H’,’e’,’l’,’l’,’o’};”等價。()語句“double*p=&x,x;”使指針變量p指向變量x。()C語言規(guī)定,實參應與其相應的形參類型一致。()系統(tǒng)判斷字符串結束的標志是’\n’。()若打開文獻的方式為“w”而該文獻已經(jīng)存在,則文獻中原有數(shù)據(jù)被清空。()單選題:可以把由高級語言編寫的源程序翻譯成目的程序的系統(tǒng)軟件叫(B)A.源程序B.編譯程序C.匯編程序D.解釋程序下列結構中,不屬于結構化程序設計中的3種結構的是(D)A.循環(huán)結構B.順序結構C.選擇結構D.網(wǎng)狀結構程序中調用了庫函數(shù)exit(0),必須包含頭文獻(B)A.string.hB.stdlib.hC.ctype.hD.math.hx、y是整型變量,執(zhí)行語句scanf("x=%d,y=%d",&x,&y);使x和y的值分別為7和9,對的的輸入是(C)A.79B.7,9C.x=7,y=9 D.x=7y=條件“-6≤x≤4”,相應的C邏輯表達式是(D)A.x>=-6andx<=4B.-6<=x<=4C.x>=-6||x<=4D.x>=-6&&x<=4假設變量x、k都已定義,下列語句片段中,無語法錯誤的是(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.無數(shù)次能對的地定義符號常量的是(B)A.#definen=6B.#definen6C.#definen6;D.#DEFINE若有定義語句“charc=‘\134’;”則變量c(A)A.包含1個字符B.包含2個字符C.包含3個字符D.包含4個字符設x和y均為int型變量,則語句“x+=y;y=x-y;x-=y;”的功能是(D)A.把x和y按從小到大排列B.把x和y按從大到小排列C.無擬定結果D.互換x和y中的值X=X+YY=X-YX=X-Y下列運算符中,優(yōu)先級最低的是(D)A.?:B.&&C./=D.,若有條件表達式“x?a++:b--”,則以下表達式中(B)等價于表達式xA.x==0B.x!=0C.x==1D.x!=1以下關于switch語句和break語句的描述,只有(C)是對的的A.在switch語句中必須使用break語句B.break語句只能用于switch語句中C.在switch語句中,可以根據(jù)需要使用或不使用break語句D.break語句是switch語句的一部分以下程序段的循環(huán)次數(shù)是(A)for(i=3;i==0;)printf(“%d”,i--);A.0次B.3次C.2次D.無數(shù)次while(scanf(“%f”,&n),n<=0);下列描述對的的是(A)A.當輸入n>0的值時循環(huán)終止B.當輸入n<=0的值時循環(huán)終止C.scanf(“%f”,&n),n<=0不能充當循環(huán)條件D.循環(huán)體不能為空以下不對的的C語言標記符是(C)。A._nextB.a_1_2C.f(x,y)D.Prog若有定義:intk=2,x;則能使變量x的值為3的表達式是(B)。A.x=5/k+0.5B.x=5/k+1;C.x=x+kD.x=2*k--設charc=‘y’;,表達式c>=‘a’&&c<=‘z’||c>=‘A’&&c<=‘Z’的值為(B)A.0B.1C.“假”D.“真”若有定義inta=1,b=2,c=3;在下列選項中,不對的的賦值語句是(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次設整型變量a為9,使b不為4的表達式是(B)。A.b=a/2B.b=(--a)-5C.b=a>3?4:5D.b=a%5循環(huán)語句for(x=0,y=0;(y!=123)||(x<4);x++);執(zhí)行(A)。A.無限次B.4次C.3次D.0次若有定義:inta=8,b=5,c;,則執(zhí)行語句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為了避免在嵌套的條件語句if-else中產生二義性,C語言規(guī)定:else子句總是與(B)配對。A.縮排位置相同的ifB.其之前最近的沒有else配對的ifC.其之后最近的ifD.同一行上的if下列各m的值中,能使表達式m%3==2&&m%5==3&&m%7==2值為1的是(A)。A.23B.17C.8D.6以下4個選項中,不能看作一條語句的是(D)。A.;B.a=0,b=0,c=0;C.while(i--);D.if(b==0)m=1;n=2;邏輯運算符兩側運算對象的數(shù)據(jù)類型(D)。A.只能是0或1B.只能是0或非0正數(shù)C.只能是整型或字符型數(shù)據(jù)D.可以是任何類型數(shù)據(jù)以下程序段輸出結果是(C)。intx=3;do{printf(“%3d”,x-=2);}while(!(--x));A.1B.30C.1-2D.死循環(huán)有定義”inta=5;”,語句”a+=a-=a+a;”,執(zhí)行后,變量a的值為(C)。A.10B.5C.-10D.-5下列各語句中,可以將變量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;下列可以對的表達字符型常量的是(B)。A.“a”B.’\t’C.”\n”D.18執(zhí)行x=(6*7%8+9)/3;后,x的值為(C)。A.1B.2C.3D.4設inta=3,b=6,c=9;,下列表達式中值為0的是(D)。A.2*a<=bB.a&&bC.(3*a-c)||bD.b-a<c-b下列語句中,哪一個可以輸出26個大寫英文字母(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語言中的常量。A.e+2B.068C.‘\x41’D.π下列(C)表達式的值等于0。A.2%5B.1/2.0C.10>5>3D.!(‘a’-97)設有定義doublex=2.4,y=3.56;,則表達式(int)x+y的值為(A)。A.5.56B.5.4C.5D.設有語句intn=10,i=4;,則語句n%=i+1;執(zhí)行后,n的值是(A)。A.0B.1C.2D.3下列語句將大寫字母轉換為小寫字母,其它字符不變,其中對的的是(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;設有定義inta=0,b=0,t;,則執(zhí)行語句: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í)行語句for(i=1;i++<4;);后變量i的值是(C)。A.3B.4C.5D.不擬定程序段intn=10;while(n>7){n--;printf("%d",n);}的輸出結果是(D)。A.109B.98C.1098D.987執(zhí)行下面程序段,若從鍵盤輸入33后,其輸出結果是(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ù)調用語句:m=max(a,max(b,c));則函數(shù)max有(C)個實參A.1B.4C.2程序中調用了庫函數(shù)strlen,必須包含頭文獻(D)。A.stdlib.hB.math.hC.ctype.hD.string.h下列數(shù)組s中所存放字符串的長度為(B)。chars[]="a\127b\\\tcd\xdg\n";A.9B.10C.11D.18下列能對的定義一維數(shù)組a的語句是(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的表達式是(C)。A.*aB.a[6]C.*a+1D.*(a+1)+5下列程序段的運營結果為(B)。chars[]="mn\0gy";printf("%s",s);A.mn0B.mnC.MngyD.mngy若有定義chars[8]="broke",*ps=s;則不能代表字符k的表達式是(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、無數(shù)次對變量定義及初始化為:FILE*p=fopen("d:\\aa.txt","r");intx;floata;chars;能對的的將文獻中的整數(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;}可以對的調用fun函數(shù)的是(B)。其中m、n是已經(jīng)定義過的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í)行下面語句段后輸出結果是(B)。t=s[0];s[0]=s[2];s[2]=t;printf("%s\n",s);A、MaxB、xaMC、axMD、xMa以下敘述不對的的是(B)。A.main函數(shù)在C語言中必須有且只有一個B.C程序的執(zhí)行從main函數(shù)開始,所以main函數(shù)必須放在程序最前面C.函數(shù)可以帶參數(shù),也可以不帶參數(shù)D.每個函數(shù)執(zhí)行時,按函數(shù)體中語句的先后順序,依次執(zhí)行每條語句在C程序中,若對函數(shù)返回類型未加說明,則函數(shù)的隱含類型為(A)。A.intB.doubleC.voidD.char有一個函數(shù)調用f((1,2),3*4),則本次調用的是下面哪個函數(shù)f(B)?voidf(inta);voidf(inta,intb);voidf(inta,intb,intc);voidf(inta,intb,intc,intd);若有定義語句“inta[10];”則下列對a中數(shù)組元素對的引用的是(C)。A.a[10]B.a[2.5]C.a[5%2]D.a[5+6]下列哪個語句存在語法錯誤(C)?A.charc=‘A’;B.charc[]="A";C.charc=‘AB’;D.charc[]="AB";已知”chars[]=“ab\0cd”;”,則數(shù)組s的長度為(),s所存放的字符串的長度為()。BA.6和5B.6和2C.5和2D.5和5若有說明:inti,j=1,*p=&i;則與i=j;等價的語句是(B)。A.i=*p;B.*p=j;C.i=&j;D.p=&j;有數(shù)組定義語句“chara[20];”,則對的的輸入語句為(D)。A.scanf("%s",&a);B.scanf("%s",a[]);C.gets(a[20]);D.gets(a);p和q同為指向int類型的指針,則下面哪個表達式會導致語法錯誤?(A)A.p+qB.p-qC.p=qD.p==q下列語句定義p為指向double型變量x的指針,其中對的的是(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.一個整數(shù)D.形參p的地址值下面程序的運營結果為(A)。inta[]={1,2,3,4},*p=a;printf("%d",*p++);!!!!!printf("%d",*p);A.12B.11C.23D.22若有定義:charstr[]=“ABCD”,*p=str;則語句printf(“%d\n”,*(p+4));的輸出結果是(B)(已知’A’的ASCII碼為65)。A.68B.0C.字符D的地址D.不擬定的值下面(C)語句是從文獻中讀取一個字符。A.ch=getc();B.fputc(ch,fp);C.fscanf(fp,"%c",&ch);D.scanf("%c",&ch);以“只讀”方式打開文本文獻c:\1.txt,下列語句中哪一個是對的的(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ù)組的初始化語句為:inta[10]={1,2,3,4,5};則表達式a[5]的值為(D)。A.5B.1C.不擬定的值D.0表達式“c=*p++”的執(zhí)行過程是(A)。A.復制*p的值給c后再執(zhí)行p++B.復制*p的值給c后再執(zhí)行(*p)++C.復制p的值給c后再執(zhí)行p++D.執(zhí)行p++后將*p的值復制給c變量的指針,其含義是指該變量的(B)。A.值B.地址C.名字D.一個標志若有定義:chars[]="HappyNewYear";則下面那條語句能輸出字符’N’(D)?A.printf(“%s”,s+5);B.printf(“%c”,s+5);C.printf(“%s”,*(s+5));D.printf(“%c”,*(s+5));C語言中函數(shù)返回值的類型是由(C)決定的。A.調用該函數(shù)的主調函數(shù)類型B.return語句中的表達式類型C.定義函數(shù)時所指定的返回函數(shù)值類型D.調用函數(shù)時臨時以下對的的函數(shù)說明是(A)。A.intfun(int,int);B.intfun(intx,y);C.intfun(x,y);D.intfun(intx;inty);在C語言中,下面關于數(shù)組的描述對的的是(C)。A.數(shù)組的大小是固定的,但可以有不同類型的數(shù)組元素B.數(shù)組的大小是可變的,但所有數(shù)組元素的類型必須相同C.數(shù)組的大小是固定的,所有數(shù)組元素的類型必須相同D.數(shù)組的大小是可變的,可以有不同的類型的數(shù)組元素假定int類型變量占用4個字節(jié),有定義:intx[10]={0,2,4};,則數(shù)組x在內存中所占字節(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中,下列對的的程序段是(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};設已有定義:char*st="howareyou";下列程序段中對的的是(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];要將鍵盤輸入的字符串"apear"賦給str,應使用(B)。A.scanf("%s",str);B.gets(str);C.str="apear";D.getchar(str);若inta=1,b=2,*pa=&a,*pb=&b;,執(zhí)行語句*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;則下列各語句組中,不能實現(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=a+b;b=a-b;a=a-b;已知有語句FILE*fp;intx=123;fp=fopen("out.dat","w");,假如需要將變量x的值以文本形式保存到磁盤文獻out.dat中,則以下函數(shù)調用形式中,對的的是(B)。A.fprintf("%d",x);B.fprintf(fp,"%d",x);C.fprintf("%d",x,fp);D.fprintf("out.dat","%d",x);以下對的的函數(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;}設有定義語句chars[]="abcDE";,則s[5]的值是(C)。A.未知字符B.’0’C.’\0’D.’E’當調用函數(shù)時,實參是一個數(shù)組名,則向函數(shù)傳送的是(B)。A.數(shù)組的長度B.數(shù)組的首地址C.數(shù)組每一個元素的地址D.數(shù)組每個元素中的值能對一維數(shù)組對的初始化的語句是(C)。A.inta[5]={0,1,2,3,4,5};B.inta[5]={};C.inta[5]={10};D.inta[5]={1,……,5};下面程序段的輸出結果是(A)。chara[10]="abcd";charb[4]="ABC";strcat(a,b);printf(“%s”,a);A.abcdABCB.abcdC.ABCD.ABCabcd設有下列定義chars[]="12345",*p=s;則下列表達式中錯誤的是(D)。A.*(p+1)B.*(s+2)C.p="ABC"D.s="ABC"設有如下定義:inta[]={1,3,5,7,9};int*p;則下列程序段的輸出結果為(A)。p=a;*(p+2)+=2;printf(“%d,%d\n”,*p,*(p+2));A.1,7B.1,5C.5,9D.3,7判斷字符串s1與s2是否相等,應當使用的語句是(D)。A.if(s1==s2)B.if(s1=s2)C.if(s1[]==s2[])D.if(strcmp(s1,s2)==0)程序閱讀題:說明:閱讀下列程序,在每小題提供的程序運營結果若干可選答案中,挑選一個對的答案。#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í)行后的對的輸出項是()。答案: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指出對的的程序是()。答案: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)下面程序的輸出結果是()。答案: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í)行時輸入:HangZhouChina,則輸出結果是()。答案:A#include<stdio.h>voidmain(){charc[81];inti;scanf(“%s”,c);for(i=0;c[i]!=‘\0’;i++)if(c[i]>=‘a’&&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");}若運營時從鍵盤輸入:OPENTHEDOOR<CR>(此處<CR>代表Enter),則程序運營后的輸出結果是(B)。A.oPENtHENdOORB.openthendoorC.OPENTHENDOORD.OpenThenDoor程序填空題:說明:閱讀下列程序說明和相應程序,在每小題提供的若干可選答案中,挑選一個對的答案。輸入一批以-1結束的整數(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"輸入一個正整數(shù)n,計算s=1-1/3+1/5-1/7…前n項之和#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個整數(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【程序說明】輸入一行字符(以回車鍵結束),分別記錄出其中的英文字母、空格、數(shù)字和其他字符的個數(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’&&c<=‘z’C.c>=‘a’&&c<=‘Z’D.c>=‘A’&&c<=‘Z’&&c>=‘a’&&c<=‘z’(7)A.c==‘‘B.c=‘‘C.c==“”D.c=“”(8)A.breakB.continueC.c=getchar()D.c++從鍵盤任意輸入某班40個學生的成績,輸出最高分并記錄出不及格人數(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個學生不及格\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【程序說明】以下程序用來判斷輸入的數(shù)a是否為素數(shù)(質數(shù))。若一個整數(shù)除了能被1和自身除盡外,不能被其它任何數(shù)除盡,則此數(shù)即為素數(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("是素數(shù)!\n");答案:Celseprintf("不是素數(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【程序說明】函數(shù)inver(charstr[])的功能是使輸入的一個字符串按反序存放。#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("轉換后字符串是:%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);從鍵盤上輸入5個學生的C語言成績,以格式%5d寫到文本文獻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)編寫程序,輸入n,m,求組合數(shù)Cmn。規(guī)定定義兩個函數(shù)jc和cmn分別計算階乘和組合數(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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論