版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
大學(xué)C語(yǔ)言考試題庫(kù)第1章c語(yǔ)言概述習(xí)題單項(xiàng)選擇題c語(yǔ)言是在B語(yǔ)言的基礎(chǔ)上產(chǎn)生的。AB.Bc.DD.E在C語(yǔ)言中,每個(gè)語(yǔ)句必須以D結(jié)束?;剀嚪鸅.冒號(hào)c.逗號(hào)D.分號(hào)標(biāo)識(shí)符和關(guān)鍵字間,要用—C隔開。A.回車符B.冒號(hào)c.空格D.分號(hào)用C語(yǔ)言編寫的源文件經(jīng)過(guò)編譯,若沒有產(chǎn)生編譯錯(cuò)誤,則系統(tǒng)將(B)。A.生成可執(zhí)行目標(biāo)文件B.生成目標(biāo)文件C.輸出運(yùn)行結(jié)果D.自動(dòng)保存源文件下列說(shuō)法中正確的是(B)。由于C源程序是高級(jí)語(yǔ)言程序,因此一定要在TC軟件中輸入由C源程序是字符流組成,因此可以作為文本文件在任何文本編輯的軟件中輸入由于C程序是高級(jí)語(yǔ)言程序,因此輸入后即可執(zhí)行由于C程序是高級(jí)語(yǔ)言程序,因此它由命令組成下列說(shuō)法中正確的是(A)。A.C語(yǔ)言程序由主函數(shù)和0個(gè)或多個(gè)函數(shù)組成B.C語(yǔ)言程序由主程序和子程序組成C.C語(yǔ)言程序由子程序組成D.C語(yǔ)言程序由過(guò)程組成下列說(shuō)法中錯(cuò)誤的是(D)。主函數(shù)可以分為兩個(gè)部分:主函數(shù)說(shuō)明部分和主函數(shù)體主函數(shù)可以調(diào)用任何非主函數(shù)的其他函數(shù)任何非主函數(shù)可以調(diào)用其他任何非主函數(shù)程序可以從任何非主函數(shù)開始執(zhí)行填空題C語(yǔ)言只有_個(gè)關(guān)鍵字和種控制語(yǔ)句。C語(yǔ)言是一種“中級(jí)語(yǔ)言”,既具有高級(jí)語(yǔ)言的特點(diǎn)又具有低級(jí)語(yǔ)言的特點(diǎn);既適合于開發(fā)系統(tǒng)軟件又適合于編寫應(yīng)用程序。每個(gè)源程序有且只有一個(gè)主函數(shù),系統(tǒng)總是從該函數(shù)開始執(zhí)行C語(yǔ)言程序。在C語(yǔ)言程序中允許出現(xiàn)的字符集是ASCII碼字符集。C語(yǔ)言的程序中有特殊含義的英語(yǔ)單詞稱為保留字。C語(yǔ)言標(biāo)識(shí)符的長(zhǎng)度是前8位有效。C語(yǔ)言中,標(biāo)識(shí)符的定義規(guī)則是以字母或下劃線為開頭。C語(yǔ)言程序的注釋可以出現(xiàn)在程序中的任何地方,它總是以亠符號(hào)作為開始標(biāo)記,以」符號(hào)作為結(jié)束標(biāo)記。第2章數(shù)據(jù)類型運(yùn)算符和表達(dá)式習(xí)題單項(xiàng)選擇題以下選項(xiàng)中,正確的C語(yǔ)言整型常量是D。32LB.510000C.D.567以下選項(xiàng)中,_D_是不正確的C語(yǔ)言字符型常量。A.'a'B.'\x41'C.'\101'D."a"在C語(yǔ)言中,字符型數(shù)據(jù)在計(jì)算機(jī)內(nèi)存中,以字符的形式存儲(chǔ)。A.原碼B.反碼C.ASCII碼D.BCD碼字符串的結(jié)束標(biāo)志是CoA.0B.'0'C.'\0'D."0"算術(shù)運(yùn)算符、賦值運(yùn)算符和關(guān)系運(yùn)算符的運(yùn)算優(yōu)先級(jí)按從高到低依次為L(zhǎng)丄。A.算術(shù)運(yùn)算、賦值運(yùn)算、關(guān)系運(yùn)算B.算術(shù)運(yùn)算、關(guān)系運(yùn)算、賦值運(yùn)算C.關(guān)系運(yùn)算、賦值運(yùn)算、算術(shù)運(yùn)算D.關(guān)系運(yùn)算、算術(shù)運(yùn)算、賦值運(yùn)算邏輯運(yùn)算符中,運(yùn)算優(yōu)先級(jí)按從高到低依次為DoA.&&,!,||B.||,&&,!C.&&,||,!D.!,&&,||表達(dá)式!x||a==b等效于D。A.!((x||a)==b)B.!(x||y)==bC.!(x||(a==b))D.(!x)||(a==b)設(shè)整型變量m,n,a,b,c,d均為1,執(zhí)行(m=a>b)&&(n二c>d)后,m,n的值是A。A.0,0B.0,1C.1,0D.1,1intb=0,x=1;執(zhí)行語(yǔ)句if(x++)b=x+1;后,x,b的值依次為A。A.2,3B.2,0C.3,0D.3,2設(shè)有語(yǔ)句inta=3;,則執(zhí)行了語(yǔ)句a+二a-二a*二a;后,變量a的值是B。A.3B.0C.9D.-12在以下一組運(yùn)算符中,優(yōu)先級(jí)最低的運(yùn)算符是_」。A.*B.!=C.+D.=設(shè)整型變量i值為2,表達(dá)式(++i)+(++i)+(++i)的結(jié)果是B。A.6B.12C.15D.表達(dá)式出錯(cuò)若已定義x和y為double類型,則表達(dá)式x=1,y=x+3/2的值是C。A.1B.2C.D.sizeof(double)的結(jié)果值是A。A.8B.4C.2D.出錯(cuò)設(shè)a=1,b=2,c=3,d=4,則表達(dá)式:a<b?a:c<d?a:d的結(jié)果為A.4B.3C.2D.1設(shè)a為整型變量,不能正確表達(dá)數(shù)學(xué)關(guān)系:10<a<15的C語(yǔ)言表達(dá)式是A.10<a<15B.a==11||a==12||a==13||a==14C.a>10&&a<15D.!(a<=10)&&!(a>=15)設(shè)f是實(shí)型變量,下列表達(dá)式中不是逗號(hào)表達(dá)式的是D。A.f=,B.f>0,f<10C.f=,f>0D.f=,設(shè)ch是char型變量,其值為'A',則下面表達(dá)式的值是_L。ch=(ch>='A'&&ch<='Z')?(ch+32):chA.AB.aC.ZD.Z以下運(yùn)算符中,結(jié)合性與其他運(yùn)算符不同的是_亠」。TOC\o"1-5"\h\zA.++B.%C./D.+以下用戶標(biāo)識(shí)符中,合法的是B0A.intB.nitC.123D.a+bC語(yǔ)言中,要求運(yùn)算對(duì)象只能為整數(shù)的運(yùn)算符是%°A.%B./C.>D.*PC機(jī)中,'\n'在內(nèi)存占用的字節(jié)數(shù)是°A.1B.2C.3D.4字符串"ABC"在內(nèi)存占用的字節(jié)數(shù)—BA.A.3B.4C.6D.8要為字符型變量a賦初值,下列語(yǔ)句中哪一個(gè)是正確的B。A.chara="3";B.chara='3';C.chara=%;D.chara=*;下列不正確的轉(zhuǎn)義字符是C。A.\\B.\'C.074D.\0填空題C語(yǔ)言中的邏輯值“真”是用—非J表示的,邏輯值“假”是用—表示的。符號(hào)常量的定義方法是#defineN10。無(wú)符號(hào)基本整型的數(shù)據(jù)類型符為unsignedint.雙精度實(shí)型數(shù)據(jù)類型符為double,字符型數(shù)據(jù)類型符為char。設(shè)c='w',a=1,b=2,d=-5,則表達(dá)式'x'+1>c,'y'!=c+2,-a-5*b<=d+1,b==a=2的值分別為1、0、1、表達(dá)式錯(cuò)誤。設(shè)floatx二,y二;inta=7;,表達(dá)式x+a%3*(int)(x+y)%2/4的值為。判斷變量a、b的值均不為0的邏輯表達(dá)式為(a!=0)&&(b!=0)。求解賦值表達(dá)式a=(b=10)%(c=6),表達(dá)式值、a、b、c的值依次為4,4,10,6。求解逗號(hào)表達(dá)式x=a=3,6*a后,表達(dá)式值、x、a的值依次為18,3,3。數(shù)學(xué)式a/(b*c)的C語(yǔ)言表達(dá)式a/(b*c)。第3章順序結(jié)構(gòu)程序設(shè)計(jì)習(xí)題選擇題printf("仁%%%",;的輸出結(jié)果是A。A.仁%B.仁%C.仁%%D.仁%⑵printf("%c,%d",'a','a');的輸出結(jié)果是A。A.a,97B.a97C.97,aD.97ascanf("%c",&a);若要給變量輸入大寫字母A,則以下正確的輸入是B。A.'A'<CR>B.A<CR>\C."A"<CR>D.以上都不對(duì)若一個(gè)int類型的數(shù)據(jù)占2字節(jié),則程序段:intx=T;printf("%u,%d",x,x);的輸出結(jié)果是A。A.65535,-1B.-1,65535C.32767,32768D.32768,32767在TC中,getchar、putchar、printf、scanf四個(gè)函數(shù),均包含在頭文件B中。A.B.C.D.復(fù)合語(yǔ)句是用C括起來(lái)的語(yǔ)句組。A.()B.[]C.{}D.<>下列格式符中,哪一個(gè)可以用于以八進(jìn)制形式輸出整婁JL。A.%dB.%8dC.%oD.%ld下列格式符中,哪一個(gè)可以用于以十六進(jìn)制形式輸出整數(shù)_L。A.%16dB.%8xC.%d16D.%da是int類型變量,c是字符變量,下列輸入語(yǔ)句中哪一個(gè)是錯(cuò)誤的B。A.scanf("%d,%c",&a,&c);B.scanf("%d%c",a,c);C.scanf("%d%c",&a,&c);D.scanf("d=%d,c=%c",&a,&c);要使doublex;longa;的數(shù)據(jù)能正確的輸出,輸出語(yǔ)句應(yīng)是A.printf("%d,%f",a,x);B.printf("%d,%1f",a,x);C.scanf("%1d,%1f",&a,&x);D.printf("%1d,%lf",a,x);程序改錯(cuò)題(以下各個(gè)程序段均有5個(gè)錯(cuò)誤,請(qǐng)先找出錯(cuò)誤的位置,然后再改正)以下程序的功能是,從鍵盤輸入一個(gè)字符并鳴笛輸出。#include""mian()寫出程序運(yùn)行結(jié)果(1)main(){inta,b;scanf("%2d%*2s%2d",&a,&b);printf("%d\n",a+b);}運(yùn)行時(shí)輸入:?jiǎn)雾?xiàng)選擇題選擇結(jié)構(gòu)程序設(shè)計(jì)的特點(diǎn)是___B。A.自上向下逐個(gè)執(zhí)行B.根據(jù)判斷條件,選擇其中一個(gè)分支執(zhí)行C.反復(fù)執(zhí)行某些程序代碼D.以上都是假定所有變量均已正確定義,下列程序段運(yùn)行后x的值是__B_。a=b=c=0,x=35;if(!a)x--;elseif(b);if(c)x=3;elsex=4;A.34B.4C.35D.3下面的程序片段所表示的數(shù)學(xué)函數(shù)關(guān)系是—A____。if(x<0)y=-1;elseif(x>0)y=1;elsey=0;下列各語(yǔ)句序列中,能夠且僅輸出整型變量a、b中最大值的是(C)。if(a>b)printf("%d\n",a);printf("%d\n",b);printf("%d\n",b);if(a>b)printf("%d\n",a);if(a>b)printf("%d\n",a);elseprintf("%d\n",b);if(a<b)printf("%d\n",a);printf("%d\n",b);以下程序段的輸出結(jié)果是Aintx=5;if(x>0)y=1;elseif(x==0)y=0;elsey=1;printf("%d",y);TOC\o"1-5"\h\zA.1B.5C.0D.2⑹程序段intx=5,y=8,max;max=(x>y)?x:y;printf("%d",max);的輸出結(jié)果是B。A.5B.8C.3D.13程序段intx=3,a=1;switch(x){case4:a++;case3:a++;case2:a++;case1:a++;}printf("%d",a);的輸出結(jié)果是D。A.1B.2C.3D.4下列語(yǔ)句應(yīng)將小寫字母轉(zhuǎn)換為大寫字母,其中正確的是(B)。(ch>='a'&ch<='z')ch=ch-32;(ch>='a'&&ch<='z')ch=ch-32;=(ch>='a'&&ch<='z')?ch-32:'';=(ch>'a'&&ch<'z')?ch-32:ch;閱讀程序,寫出運(yùn)行結(jié)果(1)voidmain(){(1)voidmain(){inta=10,b=4,c=3;if(a<b)a=b;if(a<c)a=c;printf("%d,%d,%d\n",a,b,c)}輸出:10,4,3(2)(3)intk,a=1,b=2;k=(a++==b)?2:3;printf("%d",k);輸出:3(4)voidmain(){ints=1,k=0;switch(s){case1:k+=1;case2:k+=2;default:k+=3;}printf(“%d”,k);}輸出:6voidmain(){intx=100,a=10,b=20,ok1=5,if(a<b)if(b!=15)if(!ok1)elseif(ok2)x=10;elsex=-1;printf("%d\n",x);}輸出:-1;(5)voidmain(){ints=1,k=0;switch(s){case1:k+=1;break;case2:k+=2;break;default:k+=3;}printf(“%d”,k);}輸出:1ok2=0;x=1;第5章循環(huán)結(jié)構(gòu)程序設(shè)計(jì)習(xí)題單項(xiàng)選擇題⑴for(i=1;i<9;i+=1);該循環(huán)共執(zhí)行了B次。7B.8C.9D.10inta=2;while(a=0)a--;該循環(huán)共執(zhí)行了A次。0B.1C.2D.3執(zhí)行完循環(huán)for(i=1;i<100;i++);后,i的值為B。A.99B.100C.101D.102以下for語(yǔ)句中,書寫錯(cuò)誤的是D。A.for(i=1;i<5;i++);B.i=1;for(;i<5;i++);C.for(i=1;i<5;)i++;D.for(i=1,i<5,i++);—語(yǔ)句,在循環(huán)條件初次判斷為假,還會(huì)執(zhí)行一次循環(huán)體。A.forB.whileC.do-whileD.以上都不是循環(huán)結(jié)構(gòu)的特點(diǎn)是C。A.從上至下,逐個(gè)執(zhí)行B.根據(jù)判斷條件,執(zhí)行其中一個(gè)分支C.滿足條件時(shí)反復(fù)執(zhí)行循環(huán)體D.以上都對(duì)i、j已定義為int類型,則以下程序段中內(nèi)循環(huán)體的執(zhí)行次數(shù)_for(i=5;i;i--)for(j=0;j<4;j++){???}A.20B.24C.25D.30C語(yǔ)言while語(yǔ)句中,用于條件的表達(dá)式是D。A.關(guān)系表達(dá)式B.邏輯表達(dá)式C.算術(shù)表達(dá)式D.任意表達(dá)式inta=1,x=1;循環(huán)語(yǔ)句while(a<10)x++;a++;的循環(huán)執(zhí)行DA.無(wú)限次B.不確定次C.10次D.9次下列程序段執(zhí)行后s的值為—。inti=1,s=0;while(i++)if(!(i%3))break;elses+=i;A.2B.3C.6D.以上均不是填空題⑴三種循環(huán)語(yǔ)句是等價(jià)價(jià)的。當(dāng)循環(huán)體中的switch語(yǔ)句內(nèi)有break語(yǔ)句,則只跳出swicth語(yǔ)句。同樣,當(dāng)switch語(yǔ)句中有循環(huán)語(yǔ)句,內(nèi)有break語(yǔ)句■則只跳出循環(huán)語(yǔ)句。循環(huán)體執(zhí)行遇到continue語(yǔ)句時(shí)跳過(guò)本次循環(huán)講入下次循環(huán)。下列程序的功能是輸入一個(gè)正整數(shù),判斷是否是素?cái)?shù),若為素?cái)?shù)輸出1,否則輸出0,請(qǐng)為程序填空。voidmain(){inti,x,y=1;scanf("%d",&x);for(i=2;i<=x/2;i++)if(x%i==0){y=0;break;}printf("%d\n",y);}輸入N個(gè)實(shí)數(shù),輸出其中的最大值、最小值。#include<>voidmain(){intn,i;floatno1,nmax,nmin;scanf("%d",&n);scanf("%f",&no1);nmax=no1;nmin二no1;for(i=2;i<=n;i++){scanf("%f",&no1);if(no1>nmax)nmax=no1;if(no1<nmin)nmin二nol:
printf("MAX=%fMIN=%f\n",nmax,nmin);輸入若干個(gè)字符,分別統(tǒng)計(jì)數(shù)字字符的個(gè)數(shù)、英文字母的個(gè)數(shù),當(dāng)輸入換行符時(shí)輸出統(tǒng)計(jì)結(jié)果,運(yùn)行結(jié)束。#include<>voidmain(){charch;ints1=0,s2=0:while((ch二getchar())!='\n'){if(ch>='0'&&ch<='9')s1++:if(ch>='a'&&ch<='z'IIch>二'A'||ch<='Z')s2++;}閱讀下列程序,寫出程序運(yùn)行的輸出結(jié)果(1)voidmain(){inty=9;for(:y>0:y--)if(y%3==0){printf("%d",—y);continue:}}輸出:852main(){intk,n,m;n=10;m=1;k=1;while(k++<=n)printf("%d\n",m);}輸出:printf("%d\n",m);}輸出:1024(3)voidmain(){inti=5;do{switch(i%2){case4:i--;break;case6:i--;continue}i--;i--;printf("i=%d",i);m*=2;輸出:i=3i=1i=-1(4)#include<>voidmain(){intk=0;charc='A';do{switch(c++){case'A':k++;break;case'B':k--;case'C':k+=2;break;case'D':k=k%2;break;case'E':k=k*10;break;default:k=k/3;k++;}while(c<'G');printf("k=%d\n",k);}輸出:8(5)輸入數(shù)據(jù):2,4#include<>voidmain(){ints=1,t=1,a,n;inti;scanf("%d,%d",&a,&n);for(i=1;i<n;i++){t=t*10+1;s=s+t;}s*=a;printf("SUM=%d\n",s)}輸出:2468程序改錯(cuò)(1)以下程序是顯示[200,300]所有能被7整除的數(shù),每行顯示5個(gè)數(shù),此程序有5處錯(cuò)main(){inti,n=O;/*n用來(lái)記錄每行已打印數(shù)的個(gè)數(shù)*/while(i<300)單項(xiàng)選擇題C語(yǔ)言總是從—函數(shù)開始執(zhí)行。A.mainB.處于最前的C.處于最后的D.隨機(jī)選一個(gè)函數(shù)在定義時(shí),省略函數(shù)類型說(shuō)明符,則該函數(shù)值的類型—。
A.intB.floatC.longD.double(2)以下—數(shù),真正地沒有返回值。A.inta(){inta=2;return(a);}B.voidb(){printf("c")C.inta(){inta=2;returna;}D.以上都是(3)在C語(yǔ)言中,有關(guān)函數(shù)的說(shuō)法,以下正確的是_C。A.函數(shù)可嵌套定義,也可嵌套調(diào)用B.函數(shù)可嵌套定義,但不可嵌套調(diào)用C.函數(shù)不可嵌套定義,但可嵌套調(diào)用D.函數(shù)不可嵌套定義,也不可嵌套調(diào)用(4)以下函數(shù)調(diào)用語(yǔ)句中,含有實(shí)參的個(gè)數(shù)為B。fun((2,3),(4,5+6,7));A.1B.2A.1B.2C.5D.(5)函數(shù)調(diào)用可以在_DA.函數(shù)表達(dá)式中B.函數(shù)語(yǔ)句中A.函數(shù)表達(dá)式中B.函數(shù)語(yǔ)句中C.函數(shù)參數(shù)中D.以上都是被調(diào)函數(shù)返回給主調(diào)函數(shù)的值稱為—CA.形參B.實(shí)參C.返回值D.參數(shù)(7)D—,可以不進(jìn)行函數(shù)類型說(shuō)明。A.A.形參B.實(shí)參C.返回值D.參數(shù)(7)D—,可以不進(jìn)行函數(shù)類型說(shuō)明。A.被調(diào)函數(shù)的返回值是整型或字符型時(shí)B.被調(diào)函數(shù)的定義在主調(diào)函數(shù)定義之前時(shí)C.在所有函數(shù)定義前,已在函數(shù)外預(yù)先說(shuō)明了被調(diào)函數(shù)類型D.以上都是(8)被調(diào)函數(shù)通過(guò)D語(yǔ)句,將值返回給主調(diào)函數(shù)。A.ifB.forC.whileD.returnA.ifB.forC.whileD.return⑼被調(diào)函數(shù)調(diào)用結(jié)束后,返回至|JL_L。主調(diào)函數(shù)中該被調(diào)函數(shù)調(diào)用語(yǔ)句處主函數(shù)中該被調(diào)函數(shù)調(diào)用語(yǔ)句處主調(diào)函數(shù)中該被調(diào)函數(shù)調(diào)用語(yǔ)句的前一語(yǔ)句主調(diào)函數(shù)中該被調(diào)函數(shù)調(diào)用語(yǔ)句的后一語(yǔ)句以下對(duì)C語(yǔ)言函數(shù)的有關(guān)描述中,正確的是A。在C中,調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳送給形參,形參的值不能傳送給實(shí)參C函數(shù)既可以嵌套定義又可遞歸調(diào)用函數(shù)必須有返回值,否則不能使用函數(shù)C程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)源程序文件中C語(yǔ)言中函數(shù)的隱含存儲(chǔ)類型一。A.autoB.staticC.externD.無(wú)存儲(chǔ)類型能把函數(shù)處理結(jié)果的兩個(gè)數(shù)據(jù)返回給主調(diào)函數(shù),在下面的方法中不正確的是」A.return這兩個(gè)數(shù)B.形參用兩個(gè)元素的數(shù)組C.形參用兩個(gè)這種數(shù)據(jù)類型的指針D.用兩個(gè)全局變量填空題變量的作用域主要取決于變量定義的位子■變量的生存期既取決于變量存儲(chǔ)類型,又取決干變量存儲(chǔ)方式。說(shuō)明變量時(shí)?若省略存儲(chǔ)類型符?系統(tǒng)默認(rèn)其為整形存儲(chǔ)類別■該存儲(chǔ)類別的類型符為:int。靜態(tài)型局部變量的作用域是靜態(tài)局部變量定義的復(fù)合語(yǔ)句或函數(shù)體內(nèi),牛存期是整個(gè)稈序運(yùn)行期內(nèi)。函數(shù)中的形參和調(diào)用時(shí)的實(shí)參都是數(shù)組名時(shí),傳遞方式—,都是變量時(shí),傳遞方式為值傳遞。函數(shù)的形式參數(shù)的作用域?yàn)檎麄€(gè)函數(shù)體內(nèi),全局的外部變量和函數(shù)體內(nèi)定義的局部變量重名時(shí),函數(shù)體內(nèi)定義的局部變量?jī)?yōu)先。若自定義函數(shù)要求返回一個(gè)值,則應(yīng)在該函數(shù)體中有一條上t皿語(yǔ)句,若自定義函數(shù)要求不返回一個(gè)值,則應(yīng)在該函數(shù)說(shuō)明時(shí)加一個(gè)類型說(shuō)明符void。若函數(shù)的形式參數(shù)是指針類型,則實(shí)參可以是數(shù)組名、地址或指針變量。函數(shù)的參數(shù)為char*類型時(shí),形參與實(shí)參結(jié)合的傳遞方式為地址傳遞。函數(shù)的實(shí)參為常量時(shí),形參與實(shí)參結(jié)合的傳遞方式為。對(duì)數(shù)組按值從大到小的順序排序后輸出,請(qǐng)?zhí)羁铡?include<>voidmain(){floata[7]={2,6,3,8,3,12,9};inti;voidsort(float*,int);sort(a,7);for(i=0;i<7;i++)printf("%f",a[i]);printf("\n");}voidsort(float*p,intn)inti,j,k;floatt;for(i=0;i<n-1;i++){k=i;for(j=i+1;j<n;j++)if(p[k]<p[j])k=j;if(k!二i){t=*(p+i);*(p+i)=*(p+k);*(p+k)=t;}}}下列函數(shù)在n個(gè)元素的一維數(shù)組中,找出最大值、最小值并傳送到調(diào)用函數(shù),請(qǐng)?zhí)羁铡?include<>voidfind(float*p,float*max,float*min,intn){intk;floatt;*max=*p;*min二*p:for(k=1;k<n;k++){t=*(p+k);if(t>*max)*max二t;if(t<*min)*min=t;}}寫出下列程序運(yùn)行結(jié)果:printf("%d\n",p);main()}{intfun(inta,intb)inti=1,p;intf;p二fun(i,i+1);
intf;if(a>b)f=1;elseif(a==b)f=0;f=-1;returnf;}輸出:-f=-1;returnf;}輸出:-1鍵盤輸入abcdef<CR>#include<>voidfun(){charc;if((c=getchar())!='\n')fun();putchar(c);}voidmain(){fun();}輸出:fedcba(3)#include<>#defineC5intx=1,y=C;voidmain(){intx;x=y++;printf("%d%d\n",x,y);if(x>4){intx;x=++y;printf("%d%d\n",x,y);}x+=y--;printf("%d%d\n",x,y);}(4)#include<>intc,a=4;func(inta,intb){c=a*b;a=b-1;b++;return(a+b+1);}voidmain(){intb=2,p=0;c=1;p=func(b,a);printf("%d,%d,%d,%d\n",a,b,c,p);}輸出:4,2,8,9(5)unsignedfun6(unsignednum){unsignedk=1;do{k*=num%10;num/=10;}while(num);returnk;}voidmain(){unsignedn=26;printf("%d\n",fun6(n));C.chara="stringC.chara="stringD.chara[]={0,1,2,3,4,5};}}輸出:12輸出:5677126第7章數(shù)組習(xí)題單項(xiàng)選擇題⑴inta[4]={5,3,8,9};其中a[3]的值為(D)。A.5B.3C.8D.9以下4個(gè)字符串函數(shù)中,(A)所在的頭文件與其他3個(gè)不同。A.getsB.strcpyC.strlenD.strcmp以下4個(gè)數(shù)組定義中,(D)是錯(cuò)誤的。A.inta[7];B.#defineN5longb[N];C.charc[5];D.intn,d[n];對(duì)字符數(shù)組進(jìn)行初始化,(B)形式是錯(cuò)誤。A.charc1[]={'1','2','3'};B.charc2[]=123;C.charc3[]={'1','2','3','\0'};D.charc4[]="123";在數(shù)組中,數(shù)組名表示(A)。A.數(shù)組第1個(gè)元素的首地址B.數(shù)組第2個(gè)元素的首地址C.數(shù)組所有元素的首地址D.數(shù)組最后1個(gè)元素的首地址若有以下數(shù)組說(shuō)明,則數(shù)值最小的和最大的元素下標(biāo)分別是(B)。inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};A.1,12B.0,11C.1,11D.0,12若有以下說(shuō)明,則數(shù)值為4的表達(dá)式是(D)。inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc='a',d,g;A.a[g-c]B.a[4]C.a['d'-'c']D.a['d'-c]設(shè)有定義:chars[12]="string";則printf("%d\n",strlen(s));的輸出是(A)。A.6B.7C.11D.12設(shè)有定義:chars[12]="string";則printf("%d\n",sizeof(s));的輸出是(B)。A.6B.7C.11D.12合法的數(shù)組定義是(A)。A.chara[]="string";B.inta[5]={0,1,2,3,4,5};
合法的數(shù)組定義是(B)。A.inta[3][]={0,1,2,3,4,5};B.inta[][3]={0,1,2,3,4};C.inta[2][3]={0,1,2,3,4,5,6};D.inta[2][3]={0,1,2,3,4,5,};下列語(yǔ)句中,正確的是(D)。A.chara[3][]={'abc','1'};B.chara[][3]={'abc','1'};C.chara[3][]={'a',"1"};D.chara[][3]={"a","1"};下列定義的字符數(shù)組中,輸出printf("%s\n",str[2]);的輸出是(C)。staticstr[3][20]={"basic","foxpro","windows"};A.basicB.foxproC.windowsD.輸出語(yǔ)句出錯(cuò)下列各語(yǔ)句定義了數(shù)組,其中哪一個(gè)是不正確的(C)。A.chara[3][10]={"China","American","Asia"};B.intx[2][2]={1,2,3,4};C.floatx[2][]={1,2,4,6,8,10};D.intm[][3]={1,2,3,4,5,6};數(shù)組定義為inta[3][2]={1,2,3,4,5,6},值為6的數(shù)組元素是(B)。A.a[3][2]B.a[2][1]C.a[1][2]D.a[2][3]填空題C語(yǔ)言中,數(shù)組的各元素必須具有相同的隹虹,元素的下標(biāo)下限為d,下標(biāo)必須是正整數(shù)、0、或者—常量—。但在程序執(zhí)行過(guò)程中,不檢查元素下標(biāo)是否越界。C語(yǔ)言中,數(shù)組在內(nèi)存中占一片連續(xù)的存儲(chǔ)區(qū),由數(shù)組名代表它的首地址。數(shù)組名是一個(gè)常量,不能對(duì)它進(jìn)行賦值運(yùn)算。執(zhí)行staticintb[5],a[][3]二{1,2,3,4,5,6};后,b[4]二_0,a[1][2]二60⑷設(shè)有定義語(yǔ)句staticinta[3][4]二{{1},{2},{3}};則a[1][0]值為2,a[1][1]值為_,a[2][1]的值為_0—o如定義語(yǔ)句為chara[]="windows",b[]="2000";,語(yǔ)句printf("%s",strcat(a,b));的輸出結(jié)果為0輸入20個(gè)數(shù),輸出它們的平均值,輸出與平均值之差的絕對(duì)值為最小的數(shù)組元素0請(qǐng)?zhí)羁?#include<>for(i=0;i<20;i++)scanf(“%f”,&a[i]);#include<>for(i=0;i<20;i++)pjz+=a[i];voidmain(){floata[20],piz=0,s,t;inti,k;s=fabs(a[0]-piz);voidmain(){floata[20],piz=0,s,t;inti,k;s=fabs(a[0]-piz);for(i=1;i<20;i++)if(fabs(a[i]-pjz)<s)printf(“%f,%f”,piz,t):{}s=fabs(a[i]-pjz):t=a[i]:以下程序以每行10個(gè)數(shù)據(jù)的形式輸出a數(shù)組,請(qǐng)?zhí)羁?。voidmain(){inta[50],i:printf("輸入50個(gè)整數(shù):"):for(i=0;i<50;i++)scanf("%d",&a「i]);for(i=1:i<=50:i++){if(i%10==0)printf("%3d\n",a[iT]):elseprintf("%3d",a[i-1]):}}下面程序的功能是輸出數(shù)組s中最大元素的下標(biāo),請(qǐng)?zhí)羁铡oidmain(){intk,p:ints[]={1,-9,7,2,-10,3}:for(p=0,k=p;p<6;p++)if(s[p]>s[k])k=p:printf("%d\n",k):}3.閱讀程序,分析程序的功能。(1)chars[80]:#include<>inti:#include<>for(i=0:i<80:i++)voidmain(){s[i]=getchar():{if(s[i]=='\n')break:charstr[10][80],c[80];s[i]='\0';i=0;while(s[i])putchar(s[i++]);putchar(‘\n');}分析:輸入一個(gè)字符串,以回車結(jié)束,并將其原樣輸出。(2)#include<>#include<>voidmain()inti;for(i=0;i<10;i++)gets(str[i]);strcpy(c,str[0]);for(i=1;i<10;i++)if(strlen(c)<strlen(str[i])){strcpy(c,str[i]);}printf("%s\n",c);printf("%d\n",strlen(c));}分析:輸入10個(gè)字符串,輸出10個(gè)字符串中最長(zhǎng)的字符串和它的長(zhǎng)度。(3)#include<>#include<>voidmain(){chara[10][80],c[80];inti,j,k;for(i=0;i<10;i++)gets(a[i]);for(i=0;i<9;i++){k=i;for(j=i+1;j<10;j++)if(strcmp(a[j],a[k])<0)k=j;if(k!=i){strcpy(c,a[i]);strcpy(a[i],a[k]);strcpy(a[k],c);}單項(xiàng)選擇題指針pstr所指字符串的長(zhǎng)度為D。char*pstr二"\t\"1234\\abcd\n"A.15B.14C.13D.12對(duì)于char*pstr;以下正確的是B。A.*pstr="Hi"B.pstr="Hi"C.*pstr="Hi"D.**pstr="Hi"以下程序段的輸出結(jié)果為_L。charastr[5]="1234";char*pstr=astr;printf("%c",pstr[1]-'0');A.1B.2C.ASCII碼值為1的字符D.ASCII碼值為2的字符下述程序段的輸出結(jié)果為Docharastr[]="abcde";char*pstr=&astr[5];while(--pstr>=astr)putchar(*pstr);putchar('\n');A.abcB.cbaC.abcdeD.edcba若有定義inta=1,*b,c;,以下不正確的是A。A.b=aB.b=&aC.b=&a,c=*bD.c=a以下程序段的運(yùn)行結(jié)果為_C_。intnum[]={1,2,3,4,5,6,7,8,9},*pnum=&num[2];pnum++;++pnum;printf("%d\n",*pnum);A.3B.4C.5D.6以下程序段的運(yùn)行結(jié)果為_L。char*pstr="MynameisTom";intn=0;while(*pstr++!='\0')n++;printf("n=
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年消防培訓(xùn)類合同(1篇)
- 2026年培訓(xùn)技術(shù)加盟合同(1篇)
- 鈮鐵火法冶煉工安全培訓(xùn)效果評(píng)優(yōu)考核試卷含答案
- 物流公司配送團(tuán)隊(duì)倉(cāng)庫(kù)管理員績(jī)效考核表
- 零基礎(chǔ)職場(chǎng)新人自我管理技巧培訓(xùn)
- 時(shí)間管理核心技能培訓(xùn)課件
- 美發(fā)店每日衛(wèi)生管理制度
- 衛(wèi)生院死亡管理制度
- 美食城衛(wèi)生管理制度
- 學(xué)校衛(wèi)生工作細(xì)則制度
- 航空安保審計(jì)培訓(xùn)課件
- 高層建筑滅火器配置專項(xiàng)施工方案
- 2023-2024學(xué)年廣東深圳紅嶺中學(xué)高二(上)學(xué)段一數(shù)學(xué)試題含答案
- 2026元旦主題班會(huì):馬年猜猜樂馬年成語(yǔ)教學(xué)課件
- 2025中國(guó)農(nóng)業(yè)科學(xué)院植物保護(hù)研究所第二批招聘創(chuàng)新中心科研崗筆試筆試參考試題附答案解析
- 反洗錢審計(jì)師反洗錢審計(jì)技巧與方法
- 檢驗(yàn)科安全生產(chǎn)培訓(xùn)課件
- 爆破施工安全管理方案
- 2026全國(guó)青少年模擬飛行考核理論知識(shí)題庫(kù)40題含答案(綜合卷)
- 2025線粒體醫(yī)學(xué)行業(yè)發(fā)展現(xiàn)狀與未來(lái)趨勢(shì)白皮書
- 靜壓機(jī)工程樁吊裝專項(xiàng)方案(2025版)
評(píng)論
0/150
提交評(píng)論