【MOOC】高級語言程序設計-南京郵電大學 中國大學慕課MOOC答案_第1頁
【MOOC】高級語言程序設計-南京郵電大學 中國大學慕課MOOC答案_第2頁
【MOOC】高級語言程序設計-南京郵電大學 中國大學慕課MOOC答案_第3頁
【MOOC】高級語言程序設計-南京郵電大學 中國大學慕課MOOC答案_第4頁
【MOOC】高級語言程序設計-南京郵電大學 中國大學慕課MOOC答案_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

【MOOC】高級語言程序設計-南京郵電大學中國大學慕課MOOC答案1.1隨堂測驗1、【單選題】“程序存儲思想”是__________提出來的。本題答案:【VonNeumann】2、【單選題】如果計算機有32根地址總線,則其存儲器的最大容量可達____________。本題答案:【4GB】3、【判斷題】存儲器的容量可以通過插入內存條進行無限擴充。本題答案:【錯誤】1.3隨堂測驗1、【單選題】以下哪一種是從源程序到目標程序的翻譯方式_________。本題答案:【編譯】2、【判斷題】C語言和JAVA語言都是面向對象的程序設計語言。本題答案:【錯誤】1.4隨堂測驗1、【單選題】十進制數346所對應的八進制數為本題答案:【532】2、【判斷題】在進制轉換中,一位八進制數相當于三位二進制數,一位十六進制數相當于四位二進制數。本題答案:【正確】第一章單元測驗1、【單選題】以下哪個是馮諾伊曼的思想____________。本題答案:【程序存儲的思想】2、【單選題】關于軟件,下列說法不正確的是_____________。本題答案:【軟件就是程序】3、【單選題】以下關于源程序與目標程序的說法,不正確的是____________。本題答案:【所有高級語言的編譯器均一樣】4、【單選題】第一個結構化程序設計語言是_________________。本題答案:【PASCAL】5、【單選題】貝爾實驗室的DennisM.Ritchie于1973年用C語言重寫了__________操作系統(tǒng)。本題答案:【UNIX】6、【單選題】如果計算機有32根地址總線,其存儲器的最大存儲容量為_______________。本題答案:【4GB】7、【單選題】二進制數10101010101所對應的八進制數為________________。本題答案:【2525】8、【單選題】二進制數10101010101所對應的十六進制數為__________________。本題答案:【555】9、【單選題】可運行的C語言程序的擴展名為___________________。本題答案:【exe】10、【單選題】C程序編譯之后生成的文件名的擴展名是_________________。本題答案:【.obj】11、【填空題】C語言源程序開發(fā)的第一步為_____________。本題答案:【編輯】12、【填空題】觀察本章的“Helloworld”C程序,打印“Helloworld”用的函數為_____________。本題答案:【printf】13、【填空題】十進制數348所對應的八進制數為______________。本題答案:【534】14、【填空題】C程序的完整開發(fā)過程包括:編輯、_________、鏈接和運行。本題答案:【編譯】15、【填空題】觀察本章的“Hellowolrd”C源程序,每條語句以_______結束。本題答案:【分號##%_YZPRLFH_%##;##%_YZPRLFH_%##;】2.1隨堂測驗1、【單選題】_____可以作為正確的變量名。本題答案:【_filename】2、【填空題】C程序的執(zhí)行從_________開始。本題答案:【main##%_YZPRLFH_%##主函數##%_YZPRLFH_%##main函數】3、【填空題】一個C程序有______個主函數。本題答案:【1##%_YZPRLFH_%##一】2.2隨堂測驗1、【判斷題】sizeof是一個函數名。本題答案:【錯誤】2、【判斷題】在C語言中,對于任何一種數據類型,都要嚴格規(guī)定該類數據的存儲結構、取值范圍和能對其進行的操作。本題答案:【正確】3、【判斷題】單精度和雙精度都是實型,所以是一樣的。本題答案:【錯誤】4、【填空題】在C語言中,用關鍵字____定義單精度實型變量。本題答案:【float】2.3隨堂測驗1、【單選題】下列_____數值最大?本題答案:【120】2、【單選題】下列______是合法的實型常量?本題答案:【234.】3、【單選題】______不同于其他三個字符?本題答案:【‘a’】4、【單選題】________是C語言中合法的字符串常量?本題答案:【Howareyou?】2.4隨堂測驗1、【單選題】有變量定義如下:doublenum;要使得num的值為3.14159,則正確的輸入語句為:________。本題答案:【scanf("%lf",num);】2、【單選題】閱讀以下程序#includeintmain(){intcase;floatprintF;printf(“請輸入2個數:”);scanf(“%d%f”,case,printF);printf(“%d%f\n”,case,printF);return0;}該程序編譯時產生錯誤,其出錯原因是________。本題答案:【定義語句出錯,case不能用作用戶自定義標識符】3、【判斷題】#includestdio.hintmain(){scanf(%3d%f,x,y);printf(“%d,%f\n”,x,y);return0;}該段代碼編譯沒有錯誤,可正常運行。本題答案:【錯誤】4、【填空題】請寫出下面程序的輸出結果。#includestdio.hintmain(){charch='A'+10;printf("C=%c,C=%d,c=%c,c=%d\n",ch,ch,ch+32,ch+32);return0;}本題答案:【C=K,C=75,c=k,c=107##%_YZPRLFH_%##C=K,C=75,c=k,c=107】2.5隨堂測驗1、【單選題】C語言short型數據占2個字節(jié),則unsignedshort型數據的取值范圍是______。本題答案:【0~65535】2、【填空題】請寫出下面程序的輸出結果。#includestdio.hintmain(){shortinta=32767,b;b=a+1;printf("a=%d,b=%d\n",a,b);return0;}本題答案:【a=32767,b=-32768##%_YZPRLFH_%##a=32767,b=-32768】第二章單元測驗1、【單選題】下列不正確的轉義字符是______。本題答案:【'\68'】2、【單選題】下列不正確的常量表示是_______。本題答案:【1.2e0.5#'HelloWorld!'】3、【單選題】若函數中有定義語句:intk;,則下列說法正確的是_______。本題答案:【這時k中有值但是無意義】4、【單選題】關于C語言中數的表示,以下敘述正確的是________。本題答案:【只有整型數在允許范圍內能精確無誤地表示,實型數會有誤差】5、【單選題】C語言中,"\x5d"在內存中占用的字節(jié)數是_______。本題答案:【2】6、【單選題】C語言中,一個字符型變量在內存中占用的字節(jié)數是_______。本題答案:【1】7、【單選題】以下正確的C語言變量名是_______。本題答案:【excise_1】8、【單選題】下列選項中,正確的整型常量是________.本題答案:【0xfa#0171】9、【單選題】下列選擇中為C語言中非法常量的是_______.本題答案:【'as'】10、【單選題】下列哪個選項屬于C語言中的合法字符串常量。本題答案:【"china"】11、【單選題】#includestdio.hintmain(){doublei=3.1415926;printf("%.4f,%4.3f,%6.2f",i,i,i);return0;}本題答案:【3.1416,3.142,3.14】12、【單選題】有以下程序段charch;ch='a';printf("%c,%d",ch,ch);已知字符a的ASCll十進制代碼為97,則執(zhí)行上述程序段后輸出結果是本題答案:【a,97】13、【單選題】若有以下定義和語句,charc1=‘b’,c2=‘e’;printf("%d,%c\n",c2-c1,c2-‘a’+’A’);則輸出結果是___本題答案:【3,E】14、【填空題】語句printf(“Youare\rA\x20niceE\bboy!”);的輸出結果是______。本題答案:【Aniceboy!##%_YZPRLFH_%##Aniceboy!】15、【填空題】有scanf輸入一個double型變量時,需要使用格式轉換說明符為%。本題答案:【lf】16、【填空題】程序中定義的一個字符型變量在內存中占用___個字節(jié)。本題答案:【1】17、【填空題】C語言程序中需要進行輸入/輸出處理時,必須包含的頭文件是。本題答案:【stdio.h##%_YZPRLFH_%##】18、【填空題】C語言源程序名的后綴是_____。本題答案:【C##%_YZPRLFH_%##c##%_YZPRLFH_%##.C##%_YZPRLFH_%##.c】19、【填空題】需要從鍵盤給一個字符型變量ch輸入一個字符,使用的輸入語句是:ch=();。本題答案:【getchar##%_YZPRLFH_%##getch】20、【填空題】使用標準輸出函數輸出一個double型的變量x,要求輸出數值占6列,即6個數字位,并保留2位小數位,則輸出語句為printf(%_____f,x);。如:x=123.4567,要求輸出在屏幕上為123.46;x=3.45678,則輸出為□□3.46;□表示空格。本題答案:【6.2l##%_YZPRLFH_%##6.2l##%_YZPRLFH_%##6.2##%_YZPRLFH_%##6.2】3.1隨堂測驗1、【判斷題】單目運算符的優(yōu)先級高于雙目算術運算符。本題答案:【正確】2、【判斷題】數值368不是一個合法的C語言表達式。本題答案:【錯誤】3.2隨堂測驗1、【單選題】下列運算符號的結合性是從右往左的是______。本題答案:【?:】2、【判斷題】運算符“()”的優(yōu)先級高于運算符“++”本題答案:【正確】3.3隨堂測驗1、【單選題】以下運算符中優(yōu)先級最低的是_______。本題答案:【逗號運算符】2、【單選題】設m,n,a,b,c,d均為0,執(zhí)行(m=a==b)||(n=c==d)后,m、n的值是。本題答案:【1,0】3、【單選題】設floatm=4.0,n=4.0;使m為10.0的表達式是____。本題答案:【m+=n+2】4、【填空題】設有語句:inta=7;floatx=2.5,y=4.7;則表達式x+a%3*(int)(x+y)%2/4的值是_______。本題答案:【2.5##%_YZPRLFH_%##2.500000】5、【填空題】定義intx,y;執(zhí)行y=(x=1,++x,x+2);語句后,y=________。本題答案:【4】3.4隨堂測驗1、【單選題】以下結果為整數的表達式(設有inti;charc;floatf;)____。本題答案:【i*c】2、【填空題】a+b%3*(int)(a-b)/4(設doublea=13.6;intb=8)結果為:本題答案:【15.600000##%_YZPRLFH_%##15.6】3.5隨堂測驗1、【單選題】設a=2,b=3;則表達式a^b2的值是____.本題答案:【00000010】2、【單選題】變量a中的數據用二進制表示的形式是01011101,變量b中的數據用二進制表示的形式是11110000。若要求將a的高4位取反,低4位不變,所要執(zhí)行的運算是_______。本題答案:【a^b】第三章編程第三章單元測驗1、【單選題】sizeof是一個_____。本題答案:【運算符】2、【單選題】有以下變量定義:intk=9,x=14;,則執(zhí)行語句k=(x%=k)-(k%=4)后,k的值為_____。本題答案:【4】3、【單選題】判斷char型變量c1是否為大寫字母的正確表達式是_____。本題答案:【(c1='A')(c1='Z')#('A'=c1)('Z'=c1)】4、【單選題】設doublem=4.0,n=4.0;使m為10.0的表達式是____。本題答案:【m+=n+2】5、【單選題】設變量均已正確定義并且賦值,以下與其他三組輸出結果不同的一組語句是_______。本題答案:【n=x++;printf(“%d\n”,n);】6、【單選題】若有變量定義:doublex=4.5,y=2.5;則表達式(x+y)/2+(int)x%(int)y結果為_____。本題答案:【3.5】7、【單選題】定義intx,y;執(zhí)行y=(x=1,++x,x+2);語句后,x=_____,y=_____。本題答案:【24】8、【單選題】表達式13/4*sqrt(6.25)/8值的數據類型為__________。本題答案:【double】9、【單選題】在以下的運算符中,運算對象都必須是整型數的是。本題答案:【%】10、【單選題】設x是double型變量,則能將x的值四舍五入保留到小數點后兩位的表達式是。本題答案:【(int)(x*100+0.5)/100.0】11、【單選題】若有定義:inta=1,b=1,c,d;,則語句c=(a++)+(++b);執(zhí)行后a=________;b=_________,c=_________。本題答案:【223】12、【單選題】將計算半周長的數學公式:寫成如下各種形式,已知a、b、c均為整型變量,不正確的是________。本題答案:【x=1/2*(a+b+c)#x=(float)((a+b+c)/2)】13、【單選題】設有語句:inta=3,b=5,m;則執(zhí)行語句:m=a=3a+b8后,m的值為_____。本題答案:【0】14、【單選題】需要將一個三位數字的整型數x中的十分位數字b2(如368中的6)提取出來,下列C語句________不能實現(xiàn)。本題答案:【b2=x%10/10】15、【單選題】請將三角形面積公式:寫成合法的C語言表達式_______。本題答案:【sqrt(s*(s-a)*(s-b)*(s-c))】16、【單選題】設已定義字符型變量ch,執(zhí)行語句:ch=’D’+32-3;后ch的值為__________。本題答案:【a】17、【單選題】在C語言的賦值表達式中,賦值符號左邊必須是已經定義過的_________。本題答案:【變量#變量名】18、【填空題】設有語句:inta=7;floatx=2.5,y=4.7;,則表達式x+a%3*(int)(x+y)%2/4的值是。(小數點后面保留一位)本題答案:【2.5】19、【填空題】若有intx=1,y=1,表達式(!x||y--)的值等于。本題答案:【1】20、【填空題】若有intn=2;執(zhí)行語句:n+=n-=n*n后,n=。本題答案:【-4】21、【填空題】若有intn=2;執(zhí)行語句:n+=n-=n*=n后,n=。本題答案:【0】22、【填空題】設有語句:inta=3,b=5,m;則執(zhí)行語句:(m=a=3)a+b8后,m的值為___。本題答案:【1】4.1隨堂測驗1、【單選題】C語言的語句分為____類本題答案:【5】2、【單選題】用流程圖描述一個只有順序結構而沒有選擇結構和循環(huán)結構的算法時,一定用不到的流程圖框型是______。?本題答案:【判斷框】3、【多選題】下列可以控制循環(huán)結構的控制語句是:______本題答案:【for語句#while語句#do...while語句】4.2隨堂測驗1、【單選題】下列可能出現(xiàn)在順序結構程序中的控制語句是__________本題答案:【return語句】2、【判斷題】可以將例4.1中的兩條語句:area=sqrt(p*(p-edge1)*(p-edge2)*(p-edge3));printf(area=%lf\n,area);合并為一條語句:printf(area=%lf\n,sqrt(p*(p-edge1)*(p-edge2)*(p-edge3)));同時刪除area變量的定義。本題答案:【正確】4.3隨堂測驗1、【單選題】以下關于單分支if和雙分支if的描述中不正確的是_____________.本題答案:【單分支if和雙分支if在if后的條件不滿足時都不執(zhí)行任何語句】2、【單選題】下列四段代碼,哪一段的執(zhí)行效果與其他三種不同__________.本題答案:【y=1;if(x==0)y=0;elsey=-1;】3、【單選題】關于嵌套if語句與switch語句的關系描述中不正確的是__________.本題答案:【二者的適用范圍完全相同】4、【單選題】關于switch語句的描述中不正確的是__________.本題答案:【default分支必須要有,用于處理swith后的表達式結果與所有常量均不相等時的情況】4.4隨堂測驗1、【單選題】C語言中while和do-while循環(huán)的主要區(qū)別是__。本題答案:【do-while的循環(huán)體至少無條件執(zhí)行一次而while的循環(huán)體可能一次也不執(zhí)行】2、【單選題】以下程序段__。x=-1;do{x=x*x;}while(!x);本題答案:【循環(huán)體執(zhí)行一次】3、【單選題】若k是int類型變量,有以下for語句:for(k=-1;k=1;k++)printf(*****\n);下面關于語句執(zhí)行情況的敘述中正確的是________。本題答案:【死循環(huán)】4、【單選題】假設程序中已有定義:ints=0,i;下列哪一段代碼無法正確實現(xiàn)求1到10的和______。本題答案:【i=1;do{s+=++i;}while(i=10);】4.5隨堂測驗1、【單選題】下面程序段中,循環(huán)語句的循環(huán)次數是______。intx=0;while(x6){if(x%2)continue;if(x==4)break;x++;}本題答案:【死循環(huán)】2、【判斷題】設有變量定義:inti;下列兩段代碼的執(zhí)行效果完全相同。第一段代碼:for(i=1;i=5;i++){if(i%2)printf(*);elsecontinue;printf(#);}第二段代碼:for(i=1;i=5;i++)if(i%2){printf(*);printf(#);}本題答案:【正確】4.6隨堂測驗1、【單選題】有語句定義:intx,y;,則程序段中“{…循環(huán)體….}”的執(zhí)行次數是。for(i=5;i;i--)for(j=0;j4;j++){…循環(huán)體….}本題答案:【20】2、【判斷題】打印一個規(guī)則圖形需要用到兩層循環(huán),外層控制行變化,第一層的循環(huán)體內最多需要完成三個功能:處理前導空格(可能要用到內層循環(huán))、打印本行圖形(可能要用到內層循環(huán))、換行。本題答案:【正確】第四章編程第四章單元測驗1、【單選題】下列程序段執(zhí)行后,m的值為______。inta=0,b=20,c=40,m=60;if(a)m=a;elseif(b)m=b;elseif(c)m=c;本題答案:【20】2、【單選題】已有定義“intx=0,y=3;”,對于下面if語句,說法正確的是______。if(x=y)printf(“X與Y相等\n”);本題答案:【輸出:X與Y相等,且執(zhí)行完后x等于y】3、【單選題】關于switch語句,下列說法中不正確的是______。本題答案:【case語句必須以break結束】4、【單選題】下面程序段的運行結果是______。inta,b=0;for(a=0;a++=2;);b+=a;printf(%d,%d\n,a,b);本題答案:【4,4】5、【單選題】下面程序段中,循環(huán)語句的循環(huán)次數是______。intx=0;while(x6){if(x%2)continue;if(x==4)break;x++;}本題答案:【死循環(huán)】6、【單選題】若變量已正確定義,有以下程序段:inta=3,b=5,c=7;if(ab)a=b;c=a;if(c!=a)c=b;printf(%d,%d,%d\n,a,b,c);其輸出結果是________。本題答案:【3,5,3】7、【單選題】下列錯誤的語句是__。本題答案:【if(a);a++;elsea--;】8、【單選題】下列__循環(huán)不是無限循環(huán)。本題答案:【for(y=1,x=1;x=++y;x++);】9、【單選題】若a、b已定義為int類型的變量,則執(zhí)行以下語句后b的值是__。a=1;b=10;do{b-=a;a++;}while(b--0);本題答案:【8】10、【單選題】設所有的變量均為整型,下列循環(huán)執(zhí)行結束后,變量m的值為__。for(i='a';i='e';i++){m=1;for(j=5;j=0;j--)m+=(i-100)*j;}本題答案:【16】11、【單選題】有下列程序段:inti,sum=0;for(i=1;;sum++){if(sum10)break;sum+=++i;}該程序段執(zhí)行結束后,sum和i的值分別是______本題答案:【12,4】12、【單選題】要求讀入一個整數n,其值的范圍是[1,10],即:n大于等于1,同時小于等于10.如果輸入的n不在這個有效范圍,則重新輸入,直到滿足范圍規(guī)定為止。則可以用do...while語句控制。intn;do{scanf(%d,n);}while(________________________);下列哪一個條件填入后無法正確控制?本題答案:【n=1||n=10】13、【單選題】有以下程序段,while循環(huán)的循環(huán)體執(zhí)行的次數是。intk=0;while(k!=1)k++;本題答案:【1次】14、【單選題】下列程序段執(zhí)行結束后,k的值為______inti,j,k=0;for(i=1;i=3;i++)for(j=1;j=i;j++)k+=i*j;本題答案:【25】15、【單選題】有如下程序段:intx;scanf(%d,x);switch(x){case9:x++;break;case10:x++;case11:x++;break;default:x++;}如果最初輸入的x的值為10,則switch語句結束后x的值為________,本題答案:【12】16、【填空題】#includestdio.hintmain(){intx=1,y=1,z=1;switch(x){case1:switch(y){case1:printf(!!);break;case2:printf(@@);break;case3:printf(##);break;}case0:switch(z){case0:printf($$);case1:printf(^^);case2:printf();}default:printf(**);}return0;}該程序的運行結果是________(提示:輸出的各字符之間沒有空格,在英文半角輸入狀態(tài)下輸入的字符有效)本題答案:【!!^^&&**##%_YZPRLFH_%##!!^^&&**】17、【填空題】#includestdio.hintmain(){intm=0,n=4521;do{m=m*10+n%10;n/=10;}while(n);printf(%d\n,m);return0;}該程序的運行結果是________本題答案:【1254##%_YZPRLFH_%##1254】18、【填空題】#includestdio.hintmain(){intx,y=0,z=0;for(x=1;x=5;x++){y=y+x;z=z+y;}printf(%d\n,z);return0;}該程序的運行結果是________本題答案:【35】19、【填空題】#includestdio.hintmain(){inta=1,b=2;for(;a8;a++){a+=2;if(a==6)continue;if(a7)break;b++;}printf(%d,%d\n,a,b);return0;}該程序的運行結果是________本題答案:【9,3##%_YZPRLFH_%##9,3】20、【填空題】#includestdio.hintmain(){intx=5,y=4,z=3;if(xyz)printf(right);elseprintf(wrong);return0;}該程序的運行結果是________本題答案:【wrong##%_YZPRLFH_%##wrong】21、【填空題】循環(huán)的終止一般是在while后的表達式或for語句的表達式2的值為假的時候不再進入循環(huán)體,如果希望從循環(huán)體中直接退出循環(huán),則可以通過在循環(huán)體內使用_____語句實現(xiàn)。本題答案:【break##%_YZPRLFH_%##break】22、【填空題】switch語句中的______分支是可選項,表示switch后的表達式與任何case后的常量都不相等時執(zhí)行此分支。本題答案:【default##%_YZPRLFH_%##default】5.1隨堂測驗1、【單選題】在C語言中,模塊化程序設計中的子模塊通常是指??。本題答案:【函數】2、【填空題】C程序的函數主要分為庫函數和??函數。本題答案:【自定義##%_YZPRLFH_%##用戶自定義】5.2隨堂測驗1、【單選題】以下不是函數首部的三要素。本題答案:【函數體】2、【單選題】函數的返回值類型由________決定。本題答案:【定義函數時指定的返回值類型】3、【判斷題】函數聲明的作用是把函數的首部信息通知編譯系統(tǒng),以便在調用該函數時進行對照檢查。本題答案:【正確】5.3隨堂測驗1、【單選題】若有函數原型:doublef(int,double);主函數中有變量定義:intx=1;doublem=1.6,n;下列主函數中對f函數的調用錯誤的是。本題答案:【n=f(x);】2、【單選題】若主函數有變量定義:intx=1;doubley=2.3;且有合法的函數調用語句f(y,x);則下列關于函數f的原型聲明中一定錯誤的是。本題答案:【voidf(double,int,int);】3、【單選題】以下程序的運行結果是。#includestdio.hintMin(intx,inty){returnxy?x:y;}intmain(){intx=13,y=5,z=22;printf(%d\n,Min(x,Min(y,z)));return0;}本題答案:【5】5.4隨堂測驗1、【單選題】下面關于函數的理解,不正確的是。本題答案:【函數可以嵌套定義?】2、【判斷題】在C語言中,一個函數可以直接或間接地調用自己。本題答案:【正確】5.5隨堂測驗1、【單選題】下面哪一種變量一定不是局部變量?。?本題答案:【外部變量】2、【單選題】下面關于靜態(tài)局部變量的描述,不正確的是。本題答案:【靜態(tài)局部變量作用域為整個程序】3、【單選題】關于同名問題,下列哪一種理解不正確。本題答案:【形式參數可以與函數體內的局部變量同名】4、【單選題】關于作用域的描述,下列哪一種說法是正確的。本題答案:【形式參數的作用域一定是它所在的整個函數】5.6隨堂測驗1、【判斷題】模塊化程序設計的基本思想是自底向上、不斷組合。本題答案:【錯誤】2、【填空題】C語言程序的基本單位是??。本題答案:【函數】第五章編程第五章單元測驗1、【單選題】函數的返回值類型由________決定。本題答案:【定義函數時指定的返回值類型】2、【單選題】以下選項中敘述錯誤的是________。本題答案:【C程序函數中定義的賦有初值的靜態(tài)變量,每調用一次函數,賦一次初值】3、【單選題】對于C語言的函數,下列敘述中正確的是________。本題答案:【函數的定義不能嵌套,但函數調用可以嵌套】4、【單選題】以下函數調用語句中含有________個實參。func((exp1,exp2),(exp3,exp4,exp5));本題答案:【2】5、【單選題】若主函數有變量定義:intx=1;doublem=2.3;且有合法的函數調用語句f(m,x);則下列關于函數f的原型聲明中一定錯誤的是。本題答案:【voidf(double,int,int);】6、【單選題】關于return語句的理解,下列哪一種說法是錯誤的。本題答案:【return后的表達式若與函數返回類型不一致時,一定會在編譯時出錯】7、【單選題】有以下程序intfun(intx,inty){return(x+y);}intmain(){inta=1,b=2,c=3,sum;sum=fun((a++,b++,a+b),c++);printf(%d\n,sum);return0;}執(zhí)行后的輸出結果是________。本題答案:【8】8、【單選題】若已定義一個返回值為void型的函數,則調用該函數的敘述中正確的是________。本題答案:【函數調用只能作為獨立的函數調用語句存在】9、【單選題】設有下列程序段:staticcharb=2;voidY(){staticfloatd=4;.......}inta=1;voidX(){intc=3;......}關于程序段中各變量的屬性,以下敘述中錯誤的是________。本題答案:【d是靜態(tài)變量,函數X和函數Y都可以訪問】10、【單選題】關于同名問題,下列哪一種理解不正確。本題答案:【形式參數可以與函數體內的局部變量同名】11、【單選題】在調用函數時,如果實參是簡單變量,它與對應形參之間的數據傳遞方式是?。本題答案:【單向值傳遞】12、【單選題】若函數定義時不指明函數類型,則其默認的返回值類型是?。本題答案:【int】13、【單選題】以下存儲類型在變量未賦值的情況下,系統(tǒng)自動初始化為0。本題答案:【static】14、【單選題】以下敘述中正確的是。本題答案:【調用函數時,函數名必須與被調用函數定義時的函數名完全一致】15、【單選題】下面關于靜態(tài)局部變量的描述,不正確的是______。本題答案:【靜態(tài)局部變量全局可見】16、【填空題】C語言程序的基本單位是。本題答案:【函數】17、【填空題】一個函數的完整定義由函數首部和組成。本題答案:【函數體】18、【填空題】在調用函數時,如果實參是簡單變量,它與對應形參之間的數據傳遞方式是________(傳值或傳地址這兩種之間選填一個)。本題答案:【傳值】19、【填空題】若函數定義時不指明函數類型,則其默認的返回值類型是________。(用表達類型的關鍵字來描述)本題答案:【int】20、【填空題】定義靜態(tài)局部變量的關鍵字是。本題答案:【static】21、【填空題】每一個C語言源程序必須有一個__________函數。本題答案:【主##%_YZPRLFH_%##main】22、【填空題】C語言中,表示函數返回的關鍵字是?。本題答案:【return】23、【填空題】按作用域變量可分為兩類,分別是局部變量和??變量。本題答案:【全局】6.1隨堂測驗1、【單選題】若有說明:inta[10];則對a數組元素的正確引用是________。本題答案:【a[10-10]】2、【單選題】C語言中,數組名代表________。本題答案:【數組首地址】3、【單選題】以下不能對二維數組a進行正確初始化的語句是________。本題答案:【inta[2][3]={{l,2},{3,4},{5,6}};】4、【單選題】若有以下說明:intarray[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc=’a’,d,g;則數值為4的表達式是__。本題答案:【array['d'-c]】6.2隨堂測驗1、【單選題】以下程序編譯運行后輸出。#includestdio.hdoubleF(intx){return(3.14*x*x);}intmain(){inta[3]={1,2,3};printf(%5.2f\n,F(a[1]));return0;}本題答案:【12.56】2、【單選題】以下程序運行后的輸出結果是。#includestdio.h#defineN20voidfun(inta[],intn,intm){inti,j;for(i=m;i=n;i--)a[i+1]=a[i];}intmain(){inti,a[N]={1,2,3,4,5,6,7,8,9,10};fun(a,2,9);for(i=0;i5;i++)printf(%d,a[i]);return0;}本題答案:【12334】6.3隨堂測試1、【單選題】以下定義數組的語句中錯誤是的。本題答案:【intnum[2][4]={{1,2},{3,4},{5,6}};】2、【單選題】以下對二維數組a的說明正確的是。本題答案:【doublea[1][4];】3、【單選題】以下對二維數組a進行正確初始化的語句是。本題答案:【inta[][3]={{1,0,1},{5,2,3}};】6.4隨堂測驗1、【填空題】以下程序的運行結果是:。#includestdio.h#defineN4voidfun(inta[][N],intb[]){inti;for(i=0;iN;i++)b[i]=a[i][i]-a[i][N-1-i];}intmain(){intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;fun(x,y);for(i=0;iN;i++)printf(%d,,y[i]);printf(\n);return0;}本題答案:【-3,-1,1,3,】2、【填空題】以下程序的運行結果是:。#includestdio.hintmain(){inta[4][4]={{1,4,3,2},{8,5,6,7},{4,9,2,1},{3,2,5,1}},i,j,k,t;for(i=0;i4;i++)for(j=0;j3;j++)for(k=j+1;k4;k++)if(a[j][i]a[k][i]){t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}for(i=0;i4;i++)printf(%d,,a[i][i]);return0;}本題答案:【1,4,5,7,】6.5隨堂測驗1、【單選題】以下程序段的作用是:。inta[]={4,0,2,3,1},i,j,t;for(i=1;i5;i++){t=a[i];j=i-1;while(j=0ta[j]){a[j+1]=a[j];j--;}a[j+1]=t;}本題答案:【對數組a進行插入排序(降序)】2、【填空題】若輸入52CR,則下面程序的運行結果是。#includestdio.hintmain(){inta[8]={6,12,18,42,46,52,67,73};intlow=0,mid,high=7,x;printf("Inputx:");scanf("%d",x);while(low=high){mid=(low+high)/2;if(xa[mid])low=mid+1;elseif(xa[mid])high=mid-1;elsebreak;}if(low=high)printf("%d\n",mid);elseprintf("error!\n");return0;}本題答案:【5】3、【填空題】以下程序的運行結果為。#includestdio.hvoidfun(inta[],intn){intt,i,j;for(i=0;in-1;i++)for(j=0;jn-i-1;j++)if(a[j]a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}}intmain(){intc[10]={1,2,3,4,5,6,7,8,9,0},i;fun(c,5);for(i=0;i10;i++)printf(%d,,c[i]);printf(\n);return0;}本題答案:【5,4,3,2,1,6,7,8,9,0,##%_YZPRLFH_%##5,4,3,2,1,6,7,8,9,0##%_YZPRLFH_%##5,4,3,2,1,6,7,8,9,0,##%_YZPRLFH_%##5,4,3,2,1,6,7,8,9,0】第六章編程第六章單元測驗1、【單選題】在C語言中,引用數組元素時,其數組下標的數據類型不允許的是________。本題答案:【實型數】2、【單選題】shortint類型變量占用兩個字節(jié),有如下定義:shortintarray[10]={0,2,4};,則數組array在內存中所占字節(jié)數是________。本題答案:【20】3、【單選題】若有說明:inta[3][4];則對a數組元素的非法引用是________。本題答案:【a[0][4]】4、【單選題】下面程序中有錯誤的行是(每行程序前面的數字表示行號)________。1intmain()2{inta[3]={1};3inti;4scanf(%d,a);5for(i=1;i=3;i++)a[0]=a[0]+a[i];6printf(a[0]=%d\n,a[0]);7return0;8}本題答案:【5】5、【單選題】以下程序給數組所有元素輸入數據,填入能完成該功能。#includestdio.hintmain(){intarray[5],i=0;while(i5)scanf(%d,___);return0;}本題答案:【array[i++]】6、【單選題】若定義inta[][4]={1,2,3,4,5,6,7,8};a[1][0]的值是。本題答案:【5】7、【單選題】以下錯誤的定義語句是。本題答案:【intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};】8、【單選題】以下程序的輸出結果是。#includestdio.hintmain(){intn[2]={0},i,j,k=2;for(i=0;ik;i++)for(j=0;jk;j++)n[j]=n[i]+1;printf(%d\n,n[k-1]);return0;}本題答案:【3】9、【單選題】下列正確的一維數組初始化是。本題答案:【inta[5]={1,2};】10、【單選題】若定義intm[10]={9,4,12,8,2,10,7,5,1,3};則m[m[4]+m[8]]的值是。本題答案:【8】11、【單選題】在C語言中,數組名代表。本題答案:【數組首地址】12、【單選題】若有說明:inta[10];則對a數組元素的正確引用是。本題答案:【a[0]】13、【單選題】下面程序如果只有一個錯誤,是有錯。intmain()//1{doublea[3]={0};//2inti;//3for(i=0;i3;i++)scanf(%d,a[i]);//4for(i=1;i3;i++)a[0]=a[0]+a[i];//5printf(%f\n,a[0]);//6return0;//7}//8本題答案:【第4行】14、【單選題】若有說明:inta[][4]={0};則下面敘述正確的是。本題答案:【數組a中每個元素都可得到初值0】15、【單選題】若有定義intb[5][7];根據數組存儲順序,b[0][0]為第1個元素,則第10個元素是。本題答案:【b[1][2]】16、【填空題】當輸入a回車bc回車def回車時,下面程序輸出的第三行是。#includestdio.hintmain(){charX[6];inti;for(i=0;i6;i++)X[i]=getchar();for(i=0;i6;i++)putchar(X[i]);return0;}本題答案:【d】17、【填空題】如下程序執(zhí)行后輸出。#includestdio.hintmain(){staticinta[3][3];inti,j;for(i=0;i3;i++)for(j=0;j3;j++)a[i][j]=a[j][i]+i*j;printf(%d,%d,a[1][2],a[2][1]);return0;}本題答案:【2,4】18、【填空題】寫出程序的運行結果。#includestdio.hintfun(ints[],intt[]){inti,j=0;for(i=0;i10;i++)if(i%2){t[j]=s[i];j++;}returnj;}intmain(){intX[10]={1,2,3,4,5,6,7,8,9,10};intY[10];intm,i;m=fun(X,Y);for(i=0;im;i++)printf(%d,Y[i]);printf(\n);return0;}本題答案:【246810】19、【填空題】寫出程序的運行結果的第二行輸出:。#includestdio.hintmain(){intX[4][4]={{11,2,31,14},{5,16,7,4},{18,9,6,10},{17,1,3,12}};inti,j,k,t;for(i=0;i4;i++)for(j=0;j4;j++)for(k=j+1;k4;k++){if(X[i][j]X[i][k]){t=X[i][j];X[i][j]=X[i][k];X[i][k]=t;}}for(i=0;i4;i++){for(j=0;j4;j++)printf(%d,X[i][j]);printf(\n);}return0;}本題答案:【45716】20、【填空題】有以下C程序程序運行后的輸出結果是。#includestdio.h#defineN20voidfun(inta[],intn,intm){inti,j;for(i=m;i=n;i--)a[i+1]=a[i];}intmain(){inti,a[N]={1,2,3,4,5,6,7,8,9,10};fun(a,2,9);for(i=0;i5;i++)printf(%d,a[i]);return0;}本題答案:【12334】21、【填空題】若有定義inta[3][5],則sizeof(a)的值是。本題答案:【60】22、【填空題】若有定義inta[3][5],則sizeof(a[0][0])的值是。本題答案:【4】23、【填空題】下列程序的輸出結果是。#includestdio.hvoidfun(intp[]){printf(%d\n,p[5]);}intmain(){inta[10]={1,2,3,4,5,6,7,8,9,10};fun(a[3]);return0;}本題答案:【9】7.1隨堂測驗1、【單選題】有變量定義:int*p,q;表示定義了______本題答案:【指針變量p和整型變量q】2、【單選題】設變量定義為intx,*p=x;,則*p相當于________。本題答案:【x】3、【單選題】已有定義intk=2,m=3;int*ptr1=k,*ptr2=m;,下面不能正確執(zhí)行的賦值語句是__本題答案:【ptr2=k;】7.2隨堂測驗1、【單選題】若有定義及賦值:inta[10]={0,1,2,3,4,5,6,7,8,9},*p;p=a+1;,則不能表示數組a中元素值為4的那個元素地址的表達式是______。本題答案:【p+4】2、【單選題】若有說明inta[5][4];,則對a數組的i行j列(假設i,j已正確說明)元素值的引用正確的是______(說明:0行0列元素為a[0][0])。本題答案:【*(*(a+i)+j)】3、【單選題】若有以下定義和語句:inta[2][3],(*p)[3]=a;則對a數組元素地址的正確引用為______。本題答案:【p[1]+1】4、【單選題】若有定義:int*p[4];,則標識符p______。本題答案:【是一個指針數組名】7.3隨堂測驗1、【單選題】有函數原型聲明:voidf(int*);主函數中有變量定義:inta,b[3],*p=a;下列函數調用語句錯誤的是_______本題答案:【f(a);】2、【單選題】想要通過一個指針形參改變對應實參變量的值,在寫程序的時候需要符合幾個條件,下列哪一個條件是錯誤的_______本題答案:【在函數體中對指針形參本身進行修改】3、【單選題】函數中用指針形參接受數組實參,其優(yōu)點不包括下列哪一條______本題答案:【書寫代碼簡單】4、【判斷題】如果一個函數想“返回”3個整數值,前兩個參數是需要提供的原始數據,則函數原型可以寫成:intf(int,int,int*,int*);本題答案:【正確】7.4隨t堂測驗1、【單選題】關于選擇法排序(由小到大排序),以下說法不正確的是________本題答案:【每一趟排序時是比較相鄰元素的大小】2、【單選題】有變量定義:inta[10],s;有函數調用語句s=f(a,10);則以下的函數原型聲明中錯誤的是____________本題答案:【intf(inta,intn);】3、【判斷題】矩陣用二維數組來描述,以矩陣形式輸出二維數組所有元素時,printf(\n);語句應該放在二層循環(huán)外、一層循環(huán)體內。本題答案:【正確】7.5隨堂測驗1、【單選題】如下定義:inta[3]={5,7,18},b=3;constint*p=a+1;,下列語句錯誤的是______。本題答案:【*p=2;】2、【單選題】有變量定義如下:inta=10,*p=a,**q=p;下列哪一個選項不能表示10______。本題答案:【*q】3、【單選題】有變量定義如下:int*p;通過p指針申請動態(tài)空間的語句中表達錯誤的是________本題答案:【p=(int*)calloc(10*sizeof(int));】4、【判斷題】int(*pf)(intx);與int*pf(intx);是不一樣的,前者是定義了一個函數指針pf,后者是聲明了一個返回值類型為int*的函數。本題答案:【正確】第七章編程第七章單元測驗1、【單選題】如有定義inta,*p=a;輸入語句為scanf(%d,_________);或者scanf(%d,_________);輸出為printf(%d,________);或者printf(%d,________)。本題答案:【a,p,a,*p】2、【單選題】設int*p,x,a[5]={1,2,3,4,5};p=a;能使x的值為2的語句是。本題答案:【x=*(a+1);】3、【單選題】下列對指針p的操作,正確的是。本題答案:【inta,*p=a;*p=2;】4、【單選題】若有說明:inta[]={15,12,-9,28,5,3},*p=a,則下列哪一種表達錯誤______。本題答案:【*(a=a+3)】5、【單選題】若有說明:int*p1,*p2,m=5,n;以下均是正確賦值語句的選項是________。本題答案:【p1=m;p2=p1;】6、【單選題】若定義intm[10]={9,4,12,8,2,10,7,5,1,3},*p=m;下列哪一個表達式的結果與其他3個表達式的結果不同________。本題答案:【sizeof(m)】7、【單選題】設有定義:doublex[10],*p=x;,以下能給數組x下標為6的元素讀入數據的正確語句是________。本題答案:【scanf(%lf,p+6);】8、【單選題】若有定義及賦值:inta[10]={0,1,2,3,4,5,6,7,8,9},*p;p=a+1;則引用數組a中值是5的元素的表達式是________。本題答案:【*(p+4)】9、【單選題】設intx[]={1,2,3,4,5,6},*p=x;則值為3的表達式是________。本題答案:【p+=2;*p++;】10、【單選題】設有下面的程序段:intarr[10]={1,2,3},*p=arr;下列敘述正確的是________本題答案:【*(p+4)與arr[4]相等】11、【單選題】有定義,inta[2][3],(*p)[3];p=a;對a中數組元素值的正確引用是本題答案:【*(*(p+1)+2)】12、【單選題】設有語句inta[2][3],下面哪一種不能表示元素a[i][j]________本題答案:【*(a+i*3+j)】13、【單選題】若有定義:int*p[4];,則標識符p______本題答案:【是一個指針數組名】14、【單選題】有變量定義如下:inta=10,*p=a,**q=p;下列哪一個選項不能表示10______。本題答案:【*q】15、【單選題】有變量定義如下:int*p;通過p指針申請動態(tài)空間的語句中表達錯誤的是________本題答案:【p=(int*)calloc(10*sizeof(int));?】16、【填空題】#includestdio.hvoidsub(intx,inty,int*z){*z=y-x;}intmain(){inta,b,c;sub(10,5,a);sub(7,a,b);sub(a,b,c);printf(%d,%d,%d\n,a,b,c);return0;}該程序的輸出結果為_________________本題答案:【-5,-12,-7】17、【填空題】#includestdio.hvoidfun(intx,int*y){x+=*y;*y+=x;}intmain(){intx=5,y=10;fun(x,y);fun(y,x);printf(%d,%d,x,y);return0;}該程序的輸出結果為_________________本題答案:【35,25】18、【填空題】#includestdio.hintmain(){intarr[10]={2,3,-9,5,7,0,4,-1,6,-7},*p;intsum=0;for(p=arr[3];parr+10;)sum+=*p++;printf(%d,sum);return0;}該程序的輸出結果為_________________本題答案:【14】19、【填空題】#includestdio.hintmain(){intj,a[]={1,3,5,7,9,11,13,15},*p=a+5;for(j=3;j;j--)switch(j){case1:case2:printf(%d,,*p++);break;case3:printf(%d,,*(--p));}return0;}該程序的輸出結果為_________________本題答案:【9,9,11,】20、【填空題】#includestdio.h#defineN5intfun(int*s,inta,intn){intj;*s=a;j=n;while(a!=s[j])j--;returnj;}intmain(){ints[N+1];intk;for(k=1;k=N;k++)s[k]=k+1;printf(%d\n,fun(s,4,N));return0;}該程序的輸出結果為_________________本題答案:【3】21、【填空題】對n個元素的一維數組進行選擇法排序,需要進行______趟排序.(答案中間不要加空格,避免格式錯誤)本題答案:【n-1##%_YZPRLFH_%##N-1##%_YZPRLFH_%##n##%_YZPRLFH_%##N】22、【填空題】有定義:inta[5]={0,1,2,3,4},*p=a;為了表達元素值為2的元素,除了可以用a[2]表示以外,還可以有___種等效的表示方法?(答案只填寫一個阿拉伯數字)本題答案:【3】8.1隨堂測驗1、【單選題】以下字符串定義錯誤的是___________。本題答案:【chars[7]=Teacher;】2、【判斷題】C語言中的字符串就是字符數組。本題答案:【錯誤】3、【判斷題】C語言中,字符串所占內存空間就是字符串有效字符的個數。本題答案:【錯誤】8.2隨堂測驗1、【單選題】strlen(a\012b\xab\\bcd\n)的值為本題答案:【9】2、【單選題】下面判斷字符串str1是否大于str2,正確的表達式是___________。本題答案:【if(strcmp(str1,str2)0)】3、【判斷題】使用gets函數可以同時輸入多個字符串本題答案:【錯誤】4、【判斷題】采用printf函數輸出字符串的格式符為%s。本題答案:【正確】5、【判斷題】C語言中的strlen函數是用來統(tǒng)計字符串所占內存空間的大小。本題答案:【錯誤】第八章編程第八章單元測驗1、【單選題】下列程序段運行后,i的正確結果為____________。inti=0;char*s=a\041#041\\b;while(*s++)i++;本題答案:【8】2、【單選題】以下不能正確進行字符串初始化的語句是________________。本題答案:【charstr[5]=good!;】3、【單選題】下面判斷字符串s1是否大于s2,正確的表達式是___________。本題答案:【if(strcmp(s1,s2)0)】4、【單選題】strlen(b\013c\xac\\abc\n)的值為_____________________。本題答案:【9】5、【單選題】假設已定義chara[10];char*p;下面的賦值語句中,正確的是____________________。本題答案:【p=a;】6、【單選題】假設已定義charch[20],*str=ch;下列哪條語句不正確_______________________。本題答案:【ch=teacher;】7、【單選題】以下程序的輸出結果為_______________。#includestdio.hintmain(){charb[]=Hello,you!;b[5]=0;printf(%s\n,b);return0;}本題答案:【Hello】8、【單選題】下面程序段的運行結果是______________________。#includestdio.hintmain(){chars[]=123,t[]=abcd;if(*s*t)printf(%s\n,s);elseprintf(%s\n,t);return0;}本題答案:【abcd】9、【單選題】下面字符串處理函數中哪一個需要兩個參數?本題答案:【strcpy】10、【單選題】下面判斷兩個字符串是否相等的表達式正確的是_______________。本題答案:【if(strcmp(s1,s2)==0)】11、【單選題】有程序段:char*p=abcdefghijklmnopq;while(*p++!='e');printf(%c\n,*p);輸出結果為_______________。本題答案:【f】12、【單選題】函數調用strcat(strcpy(str1,str2),str3)的功能是___________。本題答案:【將串str2復制到串str1之中,然后再將str3連接到串str1之后】13、【單選題】已知char*str,**s=str;正確的語句是______________。本題答案:【*s=computer;】14、【單選題】已知chars[20]=programming,*ps=s;則值不為字母o的表達式是____________。本題答案:【ps+2】15、【單選題】有以下語句,正確的描述是______________。charx[]=12345;chary[]={'1','2','3','4','5'};本題答案:【x數組的長度大于y數組的長度】16、【填空題】C語言中,將兩個字符串進行連接的函數為_____________(只寫函數名即可)。本題答案:【strcat】17、【填空題】strlen(ab\022\x12\\ab\a)的值為_______________。本題答案:【8】18、【填空題】采用gets輸入字符串并保存在字符數組s1中的C語句為___________________。本題答案:【gets(s1);】19、【填空題】有程序段:chars1[]=ILikePizza!;strupr(s1);puts(s1);輸出結果為____________________。本題答案:【ILIKEPIZZA!】20、【填空題】假設chars1[]=Basic,s2[]=Base;if(strcmp(s1,s2))strcpy(s1,s2);請問現(xiàn)在s1為______________。本題答案:【Base】21、【填空題】strlen(ab\045+045\'b)的值為_______________。本題答案:【9##%_YZPRLFH_%##9】22、【填空題】chara[7]=abcdef,b[4]=ABC;strcpy(a,b);此時,a[5]的值為___________。本題答案:【f##%_YZPRLFH_%##'f'】23、【填空題】判斷兩個字符串s1和s2是否相等,應該使用__________函數。本題答案:【strcmp】9.1隨堂測驗1、【單選題】以下正確的敘述是________。本題答案:【宏替換不占用運行時間,只占編譯時間】2、【填空題】以下for語句構成的循環(huán)執(zhí)行了________次。#includestdio.h#defineN2#defineMN+1#defineNUM(M+1)*M/2intmain(){inti,n=0;for(i=1;i=NUM;i++){n++;printf("%d",n);}printf("\n");return0;}本題答案:【8】3、【填空題】有以下程序#includestdio.h#definePT3.5#defineS(x)PT*x*xintmain(){inta=1,b=2;printf("%4.1f\n",S(a+b));return0;}程序運行后輸出的結果是______________。本題答案:【7.5】4、【填空題】有以下程序#includestdio.h#defineS(x)4*(x)*x+1intmain(){intk=5,j=2;printf("%d\n",S(k+j));return0;}程序運行后的輸出結果是________。本題答案:【143】9.2隨堂測驗1、【多選題】#includestdio.hstaticintx=5;voidf1(){x+=1;printf(x2=%d\n,x);}voidf2(){intx=1;printf(x3=%d\n,x);}intmain(){autointx=3;printf(x1=%d\n,x);f1();f2();printf(x4=%d\n,x);return0;}本題答案:【x1=3#x2=6#x3=1#x4=3】2、【填空題】該程序由file1.c和file2.c這兩個文件組成。//file1.c#includestdio.hintd=1;voidfun(int*p){intd=5;d+=(*p)++;printf(%d,,d);}//file2.c#includestdio.hexternvoidfun(int*);externintd;intmain(){fun(d);printf(%d,d);return0;}本題答案:【6,2##%_YZPRLFH_%##6,2】第九章編程第九章單元測驗1、【單選題】C語言編譯系統(tǒng)對宏定義的處理。本題答案:【在對C程序語句正式編譯之前處理】2、【單選題】以下對宏替換的敘述,不正確的是。本題答案:【宏替換時先求出實參表達式的值,然后代入形參運算求值】3、【單選題】以下不正確的敘述是。本題答案:【#include命令可以指定多個被包含頭文件】4、【單選題】下列關于外部變量的說法,正確的是。本題答案:【全局外部變量可以用于多個模塊,extern只是聲明而不是重新定義】5、【單選題】下列關于多文件工程程序的組織原則中,不正確的是。本題答案:【多文件工程程序中模塊的數量越多越好】6、【單選題】以下敘述中正確的是。本題答案:【在C語言中,預處理命令行都是以“#”開頭】7、【單選題】關于編譯預處理,下列說法正確的是。本題答案:【用戶自定義頭文件時使用條件編譯指令可以避免重復包含】8、【單選題】宏定義#defineG9.8中的宏名G表示。本題答案:【一個字符串】9、【單選題】C語言中,宏定義有效范圍從定義處開始,到源文件結束處結束,但可以用________來提前解除宏定義的作用。H、undef本題答案:【#undef】10、【單選題】在一個C語言源程序文件中所定義的全局變量,其作用域為________。本題答案:【由具體定義位置和extern說明來決定范圍】11、【填空題】對于以下宏定義:#defineM1+2#defineN2*M+1執(zhí)行語句“x=N;”之后,x的值是。本題答案:【5】12、【填空題】對于以下宏定義:#defineM(x)x*x#defineN(x,y)M(x)+M(y)執(zhí)行語句z=N(2,2+3);后,z的值是。本題答案:【15】13、【填空題】請寫出下面程序的輸出結果。#includestdio.hintmain(){intx=0,y=1,z;z=2*x+y;#ifdefTESTprintf("%d,%d,",x,y);#endifprintf("%d\n",z);return0;}本題答案:【1】14、【填空題】#includestdio.h#defineADD(y)3.54+y#definePR(a)printf(%d,(int)

溫馨提示

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

評論

0/150

提交評論