軟件專業(yè)課-C語言練習冊_第1頁
軟件專業(yè)課-C語言練習冊_第2頁
軟件專業(yè)課-C語言練習冊_第3頁
軟件專業(yè)課-C語言練習冊_第4頁
軟件專業(yè)課-C語言練習冊_第5頁
已閱讀5頁,還剩105頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、PAGE C語言專業(yè)課資料習題集匯總精通教育計算機組編第一章程序設(shè)計的基本概念由C語言編寫的代碼程序A.可直接執(zhí)行B.是一個源程序C.經(jīng)過編譯即可執(zhí)行D.經(jīng)過編譯解釋才能執(zhí)行C語言源程序的擴展名為A.objB.cC.exeD.cppC語言處理系統(tǒng)必須執(zhí)行的步驟依次為 、鏈接。在C語言中對源程序進行編譯生成的目標文件的擴展名是 。C程序設(shè)計的三種基本結(jié)構(gòu)是:選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和 。一個C語言程序的基本組成單位是 。一個C語言源程序由若干個 組成。一個C源程序至少應(yīng)該有一個 函數(shù)。一個C語言程序的執(zhí)行起點是 。()C語言程序通過編譯、運行后,其結(jié)果都是正確的。()C語言每個語句必須以“;”結(jié)束。(

2、)構(gòu)成C程序的基本單位是函數(shù)。()C語言中所有函數(shù)的執(zhí)行都是從主函數(shù)開始的。第二章C程序設(shè)計的初步知識(1)按照C語言規(guī)定的用戶標識符命名規(guī)則,不能出現(xiàn)在標識符中的是A.大寫字母B.中劃線C.數(shù)字字符D.下劃線(2)下列選項中,不能用作標識符的是A._1234_B._1_2C.int_2_D.2_int_(3)以下選項中合法的用戶標識符是A.longB._2TestC.3DmaxD.A.dat(4)以下不能定義為用戶標識符的是A.MainB._0C._intD.sizeof(5)下列定義變量的語句錯誤的是A.int_int;B.doubleint_;C.charFor;D.floatUS$;以

3、下選項中不合法的標識符是A.printB.forC.&aD._00(7)以下不合法的用戶標識符是Aj2_KEYB.DoubleC.4dD._8_(8)以下C語言用戶標識符,不合法的是A._1B.AaBcC.a_bD.a-b在C語言中,最簡單的數(shù)據(jù)類型包括A整型、字符型、邏輯型B整型、實型、字符型C整型、邏輯型、日期型D整型、日期型、通用型(1)在C語言中,整型數(shù)據(jù)分為A.二進制、八進制、十進制B.二進制、十進制、十六進制C.八進制、十進制、十六進制D.二進制、八進制、十進制、十六進制(2)C源程序不能表示的進制為A.八進制B.二進制C.十六進制D.十進制(1)在C語言中,合法的實型常數(shù)是A.5

4、E2.0B.E-3C.2E0D.1.3E(2)在C語言中,合法的實型常數(shù)是A.1.2E0.5B.3.14159EC.5E-3D.E15(3)以下選項中,不能作為合法常量的是A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0(4)以下不合法的數(shù)值常量是A.011B.le1C.8.0E0.5D.0 xabcd(5)以下選項中,能用作數(shù)據(jù)常量的是A.o115B.0118C.1.5e1.5D.115(6)以下選項中,合法的一組C語言數(shù)值常量是A.028B.12.C.177D.0 x8A.5e-3OXa234e1.510,000-0 xf4.5e0Oabc3.e5(1)在C

5、語言中,非法的字符常量是A.tB.17C.nD.xaa(2)以下不合法的字符常量是A.018B.C.D.xcc(3)以下選項不屬于字符常量的是A.CB.CC.xCCD.072(4)以下選項中,非法的字符常量是A.101B.65C.xffD.019在C語言中,運算對象必須為整型的運算符是ABC+=D%在C語言中,以下關(guān)于運算符敘述錯誤的是A.在C語言中,逗號運算符的優(yōu)先級最低B.在C語言中,賦值運算符自右向左運算C.在C語言中,+、-、*、/、%是算術(shù)運算符,可用于整型和實型數(shù)的運算D.在C語言中,+、-運算符可以改變變量的值在C語言中,以下非法的表達式是A.0=x0;D.k=i=j;(1)表達

6、式3.6-5/2+1.2+5%2的值是A.4.3B.4.8C.3.3D.3.8(2)若有定義語句:intx=12,y=8,z;,在其后執(zhí)行語句z=0.9+x/y;,則z的值為A.1.9B.1C.2D.2.4(1)設(shè)有語句:inta=3;則執(zhí)行了語句a+=a-=a*a;變量a的值是A.3B.0C.9D.-12(2)設(shè)有語句:intx=10;則執(zhí)行了語句x+=x-=x-x;變量x的值是A.10B.20C.40D.30(3)設(shè)有語句:inta=0;則執(zhí)行語句a+=(a=8);變量a的值是A.0B.8C.16D.24以下程序的輸出結(jié)果是main()inti=10,j=1;printf(%d,%dn,i

7、-,+j);A.9,2B.10,2C.9,1D.10,1main()inta=12,b=12;printf(%d%dn,-a,+b);A.1010B.1212C.1110D.1113main()intx=023;printf(%dn,-x);A.17B.18C.23D.24以下程序的輸出結(jié)果是main()intx=100,y=200;printf(%dn,(x,y);A.200B.100C.100200D)200100以下程序的輸出結(jié)果是main()intx=10,y=3,z;printf(%dn,z=(x%y,x/y);A.1B.0C.4D.3intk=0;,以下選項的四個表達式中與其他三個

8、表達式的值不相同的是A.k+B.k+=1C.+kD.k+1以下程序的輸出結(jié)果是(1)main()intk=11;printf(k=%d,k=%o,k=%xn,k,k,k);A.k=11,k=12,k=11B.k=11,k=13,k=13C.k=11,k=013,k=0 xbD.k=11,k=13,k=b(2)main()intk=17;printf(%d,%o,%xn,k,k,k);A.17,021,0 x11B.17,17,17C.17,0 x11,021D.17,21,11以下程序main()intm=0256,n=256;printf(%o%on,m,n);程序運行后的輸出結(jié)果是A.02

9、560400B.0256256C.256400D.400400已知在ASCII碼中,字母A的序號為65,以下程序的輸出結(jié)果是main()charc1=A,c2=Y;printf(%d,%dn,c1,c2);A.65,90B.A,YC.65,89D.因輸出格式不合法,輸出錯誤信息已知在ASCII碼中,字母A的序號為65,以下程序的輸出結(jié)果是main()charch1,ch2;ch1=A+5-3;ch2=A+6-3;printf(%d,%cn,ch1,ch2);A.67,DB.B,CC.C,DD.不確定的值以下程序的輸出結(jié)果是main()charx=f;printf(%cn,A+(x-a+1);A

10、.GB.HC.ID.J以下程序的輸出結(jié)果是main()charc=z;printf(%c,c-25);A.aB.ZC.z-25D.yC語言標識符的第一個字符必須為下劃線或者 。在C語言中,整型常量的書寫形式包括:八進制、十進制和 進制。在C語言中,運算符的操作數(shù)必須是整型的是 。有語句inti=-19,j=i%4;printf(%dn,j);則輸出結(jié)果是 。設(shè)x和y均為int型變量,且x=1,y=2,則以下表達式1.0+x/y的值 。設(shè)intx=7,y=3,則表達式x%y+x/y的值是 。請寫出數(shù)學式a/bc的C語言表達式 。設(shè)inta=9,b=6,c;,執(zhí)行語句c=a/b+0.8;后c的值是

11、 。設(shè)charw;intx;floaty;doublez;,則表達式w*x+z-y的值的類型是 。設(shè)inta;floatb;charc;longd;doublee;,則表達式a/c-b+d-e值的類型是 。設(shè)inti;floatf=3.14;,執(zhí)行i=(int)f;后,變量i的值是 。設(shè)floatx=23.65;,則執(zhí)行語句printf(%dn,(int)(x+0.5);后輸出結(jié)果是 。若a,b和c均是int型變量,則計算表達式a=(b=4)+(c=2)后,a值為 。設(shè)inta=37;,則執(zhí)行語句a+=a%=9;后,變量a的值是 。設(shè)intj=5;,則執(zhí)行語句j+=j-=j*j;后,變量j的值

12、是 。設(shè)inta=2;,則執(zhí)行a+=a*=15;后,變量a的值是 。以下程序運行后的輸出結(jié)果是 。main()inta=0,b=0,c=0;c=(a+=a-=5),(a=b,b+3);printf(%d,%d,%dn,a,b,c);執(zhí)行語句y=10;x=y+;后變量x的值為 。設(shè)intx=011;printf(%dn,+x);后的輸出結(jié)果是 。設(shè)inta=010,b=10;則語句printf(%d,%dn,a+,-b);的結(jié)果為 。設(shè)intx=14;,則表達式x+%-5的值為 。利用運算符-,下列兩條語句b=5+a;a-=1;可以僅由一條語句實現(xiàn),這條語句是 。在C語言中,優(yōu)先級最低的運算符是

13、 。若x、i、j和k都是int型變量,則計算下面表達式x=(i=4,j=16,k=32)后,x的值為 。若a是int型變量,則表達式(a=4*5,a*2),a+6的值為 。設(shè)inta,b;,表達式a=2,b=5,b+,a+b的值是 。在C語言中,假設(shè)所有變量均為整型,則表達式(a=3,b=7,a+,a+b)的值是 。設(shè)inta,b,c;則執(zhí)行a=(b=3,c=5,b=10);后變量a的值是 。若定義了inta=1;,則執(zhí)行printf(%dn,(a=a+4,a+5),a+6);語句的輸出結(jié)果是 。()C程序中,%是只能用于整數(shù)運算的運算符。()在C程序中,APH和aph是兩個不同的變量。()x

14、=(i=4,j=16,k=32);x的結(jié)果是32。()常量-1按無符號整型輸出是,現(xiàn)實65535。()print可以作為變量名使用。()intIf=0;會出現(xiàn)編譯錯誤。()變量一旦被說明,則該變量被分配存儲空間。第三章順序結(jié)構(gòu)有以下程序main()inta=666,b=888;printf(%dn,a,b);程序運行后的輸出結(jié)果是A.錯誤信息B.666C.888D.666,888設(shè)有如下程序段,則以下敘述中正確的是main()intx=2002,y=2003;printf(%dn,(x,y);A.輸出語句中格式說明符的個數(shù)少于輸出項的個數(shù),不能正確輸出B.運行時產(chǎn)生出錯信息C.輸出值為2002

15、D.輸出值為2003以下程序的輸出結(jié)果是main()inta=1234;printf(%2dn,a);A.12B.34C.1234D.提示出錯,無結(jié)果運行時從鍵盤上輸入9876543210(表示回車),則該程序的輸出結(jié)果是main()inta;floatb,c;scanf(%2d%3f%4f,&a,&b,&c);printf(a=%d,b=%f,c=%fn,a,b,c);A.a=98,b=765,c=4321B.a=10,b=432,c=8765C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.0(1)設(shè)變量均已正確定義,若要通過sc

16、anf(%d%c%d%c,&a1,&c1,&a2,&c2);語句為變量a1和a2賦數(shù)值10和20,為變量c1和c2賦字符X和Y。以下所示的輸入形式中正確的是(注:代表空格字符)A.10X20YB.10X20YC.10XD.10X20Y20Y(2)若有定義:inta,b;,通過語句scanf(%d,%d,&a,&b);,能把整數(shù)3賦給變量a,5賦給變量b的輸入數(shù)據(jù)是()A.35B.3,5C.3;5D.35(1)以下程序運行后的輸出結(jié)果是 。main()inta=10;printf(%d,%o,%xn,a,a,a);(2)以下程序運行后的輸出結(jié)果是 。main()inta,b,c;a=25;b=0

17、25;c=Ox25;printf(%d%d%dn,a,b,c);(3)以下程序運行后的輸出結(jié)果是 。main()inta=1,b=2;a=a+b;b=a-b;a=a-b;printf(%d,%dn,a,b);(4)設(shè)整型變量a和b中的值分別為7和9,要求按一下格式輸出a和b的值:a=7b=9請完成輸出語句:printf( ,a,b);(1)有程序如下,要求給i賦10,給j賦20,則應(yīng)該從鍵盤輸入 。main()inti,j;scanf(i=%d,j=%d,&i,&j);printf(i=%d,j=%d,i,j);(2)輸入123456,則輸出結(jié)果是 。main()inta,b;scanf(%2

18、d%2d,&a,&b);printf(%d,%dn,a,b);對應(yīng)scanf(a=%d,b=%d,&a,&b);語句的輸入a為3,b為7的鍵盤輸入格式是 。不用第三個變量,將變量a和b的值進行互換的操作是 。()語句scanf(%5.2f,&a);是非法的。()語句printf(%d,3)的輸出結(jié)果是51。()常量-1按無符號整型輸出是,現(xiàn)實65535。()C語言本身未提供輸入輸出語句,但可通過輸入輸出函數(shù)來實現(xiàn)數(shù)據(jù)的輸入輸出。()當輸入數(shù)據(jù)時,必須指明變量的地址。第四章選擇結(jié)構(gòu)以下程序的輸出結(jié)果是main()inta=3,b=4;printf(%dn,a=y)&(y=z)B.(x=y)AND

19、(y=z)C.(x=y=z)D.(x=y)&(y=z)能正確表示a10或a0的關(guān)系表達式是A.a=10ora=10|a=10|a=10&ab)&(n=cd);后n的值為A.1B.2C.3D.4以下程序的輸出結(jié)果是#includemain()inta=1,b=2,m=0,n=0,k;k=(n=ba)|(m=ab);printf(%d,%dn,k,m);A.0,0B.0,1C.1,0D.1,1設(shè)x、y、t均為int型變量,則執(zhí)行語句:x=y=3;t=+x|+y;后,y的值為A.1B.2C.3D.4設(shè)intx=-1;執(zhí)行表達式+x|+x|+x|+x,x的值是A.0B.1C.2D.4設(shè)a=1,b=2,

20、c=3,d=4,則表達式ab?a:cd?a:d的結(jié)果是A.4B.3C.2D.1設(shè)w、x、y、z、m均為int型變量,則以下程序段執(zhí)行后,m的值w=1;x=2;y=3;z=4;m=(wx)?w:x;m=(my)?m:y;m=(mz)?m:z;A.4B.3C.2D.1若有條件表達式(exp)?a+:b-,則以下表達式中能完全等價于表達式(exp)的是A.(exp=0)B.(exp!=0)C.(exp=1)D.(exp!=1)以下程序的輸出結(jié)果是#includemain()inta=2,b=-1,c=2;if(ab)if(bb)if(bc)printf(%d,d+1);elseprintf(%d,+

21、d+1);printf(%dn,d);程序運行后的輸出結(jié)果是A.2B.3C.43D.44以下程序段的輸出結(jié)果是main()intx=1,y=2,z=3;if(xy)if(yz)printf(%d,+z);elseprintf(%d,+y);printf(%dn,x+);A.331B.41C.2D.1若執(zhí)行以下程序時從鍵盤上輸入9,則輸出結(jié)果是main()intn;scanf(%d,&n);if(n+5)printf(%d,x);elseprintf(%dn,x-);A.7和5B.6和3C.7和4D.6和4已知intx=10,y=20,z=30;以下語句執(zhí)行后x,y,z的值是if(xy)z=x;

22、x=y;y=z;A.x=l0,y=20,z=30B.x=20,y=30,z=30C.x=20,y=30,z=10D.x=20,y=30,z=20下面的程序的輸出結(jié)果是main()intx=3,y=0,z=0;if(x=y+z)printf(*);elseprintf(#);A.有語法錯誤不能通過編譯B.輸出*C.可以通過編譯,但是不能通過連接D.輸出#以下程序的輸出結(jié)果是main()inta=5,b=4,c=3,d=2;if(abc)printf(%dn,d);elseif(c-1=d)=1)printf(%dn,d+1);elseprintf(%dn,d+2);A.2B.3C.4D.5若運行

23、時從鍵盤上輸入2.0(表示回車),則下面程序的輸出結(jié)果是main()floatx,y;scanf(%f,&x);if(x0.0)y=0.0;elseif(x5.0)&(x!=2.0)y=1.0/(x+2.0);elseif(x0);的輸出結(jié)果是 。執(zhí)行printf(%dn,1+!2+(3b)&(c=1)后c的值是 。設(shè)inta=-3,b=7,c=-1;則執(zhí)行(a=0)&(a=a%b3|-b4;后變量c的值為 。設(shè)a、b、c為整型變量,若a的值為1,b的值為2,則執(zhí)行c=a+|b+;語句后,變量b的值為 。設(shè)inty;執(zhí)行表達式(y=4)|(y=5)|(y=6)后,y的值是 。設(shè)intm=0;,

24、執(zhí)行表達式m|(m=2)|(m=3)|(m=4)后,m的值是 。設(shè)inta=0,b=0,c=2,d=4;,則執(zhí)行(c=a=b)|(d=b=a);后變量d的值是 。設(shè)inta=1,b=2,m=2,n=2;,執(zhí)行表達式(m=a=0?x:-x;后y的值是 。設(shè)inta=1,b=2,c=3,d=4,f;,執(zhí)行語句f=(a!=b)?c+:d+;后f的值是 。設(shè)intx=1,y=3,z;,執(zhí)行z=xy?+x:y+;后,z的值是 。()7&3+12的值是15。()運算符的優(yōu)先級依次為(由高到低):!(非)、關(guān)系運算符、算術(shù)運算符、&和|、賦值運算符。()if(a=0)i=1;是合法的C語句。【程序】#inc

25、ludemain()inti,j,k,a=3,b=2;i=(-a=b+)?-a:+b;j=a+;k=b;printf(i=%d,j=%d,k=%dn,i,j,k);【運行結(jié)果】【程序】#includemain()inta=1,b=3,c=5,d=4,x;if(ab)if(cd)x=1;elseif(ac)if(bd)x=2;elsex=3;elsex=6;elsex=7;printf(x=%dn,x);【運行結(jié)果】【程序】#includemain()intx=0,y=1;switch(x)case0:switch(y)case1:printf(*1*n);break;case2:printf(

26、*2*n);break;case1:printf(*3*n);break;【運行結(jié)果】【程序】#includemain()intx=2,y=4;switch(x)case2:switch(y)case4:printf(firstn);break;case8:printf(secondn);break;case4:printf(thirdn);break;【運行結(jié)果】程序運行時,輸入A#includemain()charn;scanf(%c,&n);switch(n)casea:caseA:printf(nverygood);caseb:caseB:printf(ngood);casec:cas

27、eC:cased:caseD:printf(npass);casee:caseE:printf(nwarn);default:printf(nerror);【運行結(jié)果】第五章循環(huán)結(jié)構(gòu)以下循環(huán)的輸出結(jié)果是intn=10;while(n7)n-;printf(%dn,n);A.10B.9C.10D.99898878776以下程序的輸出結(jié)果是main()intnum=0;while(numbc)t=a;a=b;b=t;c+;printf(%d,%d,%d,a,b,c);A.2,3,0B.3,2,0C.3,2,-1D.2,3,-1當執(zhí)行以下程序段時:x=-1;dox=x*x;while(!x);A循環(huán)

28、體將執(zhí)行一次B.循環(huán)體將執(zhí)行兩次C.循環(huán)體將執(zhí)行無限次D.系統(tǒng)將提示有語法錯誤有以下程序段,則此處do-while循環(huán)的結(jié)束條件是intn=0,p;doscanf(%d,&p);n+;while(p!=12345&n3);A.p的值不等于12345并且n的值小于3B.p的值等于12345并且n的值大于等于3C.p的值不等于12345或者n的值小于3D.p的值等于12345或者n的值大于等于3若有以下程序,結(jié)果正確的是main()intx=3;doprintf(%dn,x-=2);while(!(-x);A.輸出的是1B.輸出的是1和-2C.輸出的是3和0D.是死循環(huán)若要使程序的輸出值為2,則應(yīng)

29、該從鍵盤給n輸入的值是main()ints=0,a=1,n;scanf(%d,&n);dos+=1;a=a-2;while(a!=n);printf(%dn,s);A.-1B.-3C.-5D.0以下程序的輸出結(jié)果是#includemain()inta,b,t;for(a=3,b=0;!a=b;a-,b+)if(ab)t=a;a=b;b=t;printf(%d,%dn,a,b);A.4,1B.1,4C.4,-1D.-1,4執(zhí)行語句:for(i=1;i+8;y=+i)printf(%d%d,x-,y);A.10192B.9876C.10990D.101091設(shè)j為int型變量,則下面for循環(huán)語句

30、的執(zhí)行結(jié)果是for(j=10;j3;j-)if(j%3)j-;-j;-j;printf(%d,j);A.63B.74C.62D.73以下程序的輸出結(jié)果是#includemain()inti=0,s=0;doif(i%2)i+;continue;i+;s+=i;while(i7);printf(%dn,s);A.16B.12C.28D.21以下程序的輸出結(jié)果是#includemaininta,b;for(a=1,b=1;a=10)break;if(b%3=1)b+=3;continue;printf(%dn,a);A.101B.6C.5D.4以下程序的輸出結(jié)果是#includemain()int

31、i;for(i=1;i=5;i+)if(i%2)printf(*);elsecontinue;printf(#);printf($n);A.*#*#*#$B.#*#*#*$C.*#*#$D.#*#*$有以下程序,程序執(zhí)行后輸出結(jié)果是#includemain()inti,n=0;for(i=2;i5;i+)doif(i%3)continue;n+;while(!i);n+;printf(n=%dn,n);A.n=5B.n=2C.n=3D.n=4C語言的三種循環(huán)語句是 、 、 。設(shè)for(k=0;k0;i-);后,變量i的值是 。()for(表達式1;表達式3)可理解為for(表達式1;1;表達式

32、3)。()break,return所起的作用是一樣的,都是跳出循環(huán)。()for(;)S中的語句S必執(zhí)行無窮多次?!境绦颉?includemain()inta,s,n,count;a=2;s=0;n=1;count=1;while(count=4)n=n*a;s=s+n;+count;printf(s=%dn,s);【運行結(jié)果】【程序】#includemain()inta=1,b=10;dob-=a;a+;while(b-0);printf(a=%d,b=%dn,a,b);【運行結(jié)果】【程序】#includemain()inti=10,j=0;doj=j+i;i-;while(i2);print

33、f(%dn,j);【運行結(jié)果】有以下程序:程序運行時,從鍵盤輸入:01main()chark;inti;for(i=1;i3;i+)scanf(%c,&k);switch(k)case0:printf(anothern);case1:printf(numbern);【運行結(jié)果】【程序】#includemain()inti;for(i=0;i3;i+)switch(i)case1:printf(%d,i);case2:printf(%d,i);default:printf(%d,i);【運行結(jié)果】【程序】#includemain()inta=0,i;for(i=1;i5;i+)switch(i)

34、case0:case3:a+=2;case1:case2:a+=3;default:a+=5;printf(%dn,a);【運行結(jié)果】【程序】#includemain()intk,s;for(k=1,s=0;kk)break;elses+=k;printf(%d,%d),k,s);【運行結(jié)果】【程序】#includemain()inti,j,x=0;for(i=0;i2;i+)x+;for(j=0;j3;j+)if(j%2)continue;x+;x+;printf(x=%dn,x);【運行結(jié)果】【程序】程序運行時輸入6514#includemain()intm,n;scanf(%d%d,&m

35、,&n);while(m!=n)while(mn)m-=n;while(nm)n-=m;printf(m=%d,n=%dn,m,n);【運行結(jié)果】第六章函數(shù)以下敘述中正確的是A.在C程序中,主函數(shù)必須位于程序的最前面B.在C程序中,一行只能寫一條語句C.C程序的基本結(jié)構(gòu)是程序行D.C語句是完成某種程序功能的最小單位C語言規(guī)定,在一個C程序中,主函數(shù)的位置A.必須在開始B.必須在最后C.可以任意D.必須在系統(tǒng)調(diào)用的庫后一個C語言程序由A.若干過程組成B.若干子程序組成C.若干程序段組成D.若干函數(shù)組成以下敘述中正確的是A.構(gòu)成C程序的基本單位是函數(shù)B.可以在一個函數(shù)中定義另一個函數(shù)C.main(

36、)函數(shù)必須放在其它函數(shù)之前D.所有被調(diào)用函數(shù)一定要在調(diào)用之前進行定義以下說法中正確的是A.C語言程序總是從第一個函數(shù)開始執(zhí)行B.在C語言程序中,要調(diào)用的函數(shù)必須在main()函數(shù)中定義C.C語言程序總是從main()函數(shù)開始執(zhí)行D.C語言程序中的main()函數(shù)必須放在程序的開始部分在C語言中,以下正確的說法是A.實參和與其對應(yīng)的形參各占用獨立的存儲單元B.實參和與其對應(yīng)的形參共占用一個存儲單元C.只有當實參和與其對應(yīng)的形參同名時才共占用相同的存儲單元D.形參是虛擬的,不占用存儲單元在C語言中,以下不正確的說法是A.實參可以是常量,變量或表達式B.形參可以是常量,變量或表達式C.實參可以為任意

37、類型D.如果形參和實參的類型不一致,以形參類型為準C語言規(guī)定,簡單變量做實參時,它和對應(yīng)的形參之間的數(shù)據(jù)傳遞方式是A.地址傳遞B.值傳遞C.有實參傳給形參,再由形參傳給實參D.由用戶指定傳遞方式在C語言中,以下函數(shù)值的類型是fun(floatx)floaty;y=3*x4;returny;A.intB.autoC.voidD.floatC語言規(guī)定,函數(shù)返回值的類型是由()決定的。A.return語句中的表達式類型B.調(diào)用該函數(shù)時的主調(diào)函數(shù)類型C.調(diào)用該函數(shù)時由系統(tǒng)臨時D.在定義函數(shù)時所指定的函數(shù)類型有如下函數(shù)調(diào)用語句:fun(rec1,rec2+rec3,(rec4,rec5);在該函數(shù)調(diào)用語

38、句中,含有的實參個數(shù)是A)2B)3C)4D)5以下程序段的輸出結(jié)果是#includeintfun(intx,inty)return(x+y);main()inta=1,b=2,c=3,sum;sum=fun(a+,b+,a+b),c+);printf(%dn,sum);A.6B.7C.8D.9C語言規(guī)定,程序中各函數(shù)之間A.既允許直接遞歸調(diào)用也允許間接遞歸調(diào)用B.不允許直接遞歸調(diào)用也不允許間接遞歸調(diào)用C.允許直接遞歸調(diào)用不允許間接遞歸調(diào)用D.不允許直接遞歸調(diào)用允許間接遞歸調(diào)用以下程序的輸出結(jié)果是#includelongfun(intn)longs;if(n=1|n=2)s=2;elses=n-

39、fun(n-1);returns;main()printf(%ldn,fun(3);A.1B.2C.3D.4以下程序的輸出結(jié)果是#includelongfib(intn)if(n2)return(fib(n-1)+fib(n-2);elsereturn(2);main()printf(%ldn,fib(3);A.2B.4C.6D.8以下程序的輸出結(jié)果是#includeintf(intx)inty;if(x=0|x=1)return(3);elsey=x*x-f(x-2);returny;main()printf(%dn,f(3);A.0B.9C.6D.8已知一個函數(shù)的定義如下:doublefu

40、n(intx,doubley)則該函數(shù)正確的函數(shù)原型聲明為:A.doublefun(intx,doubley)B.fun(intx,doubley)C.doublefun(int,double);D.fun(x,y);以下正確的描述是A.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B.函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套C.函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套D.函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套已知函數(shù)定義:voiddothat(intn,doublex),其函數(shù)聲明的寫法為 。C語言函數(shù)返回類型的默認定義類型是 。函數(shù)的實參傳遞到形參有兩種方式: 和 。在一個函數(shù)內(nèi)部直接或間接調(diào)用該函數(shù)成

41、為函數(shù) 的調(diào)用方式??梢詫⒈徽{(diào)函數(shù)中獲得的值返回給主調(diào)函數(shù)的語句是 。C語言規(guī)定簡單變量做實參的時候,它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式是 。若函數(shù)調(diào)用語句為fun(a,b,fun(a+b,a-b,b);,則函數(shù)fun的參數(shù)個數(shù)是 。若函數(shù)調(diào)用語句為func(rec1,rec2+rec3,(rec4,rec5);則含有的實參個數(shù)是 。()unsigned和void在C中都是保留的。()在C語言中,除了main函數(shù)外,任何函數(shù)都可以遞歸調(diào)用。()所有被調(diào)用的函數(shù)一定要在調(diào)用之前進行定義。()C語言中所有函數(shù)的執(zhí)行都是從主函數(shù)開始的。()C語言所有函數(shù)的執(zhí)行都是從主函數(shù)開始。()函數(shù)只能調(diào)用其他函數(shù),

42、不能調(diào)用自身。()主函數(shù)只能調(diào)用其他函數(shù),不能調(diào)用自身。()C程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個源程序文件中。()通過return語句,函數(shù)可以帶回一個或者一個以上的返回值?!境绦颉?includevoidechonum(inti,intj)intt;t=i;i=j;j=t;printf(i=%d,j=%dn,i,j);main()inti=1,j=2;echonum(i,j);printf(i=%d,j=%dn,i,j);【運行結(jié)果】【程序】#includeintfun(intx)intp;if(x=0|x=1)p=3;elsep=x-fun(x-2);returnp;main()pr

43、intf(%dn,fun(7);【運行結(jié)果】【程序】#includeintpower(intx,intn)intp;if(n0)p=power(x,n-1)*x;elsep=1;return(p);main()intx=2,n=3;printf(%dn,power(x,n);【運行結(jié)果】第七章數(shù)組在C語言中,引用數(shù)組元素時,其數(shù)組下標的數(shù)據(jù)類型允許是A.整型常量B.整型表達式C.整型常量或整型表達式D.任何類型的表達在C語言中,一維數(shù)組的定義方式為:類型說明符數(shù)組名A.常量表達式B.整型表達式C.整型常量或整型表達式D.整型常量以下錯誤的數(shù)組定義形式是A.inta10B.inta3+2;C.i

44、nta3*3;D.inta3.2;以下正確的數(shù)組定義形式是A.intn;scanf(%d,&n);intan;B.inta1.10;C.inta3.2;D.#defineN10intaN;以下對一維整型數(shù)組a的正確說明是A.inta(l0);B.intn=l0,an;C.intn;D.#defineSIZE10scanf(%d,&n);intan;intaSIZE;以下程序的輸出結(jié)果是main()inti,a10;for(i=9;i=0;i-)ai=10-i;printf(%d%d%d,a2,a5,a8);A.258B.741C.852D.369以下程序的輸出結(jié)果是main()inti,k,a

45、10,p3;k=5;for(i=0;i10;i+)ai=i;for(i=0;i3;i+)pi=ai*(i+1);for(i=0;i3;i+)k+=pi*2;printf(%dn,k);A.20B.21C.22D.23以下程序的輸出結(jié)果是main()intp7=11,13,14,15,16,17,18,i=0,k=0;while(i7&pi%2)k=k+pi;i+;printf(%dn,k);A.58B.56C.45D.24下列二維數(shù)組初始化語句中正確且與語句floata3=0,3,8,0,9等價于A.floata2=0,3,8,0,9;B.floata3=0,3,8,0,9,0;C.float

46、a3=0,3,8,0,9,0;D.floata2=0,3,8,0,9,0;下列二維數(shù)組初始化語句中,正確的是A.inta3=8,0,7,0,3,1,2,5;B.inta=9,3,1,8,4,2,3,5,7;C.floata23=1,2,3,4,5,6;D.floata3=1,2,3,4,5,6,7,8,9;以下能正確定義二維數(shù)組的是A.inta3;B.inta3=2*3;C.inta3=;D.inta23=1,2,3,4;以下數(shù)組定義中不正確的是A.inta23;B.intb3=0,1,2,3;C.intc100100=0;D.intd3=1,2,1,2,3,1,2,3,4;以下不能正確定義二

47、維數(shù)組的選項是A.inta22=1,2;B.inta2=1,2,3,4;C.inta22=1,2,3;D.inta2=1,2,3,4;若有說明inta54,則對數(shù)組元素的正確引用是A.a3+12*2B.a(2+1)(0)C.a2+2,3D.a2*23若有說明:inta34,則對a數(shù)組元素的正確引用是A.a24B.a1,3C.a1+10D.a(2)(1)以下程序的輸出結(jié)果是main()inta44=1,3,5,2,4,6,3,5,7;printf(%d%d%d%dn,a03,a12,a21,a30);A.0650B.1470C.5430D.輸出值不定定義如下變量和數(shù)組:inti,x33=1,2,

48、3,4,5,6,7,8,9;則下面語句的輸出結(jié)果是for(i=0;i3;i+)printf(%d,xi2-i);A.159B.147C.357D.369以下程序的輸出結(jié)果是#includemain()intm3=1,4,7,2,5,8,3,6,9;inti,j,k=2;for(i=0;i3;i+)printf(%d,mki);A.456B.258C.369D.789設(shè)inta10;則數(shù)組a的首元素是 。在C語言中,有語句“inta=0,1,2,3;”,則數(shù)組a的長度是 。在C語言中,有語句“charch10;”,則數(shù)組ch所占字節(jié)數(shù)為 。若有C語句:inta3=1,2,3,4,5,6,7,8;

49、則數(shù)組a第一維的大小為 。在C語言中,聲明一個2行3列的二維整型數(shù)組a的語句是“ ;”。設(shè)doubley45;,則數(shù)組y中元素的個數(shù)是 。設(shè)inta4=l,2,3,4,5,6,7;,則a13的值是 。設(shè)inta34=1,2,5,3,2,4,7,9,3,6,5,8;則表達式a12+a23的值是 。()二維數(shù)組a34可分解為三個一維數(shù)組a0、a1、a2,這三個一維數(shù)組都有4個元素。()charstr10;是錯誤的說明語句?!境绦颉?includemain()inta33=1,2,3,4,5,6,7,8,9,i,j;for(i=0;i3;i+)for(j=0;j3;j+)if(i=j)printf(

50、%d,aii);【運行結(jié)果】【程序】#includemain()inti,j,row,column,m;intarray33=100,200,300,28,72,-30,-850,2,6;m=array00;for(i=0;i3;i+)for(j=0;j3;j+)if(arrayijm)m=arrayij;row=i;column=j;printf(%d,%d,%dn,m,row,column);【運行結(jié)果】第八章指針以下程序段執(zhí)行后,a的值為int*p,a=10,b=1;p=&a;a=*p+b;A.12B.11C.10D.13執(zhí)行如下一段程序后,ab值為int*var,ab;ab=100;v

51、ar=&ab;ab=*var+10;A.120B.110C.100D.90程序的輸出結(jié)果是若inta=511,*b=&a;則printf(%dn,*b);A.無確定值B.a的地址C.512D.511分析下面程序,程序的輸出結(jié)果是main()int*p1,*p2,*p,a=5,b=8;p1=&a;p2=&b;if(ab)p=p1;p1=p2;p2=p;printf(%d,%d,*p1,*p2);printf(%d,%d,a,b);A.8,55,8B.5,88,5C.5,85,8D.8,58,5有以下程序main()inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=p;p=q;q=r

52、;printf(%d,%d,%d,%dn,*p,*q,a,b);程序運行后的輸出結(jié)果是A.8,7,8,7B.7,8,7,8C.8,7,7,8D.7,8,8,7以下定義語句中正確的是A.chara=Ab=B;B.floata=b=10.0;C.inta=10,*b=&a;D.float*a,b=&a;若有說明語句:inta,b,c,*d=&c;則能正確從鍵盤讀入三個整數(shù)分別賦給變量a、b、c的語句是A.scanf(%d%d%d,&a,&b,d);B.scanf(%d%d%d,&a,&b,&d);C.scanf(%d%d%d,a,b,d);D.scanf(%d%d%d,a,b,*d);設(shè)有定義:i

53、nta,*pa=&a;以下scanf語句中能正確為變量a讀入數(shù)據(jù)的是A.scanf(%d,pa);B.scanf(%d,a);C.scanf(%d,&pa);D.scanf(%d,*pa);若有以下定義和語句:inta10=1,2,3,4,5,6,7,8,9,10,*p=a;則不能表示a數(shù)組元素的表達式是A.*pB.a10C.*aD.ap-a若已定義:inta9,*p=a;并在以后的語句中未改變p的值,不能表示a1地址的表達式是A.p+1B.a+1C.a+D.+p設(shè)有以下語句inta10=0,1,2,3,4,5,6,7,8,9,*p=a;則_不是對a數(shù)組元素的正確引用,其中(0i10)A.ap

54、-aB.*(&ai)C.piD.*(*(a+i)有以下程序段,b中的值是inta10=1,2,3,4,5,6,7,8,9,10,*p=&a3,b;b=p5;A.5B.6C.8D.9以下程序的輸出結(jié)果是main()inta=1,2,3,4,5,6,7,8,9,0,*p;p=a;printf(%dn,*p+9);A.0B.1C.10D.9以下程序的輸出結(jié)果是main()inta10=1,2,3,4,5,6,7,8,9,10,*p=a;printf(%dn,*(p+2);A.3B.4C.1D.2以下程序的輸出結(jié)果是main()intx8=8,7,6,5,0,0,*s;s=x+3;printf(%dn

55、,s2);A.隨機值B.0C.5D.6若有以下說明:inta10=1,2,3,4,5,6,7,8,9,10,*p=a;則數(shù)值為6的表達式是A.*p+6B.*(p+6)C.*p+=5D.p+5以下程序的輸出結(jié)果是main()inti,x33=9,8,7,6,5,4,3,2,1,*p=&x11;for(i=0;i4;i+=2)printf(%d,pi);A.52B.51C.53D.97以下執(zhí)行程序段后,m的值為inta23=1,2,3,4,5,6;intm,*p;p=&a00;m=(*p)*(*(p+2)*(*(p+4);A.15B.14C.13D.12設(shè)有說明int(*ptr)m;其中標識符pt

56、r是A.m個指向整型變量的指針B.指向m個整型變量的函數(shù)指針C.一個指向具有m個整型元素的一維數(shù)組的指針D.具有m個指針元素的一維指針數(shù)組,每個元素都只能指向整型量若有定義int*p3;則以下敘述中正確的是A.定義了一個基類型為int的指針變量p,該變量具有三個指針B.定義了一個指針數(shù)組p,該數(shù)組含有三個元素,每個元素都是基類型為int的指針C.定義了一個名為*p的整型數(shù)組,該數(shù)組含有三個int類型元素D.定義了一個可指向一維數(shù)組的指針變量p,所指一維數(shù)組應(yīng)具有三個int類型元素以下程序的輸出結(jié)果是voidprtv(int*x)printf(%dn,+*x);main()inta=25;prt

57、v(&a);A.23B.24C.25D.26以下程序的輸出結(jié)果是voidfun(intx,inty,int*cp,int*dp)*cp=x+y;*dp=x-y;main()inta,b,c,d;a=30;b=50;fun(a,b,&c,&d);printf(%d,%dn,c,d);A.50,30B.30,50C.80,-20D.80,20以下程序的輸出結(jié)果是int*f(int*x,int*y)if(*x*y)returnx;elsereturny;main()inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=f(p,q);printf(%d,%d,%dn,*p,*q,*r);A.

58、7,8,8B.7,8,7C.8,7,7D.8,7,8數(shù)組名作為函數(shù)調(diào)用的實參,傳遞給形參的是A.數(shù)組的首地址B.數(shù)組的第一個元素的值C.數(shù)組中全部元素的值D.數(shù)組元素的個數(shù)在C語言的函數(shù)中A.必須有形參B.形參必須是變量名C.可以有也可以沒有形參D.數(shù)組名不能作形參以下程序的輸出結(jié)果是#includeintf(intb,intm,intn)inti,s=0;for(i=m;in;i=i+2)s=s+bi;returns;main()intx,a=1,2,3,4,5,6,7,8,9;x=f(a,3,7);printf(%dn,x);A10B.18C.8D.15變量的指針,其含義的指該變量的 。設(shè)

59、inta=10,*p=&a;,則執(zhí)行printf(%dn,*p+a);的結(jié)果是 。printf(%dn,NULL);的結(jié)果為 。設(shè)inta,*p=&a;,通過指針變量p為a輸入值的scanf語句是 。設(shè)有定義:intn,*k=&n;以下語句將利用指針變量k讀寫變量n中的內(nèi)容,請將語句補充完整。scanf(%d, );printf(%dn, );設(shè)inta10=1,2,3;則*(a+3)的值是 。設(shè)inta5=l,3,5,7,9,*p=&a2;,則+(*p)的值是 。若有如下定義語句:inta4=10,20,30,40,*p=&a2;則*p的值為 。設(shè)inta32=2,4,6,8,10;則*(a

60、2+1)的值是 。設(shè)ints32=1,2,3,4,5,6,(*p)2=s;,則*(*(p+1)+1)的值是 。在C語言中,當調(diào)用函數(shù)時,實參是一個數(shù)組名,則函數(shù)傳送的是數(shù)組的 。()C語言中的所有變量都不能存放地址。()指針就是地址,因此一個變量的指針就是該變量的地址。()inti,*p=&i;是正確的C說明語句。()語句int*p;*p=0;存在著潛在的危險。()語句int*p;p=0;是錯誤的。()函數(shù)調(diào)用時,若形參和實參均為地址量,則形參與實參結(jié)合的傳遞方式為雙向傳遞。()int*p3;定義了一個指針數(shù)組p,該數(shù)組含有三個元素,每個元素都是基類型為int的指針。()C語言函數(shù)的返回值只能

溫馨提示

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

評論

0/150

提交評論