版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
c語言程序設(shè)計自測練習(xí)(二)c語言程序設(shè)計自測練習(xí)(二)c語言程序設(shè)計自測練習(xí)(二)資料僅供參考文件編號:2022年4月c語言程序設(shè)計自測練習(xí)(二)版本號:A修改號:1頁次:1.0審核:批準(zhǔn):發(fā)布日期:心之所向,所向披靡C++語言程序設(shè)計自測練習(xí)(二)一、單項選擇題1.函數(shù)調(diào)用不可以()。A.出現(xiàn)在一個表達(dá)式中B.出現(xiàn)在執(zhí)行語句中C.作為一個函數(shù)的實參D.作為一個函數(shù)的形參2.以下正確的描述是()。A.函數(shù)的定義可以嵌套,函數(shù)的調(diào)用不可以嵌套B.函數(shù)的定義不可以嵌套,函數(shù)的調(diào)用可以嵌套C.函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套D.函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套3.若用數(shù)組名作為函數(shù)調(diào)用的實參,傳遞給形參的是()。A.數(shù)組的首地址B.數(shù)組中第一個元素的值C.數(shù)組全部元素的值D.數(shù)組元素的個數(shù)4.以下錯誤的描述是()。A.被調(diào)用函數(shù)中可以不用return語句B.被調(diào)用函數(shù)中可以用多個return語句C.被調(diào)用函數(shù)中,如果有返回值,就一定要有return語句D.被調(diào)用函數(shù)中,一個return語句可返回多個值給調(diào)用函數(shù)5.以下正確的描述是()。A.不允許設(shè)置參數(shù)的默認(rèn)值B.設(shè)置參數(shù)的默認(rèn)值只能在定義函數(shù)時設(shè)置C.設(shè)置參數(shù)的默認(rèn)值時,應(yīng)該設(shè)置右邊的參數(shù)D.設(shè)置參數(shù)的默認(rèn)值時,應(yīng)該全部參數(shù)都設(shè)置6.采用重載函數(shù)的目的是()。A.實現(xiàn)共享B.減少空間C.提高速度D.使用方便,提高可讀性7.將兩個字符串連接起來組成一個字符串時,選用()函數(shù)。A.strlen()B.strcap()C.strcat()D.strcmp()8.以下敘述中正確的是()。A.使用#define可以為常量定義一個名字,該名字在程序中可以再賦另外的值B.使用const定義的常量名有類型之分,其值在程序運行時是不可改變的C.在程序中使用內(nèi)聯(lián)函數(shù)使程序的可讀性變差D.在定義函數(shù)時可以在形參表的任何位置給出缺省形參值9.下面的標(biāo)識符中,()是文件級作用域。A.函數(shù)形參B.語句標(biāo)號C.外部靜態(tài)類標(biāo)識符D.自動類標(biāo)識符10.以下敘述不正確的是()。A.宏替換不占用運行時間B.宏名無類型C.宏替換只是字符替換D.宏名必須用大寫字母表示11.C++語言的編譯系統(tǒng)對宏命令的處理是()。A.在程序運行時進(jìn)行B.在程序連接時進(jìn)行C.和C++程序的其它語句同時進(jìn)行編譯D.在對源程序中其它成分正式編譯之前進(jìn)行12.當(dāng)#include后面的文件名用雙引號括起來時,尋找被包含文件的方式是()。A.直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄B.先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄C.僅僅搜索源程序所在目錄D.搜索當(dāng)前邏輯盤上的所有目錄13.當(dāng)#include后面的文件名用尖括號括起來時,尋找被包含文件的方式是()。A.直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄B.先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄C.僅僅搜索源程序所在目錄D.搜索當(dāng)前邏輯盤上的所有目錄14.在下面存儲類中,()對象的可見性與生存期不一致。A.外部類B.自動類C.內(nèi)部靜態(tài)類D.寄存器類15.在下面存儲類中,()的對象不是局部變量。A.外部靜態(tài)類B.自動類C.函數(shù)形參D.寄存器類16.關(guān)于局部變量,下面說法正確的是()。A.定義該變量的程序文件中的函數(shù)都可以訪問B.定義該變量的函數(shù)中的定義處以下的任何語句都可以訪問C.定義該變量的復(fù)合語句中的定義處以下的任何語句都可以訪問D.定義該變量的函數(shù)中的定義處以上的任何語句都可以訪問17.文件包含命令中被包含的文件的擴展名()。A.必須是.hB.不能是.hC.可以是.h或.cppD.必須是.cpp18.預(yù)處理命令在程序中都是以()符號開頭的。A.*B.#C.&D.@19.設(shè)array為一個數(shù)組,則表達(dá)式sizeof(array)/sizeof(array[0])的結(jié)果為()。A.array數(shù)組首地址B.array數(shù)組中元素個數(shù)C.array數(shù)組中每個元素所占的字節(jié)數(shù)D.array數(shù)組占的總字節(jié)數(shù)20.用new運算符創(chuàng)建一個含10個元素的一維整型數(shù)組的正確語句是()。A.int*p=newa[10];B.int*p=newfloat[10];C.int*p=newint[10];D.int*p=newint[10]={1,2,3,4,5}21.下列給字符數(shù)組賦初值時,正確的是()。A.chars1[]=”abcdef”;B.chars2[4]=”abcd”;C.chars3[2][3]={“abc”,”xyz”};D.chars4[4][]={‘a(chǎn)’,’x’,’s’,’t’};22.設(shè)有定義“staticintdata[5][6];”,設(shè)該數(shù)組在靜態(tài)存儲區(qū)中的起始地址為十進(jìn)制的100,若每個int型數(shù)占4個字節(jié),則數(shù)組元素data[2][3]的地址為()。A.11523.假定變量m定義為“intm=7;”,則定義變量p的正確語句為()。A.intp=&m;B.int*p=&m;C.int&p=*m;D.int*p=m;24.假定k是一個double類型的變量,則關(guān)于變量p的正確定義語句為()。A.doublep=&k;B.int*p=&k;C.double&p=*k;D.char*p=”Thankyou!”;25.變量s的定義為“char*s=”Helloworld!”;”,要使變量p指向s所指向的同一個字符串,則應(yīng)選?。ǎ.char*p=s;B.char*p=&s;C.char*p;p=*s;D.char*p;p=&s;26.關(guān)于void指針,下列說法正確的是()。A.void指針就是未指向任何數(shù)據(jù)的指針B.void指針就是已定義而未初始化的指針C.指向任何類型數(shù)據(jù)的指針可直接賦值給一個void指針D.void指針值可直接賦給一個非void指針27.假定一條定義語句為“inta[10],x,*pa=a;”,若要把數(shù)組a中下標(biāo)為3的元素值賦給x,則不正確的語句為()。A.x=pa[3];B.x=*(a+3);C.x=a[3];D.x=*pa+3;28.假定有定義“intb[10];int*pb;”,則不正確的賦值語句為()。A.pb=b;B.pb=&b[0];C.*pb=newint;D.pb=b[5];29.假定p是具有double類型的指針變量,則表達(dá)式++p使p的值(以字節(jié)為單位)增加()。A.1B.4C.sizeof(double)D.sizeof(p)30.假定p指向的字符串為”string”,則cout<<p+3的輸出結(jié)果為()。A.stringB.ringC.ingD.i31.假定p指向的字符串為”string”,若要輸出這個字符串的地址值,則使用()。A.cout<<*p;B.cout<<p;C.cout<<&p;D.cout<<(void*)p;32.定義p并使p指向動態(tài)空間中的包含30個整數(shù)的數(shù)組所使用的定義語句為()。A.int*p=newint[30];B.int*p=newint(30);C.int*p=new[30];D.*p=newint[30];33.假定p是具有int**類型的指針變量,則給p賦值的正確語句為()。A.p=newint;B.p=newint*;C.p=newint**;D.p=newint[10];34.要使語句“p=newint[10][20];”能夠正常執(zhí)行,p應(yīng)被事先定義為()。A.int*p;B.int**p;C.int*p[20];D.int(*p)[20];35.假定有“structBOOK{chartitle[40];floatprice;};BOOK*book=newBOOK;”,則正確的語句為()。A.strcpy(book->title,”WangTao”);B.strcpy,”WangTao”);C.strcpy(*,”WangTao”);D.strcpy((*book)->title,”WangTao”);36.假定有“structBOOK{chartitle[40];floatprice;};BOOK*book;”,則不正確的語句為()。A.BOOK*x=newbook;B.BOOKx={"C++Programming",};C.BOOK*x=newBOOK;D.BOOK*x=book;37.假定有“structBOOK{chartitle[40];floatprice;}book;”,則正確的語句為()。A.BOOK&x=&book;B.BOOK&x=book;C.BOOK&x=newBOOK;D.BOOK&x=BOOK;38.下列對引用的陳述中不正確的是()。A.每一個引用都是其所引用對象的別名,因此必須初始化B.形式上針對引用的操作實際上作用于它所引用的對象C.一旦定義了引用,一切針對其所引用對象的操作只能通過該引用間接進(jìn)行D.不需要單獨為引用分配存儲空間39.假定變量a和pa定義為“doublea[10],*pa=a;”,要將賦值給a中的下標(biāo)為5的元素,不正確的語句是()。A.pa[5]=;B.a[5]=;C.*(pa+5)=;D.*(a[0]+5)=;40.假定變量b和pb定義為“intb[10],*pb=b;”,要將24賦值給b[1]元素中,不正確的語句是()。A.*(pb+1)=24;B.*(b+1)=24;C.*++b=24;D.*++pb=24;41.假定指針變量p定義為“int*p=newint(100);”,要釋放p所指向的動態(tài)內(nèi)存,應(yīng)使用語句()。A.deletep;B.delete*p;C.delete&p;D.delete[]p;42.假定指針變量p定義為“int*p=newint[30];”,要釋放p所指向的動態(tài)內(nèi)存,應(yīng)使用語句()。A.deletep;B.delete*p;C.delete&p;D.delete[]p;43.假定變量x定義為“intx=5;”,要使rx成為x的引用(別名),rx應(yīng)定義為()。A.intrx=x;B.intrx=&x;C.int*rx=&x;D.int&rx=x;44.關(guān)于消息,下列說法中不正確的是()。A.發(fā)送消息的對象請求服務(wù),接受消息的對象提供服務(wù)B.消息的發(fā)送者必須了解消息的接收者如何相應(yīng)消息C.在C++中,消息的發(fā)送具體體現(xiàn)為對接收消息的對象的某個函數(shù)的調(diào)用D.每個對象只能接收某些特定格式的消息45.關(guān)于封裝,下列說法中不正確的是()。A.通過封裝,對象的全部屬性和操作結(jié)合在一起,形成一個整體B.通過封裝,一個對象的實現(xiàn)細(xì)節(jié)被盡可能地隱藏起來(不可見)C.通過封裝,每個對象都成為相對獨立的實體D.通過封裝,對象的屬性都是不可見的46.面向?qū)ο蠓椒ǖ亩鄳B(tài)性是指()。A.一個類可以派生出多個特殊類B.一個對象在不同的運行環(huán)境中可以有不同的變體C.針對一消息,不同的對象可以以適合自身的方式加以響應(yīng)D.一個對象可以是由多個其他對象組合而成的47.軟件產(chǎn)品在需求發(fā)生變化、運行環(huán)境發(fā)生變化或發(fā)現(xiàn)軟件產(chǎn)品本身的錯誤或不足時進(jìn)行相應(yīng)的軟件更新的難易程度叫做軟件的()。A.可維護性B.可復(fù)用性C.兼容性D.正確性48.軟件產(chǎn)品可被全部或部分地再用于新的應(yīng)用的能力叫做軟件的()。A.可維護性B.可復(fù)用性C.兼容性D.正確性49.軟件產(chǎn)品與其他軟件產(chǎn)品組合成一個整體的難易程度叫做軟件的()。A.可維護性B.可復(fù)用性C.兼容性D.正確性50.軟件產(chǎn)品準(zhǔn)確執(zhí)行軟件需求規(guī)格說明書中所規(guī)定的任務(wù)的能力叫做軟件的()。A.可維護性B.可復(fù)用性C.兼容性D.正確性二、填空題1.含隨機函數(shù)的表達(dá)式rand()%20的值在_____至______區(qū)間內(nèi)。2.在switch語句中,每個語句標(biāo)號所含關(guān)鍵字case后面的表達(dá)式必須是整型_______。3.在if語句中,每個else關(guān)鍵字與它前面同層次并且最接近的________關(guān)鍵字相配套。4.作為語句標(biāo)號使用的C++保留字case和default只能用于________語句的定義體中。5.執(zhí)行switch語句時,在進(jìn)行作為條件的表達(dá)式求值后,將從某個匹配的標(biāo)號位置起向下執(zhí)行,當(dāng)碰到下一個標(biāo)號位置時________執(zhí)行。6.若while循環(huán)的“頭”為“while(i++<=10)”,并且i的初值為0,同時在循環(huán)體中不會修改i的值,則循環(huán)體將被重復(fù)執(zhí)行______次后正常結(jié)束。7.若do循環(huán)的“尾”為“while(++i<10)”,并且i的初值為0,同時在循環(huán)體中不會修改i的值,則循環(huán)體將被重復(fù)執(zhí)行______次后正常結(jié)束。8.當(dāng)在程序中執(zhí)行到________語句時,將結(jié)束本層循環(huán)類語句或switch語句的執(zhí)行。9.當(dāng)在程序中執(zhí)行到________語句時,將結(jié)束所在循環(huán)語句中循環(huán)體的一次執(zhí)行。10.在程序中執(zhí)行到________語句時,將結(jié)束所在函數(shù)的執(zhí)行過程,返回到調(diào)用該函數(shù)的位置。11.在程序執(zhí)行完________函數(shù)后,將結(jié)束整個程序的執(zhí)行過程,返回到操作系統(tǒng)下的C++集成開發(fā)窗口。12.元素類型為int的數(shù)組a[10]共占用________字節(jié)的存儲空間。13.元素類型為double的二維數(shù)組a[4][6]共占用________字節(jié)的存儲空間。14.元素類型為char的二維數(shù)組a[10][30]共占用________字節(jié)的存儲空間。15.存儲字符’a’和字符串”a”分別需要占用________和________個字節(jié)。16.空串的長度為________,存儲它需要占用________個字節(jié)。17.字符串”\’a\’xy=4\n”的長度為________。18.字符串”a:\\xxk\\數(shù)據(jù)”的長度為________。19.用于存儲一個長度為n的字符串的字符數(shù)組的長度至少為________。20.若a是一個字符數(shù)組,則從鍵盤上向該數(shù)組輸入一個字符串的表達(dá)式為__________。21.若a是一個字符數(shù)組,則向屏幕輸出a中所存字符串的表達(dá)式為__________。22.一個二維字符數(shù)組a[10][20]能夠存儲________個字符串,每個字符串的長度至多為________。23.對一個二維字符數(shù)組a進(jìn)行初始化的數(shù)據(jù)為{”123”,”456”,”789”},則a[1]元素對應(yīng)的字符串為__________。24.strlen(”apple”)的值為________,strcmp(”a”,”A”)的值為________。25.若需要把一個字符串”aaa”賦值到字符數(shù)組a中,則需要執(zhí)行________函數(shù)的調(diào)用來實現(xiàn)。26.假定對二維數(shù)組a[3][4]進(jìn)行初始化的數(shù)據(jù)為{{3,5,6},{2,8},{7}},則a[1][1]和a[2][3]分別被初始化為_______和________。27.在C++語言中,一個函數(shù)由函數(shù)頭和__________組成。28.重載一個函數(shù)的條件是:該函數(shù)必須在參數(shù)的個數(shù)或參數(shù)的__________上與其它同名函數(shù)有所不同。29.如果一個函數(shù)只允許同一文件中的函數(shù)調(diào)用,則應(yīng)在該函數(shù)定義前加上__________C++保留字。30.若“doublex=100;”是文件中的一個全局變量定義語句,若文件中的某個函數(shù)需要訪問此x,則應(yīng)在文件中添加對x的聲明語句為_________________。31.定義一個函數(shù)模板要用到的第一個修飾符是____________。32.在函數(shù)模板的參數(shù)中,用class修飾的參數(shù)稱為__________參數(shù)。33.如果一個函數(shù)直接或間接地調(diào)用自身,這樣的調(diào)用稱為____________調(diào)用。34.已知intcubin(intn){returnn*n*n;}和doublecubin(doublen){returnn*n*n;}是一個函數(shù)模板的兩個實例,假定類型參數(shù)用T表示,則該函數(shù)模板的定義是__________________________________。35.對于無返回值函數(shù),定義函數(shù)時要用__________修飾函數(shù)類型。36.如果一個函數(shù)定義使用了__________修飾,則該函數(shù)不允許被其它文件中的函數(shù)調(diào)用。37.如果一個函數(shù)中有多個默認(rèn)參數(shù),則默認(rèn)參數(shù)必須全部處在形參表的________部分。38.定義外部變量時,不用存儲類說明符_________,而聲明外部變量時用它。39.調(diào)用系統(tǒng)函數(shù)時,要先使用#include命令包含該系統(tǒng)函數(shù)的原型語句所在的__________。40.函數(shù)形參的作用域是該函數(shù)的____________。41.C++提供的預(yù)處理命令有宏定義命令,條件編譯命令和____________。42.程序的編譯是以__________為單位進(jìn)行的。43.C++程序運行時的內(nèi)存空間可以分成全局?jǐn)?shù)據(jù)區(qū),堆區(qū),棧區(qū)和__________。44.全局變量和靜態(tài)局部變量具有靜態(tài)生存期,存放在內(nèi)存的____________區(qū)中。45.局部變量具有局部生存期,存放在內(nèi)存的____________區(qū)中。46.若二維數(shù)組a有m列,設(shè)a[0][0]位于數(shù)組的第一個位置上,則計算任一元素a[i][j]在數(shù)組中位置序號的公式為____________。47.若有定義“doublea[3][5];”,則a數(shù)組中行下標(biāo)和列下標(biāo)的最大值分別為________和________。48.若有定義“structAA{inta;charb;doublec;}x;”,則x占用空間大小為________字節(jié)。49.當(dāng)定義一個結(jié)構(gòu)體變量時,系統(tǒng)分配給該變量的內(nèi)存大小等于各成員所需內(nèi)存大小的_______。50.一個指針類型的對象占用內(nèi)存的________個字節(jié)的存儲空間。51.一個指針指向一個數(shù)據(jù)對象,它保存著該數(shù)據(jù)對象的________,若數(shù)據(jù)對象為DataType類型,則相應(yīng)的指針類型為__________。52.若要把一個整型指針p轉(zhuǎn)換為字符指針,則采用的強制轉(zhuǎn)換表達(dá)式為________。53.假定一個數(shù)據(jù)對象為int*類型,則指向該對象的指針類型為_______。54.假定p是一個指向整數(shù)對象的指針,則用________表示該整數(shù)對象,用________表示指針變量p的地址。55.假定p是一個指針,則*p++運算首先訪問________,然后使________的值增1。56.假定p是一個指針,則(*p)++運算首先訪問________,然后使________的值增1。57.假定p所指對象的值為25,p+1所指對象的值為42,則*p++的值為________。58.假定p所指對象的值為25,p+1所指對象的值為42,則*++p的值為________。59.假定p所指對象的值為25,p+1所指對象的值為42,則執(zhí)行(*p)++運算后,p所指對象的值為________。60.假定p所指對象的值為25,p+1所指對象的值為42,則執(zhí)行*p++運算后,p所指對象的值為________。61.假定對數(shù)組a[]進(jìn)行初始化的數(shù)據(jù)為{2,7,9,6,5,7,10},則a[2]和a[5]分別被初始化為________和________。三、程序填充題,對程序、函數(shù)或類中劃有橫線的位置,根據(jù)題意按標(biāo)號把合適的內(nèi)容填寫到程序下面相應(yīng)標(biāo)號的后面。1.采用指針訪問方式從鍵盤給數(shù)組a[N]輸入數(shù)據(jù),然后對元素值重新按逆序存放并輸出。#include<>constintN=8;voidmain(){inta[N],*p,*q;for(p=a;p<a+N;p++)___(1)___;p=a;q=a+N-1;while(p<q){ intr=*p;*p=*q;*q=r;___(2)___;___(3)___; }for(p=a;p<a+N;p++)cout<<*p<<'';cout<<endl;}(1)(2)(3)2.從鍵盤上輸入一個正整數(shù),然后把它轉(zhuǎn)換成的二進(jìn)制數(shù)的每一位存放到一維數(shù)組中,最后輸出該二進(jìn)制數(shù)。注意二進(jìn)制數(shù)的存放是按照從低位到高位的次序進(jìn)行的。#include<>voidmain(){ intx;cout<<"輸入一個整數(shù):";cin>>x;inta[20],k=0,r;do{ r=x%2;a[k++]=r;x=___(1)___; }while(___(2)___);for(--k;k>=0;k--)___(3)___;cout<<endl;}(1)(2)(3)四、寫出程序運行結(jié)果1.#include<>constintT=6;voidmain(){ inti,j; for(i=1;i<=T;i+=2) for(j=2;j<=T;j+=2){ if(i+j<T)cout<<’+’; elsecout<<’*’;}}2.#include<>voidmain(){inta,b,c=0; for(a=1;a<4;a++) for(b=6;b>1;b-=2){ if((a+b)%2==0)c+=a+b;elsec+=a*b; if(b==2)cout<<a<<’’<<b<<’’<<c<<endl; }}3.#include<>constintB=2;voidmain(){intp=1,s=1; while(s<50){ p*=B; s+=p; } cout<<"s="<<s<<endl;}4.#include<>voidmain(){ intx=24,y=88; inti=2,p=1; do{ while(x%i==0&&y%i==0){ p*=i; x/=i; y/=i; } i++; }while(x>=i&&y>=i); cout<<p*x*y<<endl;}5.#include<>constintN=3;voidmain(){ inta[N][N]={{7,-5,3},{2,8,-6},{1,-4,-2}}; intb[N][N]={{3,6,-9},{2,-8,3},{5,-2,-7}}; inti,j,c[N][N]; for(i=0;i<N;i++)#include<>inta=5;voidmain(){ intb=a+20; inta=10; cout<<a<<''<<b<<endl; {inta=0,b=0; for(inti=1;i<6;i++){ a+=i;b+=a; } cout<<a<<''<<b<<endl; } cout<<a<<''<<b<<endl;}7.#include<>intf1(intx,inty){ x=x+y;y=x+y; cout<<"x="<<x<<",y="<<y<<endl; returnx+y;}voidmain(){ intx=5,y=8; intz=f1(x,y); cout<<"x="<<x<<",y="<<y; cout<<",z="<<z<<endl;}8.#include<>voidf2(int&x,int&y){ intz=x;x=y;y=z;}voidf3(int*x,int*y){ intz=*x;*x=*y;*y=z;}voidmain(){ intx=10,y=26;cout<<"x,y="<<x<<","<<y<<endl; f2(x,y);cout<<"x,y="<<x<<","<<y<<endl;f3(&x,&y);cout<<"x,y="<<x<<","<<y<<endl;x++;y--; f2(y,x);cout<<"x,y="<<x<<","<<y<<endl;}9.#include<>voidf4(inta[],intn,int&s){ s=0; for(inti=0;i<n;i++)s+=a[i];}voidmain(){ intb[8]={4,8,6,9,2,10,7,12}; intx;f4(b,5,x); cout<<x<<''; inty;f4(b+3,4,y); cout<<y<<''; cout<<x+y<<endl;}10.#include<>voidmain(){ inta[8]={36,25,48,14,55,40,50,24}; intb1,b2; b1=b2=a[0]; for(inti=1;i<8;i++) if(a[i]>b1){b2=b1;b1=a[i];}elseif(a[i]>b2)b2=a[i]; cout<<b1<<''<<b2<<endl;}五、指出程序或函數(shù)的功能1.voidf2(doublea[],intn){ inti;doublesum=0; for(i=0;i<n;i++)sum+=a[i]; sum/=n; for(i=0;i<n;i++) if(a[i]>=sum)cout<<a[i]<<’’; cout<<endl;}2.voidf4(chara[M][N]){ intc1,c2,c3; c1=c2=c3=0; for(inti=0;i<M;i++) if(strlen(a[i])<5)c1++; elseif(strlen(a[i])>=5&&strlen(a[i])<15)c2++; elsec3++; cout<<c1<<’’<<c2<<’’<<c3<<endl;}5.char*f8(char*str1,constchar*str2){inti=0,j=0;while(str1[i])i++;while(str2[j])str1[i++]=str2[j++];str1[i]='\0';returnstr1;}9.voidOutput(IntNode*f){ if(!f)return;while(f){ cout<<f->data<<’’; f=f->next; }cout<<endl;}假定IntNode的類型定義為:structIntNode{ intdata;intf(constchar*s){inti=0;while(*s++)i++;returni;};六、編程1.求出從鍵盤上輸入的10個整數(shù)中的最大值,要求輸入變量用x表示,存儲最大值的變量用max表示。4.編寫一個函數(shù),分別求出由指針a所指向的字符串中包含的每種十進(jìn)制數(shù)字出現(xiàn)的次數(shù),把統(tǒng)計結(jié)果保存在數(shù)組b的相應(yīng)元素中。5.按照下面函數(shù)原型語句編寫一個函數(shù),返回二維數(shù)組a[m][n]中所有元素的平均值,假定采用變量v存放平均值。doubleMean(doublea[M][N],intm,intn);8.按照函數(shù)原型語句“voidp(intn);”編寫一個遞歸函數(shù)顯示出如下圖形,此圖形是n=5的情況。1223334444555559.根據(jù)下面類中Count函數(shù)成員的原型和注釋寫出它的類外定義。classAA{ int*a; intn; intMS;public: voidInitAA(intaa[],intnn,intms){ if(nn>ms){cout<<"Error!"<<endl;exit(1);} MS=ms; n=nn; a=newint[MS]; for(inti=0;i<n;i++)a[i]=aa[i]; } intCount(intx);根據(jù)下面類中Search函數(shù)成員的原型和注釋寫出它的類外定義。classAA{ int*a; intn; intMS;public: voidInitAA(intaa[],intnn,intms){ if(nn>ms){cout<<"Error!"<<endl;exit(1);} MS=ms; n=nn; a=newint[MS]; for(inti=0;i<n;i++)a[i]=aa[i]; }intSearch(intx);根據(jù)下面類中Compare函數(shù)成員的原型和注釋寫出它的類外定義。classAA{ int*a; intn; intMS;public: voidInitAA(intaa[],intnn,intms){ if(nn>ms){cout<<"Error!"<<endl;exit(1);} MS=ms; n=nn; a=newint[MS]; for(inti=0;i<n;i++)a[i]=aa[i]; }intCompare(AAb);根據(jù)下面類中CompareBig函數(shù)成員的原型和注釋寫出它的類外定義。classAA{ int*a; intn; intMS;public: voidInitAA(intaa[],intnn,intms){ if(nn>ms){cout<<"Error!"<<endl;exit(1);} MS=ms; n=nn; a=newint[MS]; for(inti=0;i<n;i++)a[i]=aa[i]; }intCompareBig(AAb);D2.B3.A4.D5.C6.D7.C8.B9.C10.D11.D12.B13.A14.C15.A16.C17.C18.B19.B20.C21.A22.D23.B24.D25.A26.C27.D28.D29.C30.C31.D32.A33.B34.D35.A36.A37.B38.C39.D40.C41.A42.D43.D44.B45.D46.C47.A48.B49.C50.D二、填空題1.0192.常量(或常數(shù))3.if4.switch5.不停止6.117.108.break9.continue10.return11.主(或main)12.4013.19214.30015.1216.0117.818.1119.n+120.cin>>a21.cout<<a22.101923.”456”24.5125.strcpy(或strcpy(a,”aaa”))26.8027.函數(shù)體28.類型29.static30.externdoublex;31.template32.虛擬類型(或類型)33.遞歸34.template<classT>Tcubin(Tn){returnn*n*n;}35.void36.static37.右邊(或后面)38.extern39.頭文件40.函數(shù)體41.文件包含命令42.文件43.代碼區(qū)(程序區(qū))44.全局?jǐn)?shù)據(jù)45.棧46.i*m+j+147.2448.1349.總和50.451.地址DataType*52.(char*)**54.*p&p55.*pp56.*p*p57.2558.4259.2660.4261.97三、程序填充題,對程序、函數(shù)或類中劃有橫線的位置,根據(jù)題意按標(biāo)號把合適的內(nèi)容填寫到程序下面相應(yīng)標(biāo)號的后面。1.(1)cin>>*p(2)p++(或++p)(3)q--(或--q)2.(1)x/2(2)x!=0(3)cout<<a[k]四、寫出程序運行結(jié)果1.++*+*****2.1212223032663.s=634.2645.101-640-36-6-96.1025153510257.x=13,y=21x=5,y=8,z=348.x,y=10,26x,y=26,10x,y=10,26x,y=25,119.29285710.5550五、指出程序或函數(shù)的功能1.顯示輸出數(shù)組a[n]中大于等于平均值的所有元素值。2.對于二維字符數(shù)組a中保存的M個字符串,分別統(tǒng)計并輸出其長度小于5、大于等于5且小于15、大于等于15的字符串個數(shù)。3.從一個二維整型數(shù)組中查找具有最大值的元素,由引用參數(shù)row和col帶回該元素的行號和列號。4.一個遞歸函數(shù)過程,求出兩個自然數(shù)m和n的最小公倍數(shù)。5.實現(xiàn)strcat函數(shù)的功能,把str2所指字符串連接到str1所指字符串的后面,并返回str1指針。6.實現(xiàn)strcmp函數(shù)的功能,比較兩個字符串str1和str2的大小,若str1較大則返回1,若str2較大則返回-1,若兩者相等則返回0。7.從表頭指針f指向的、由IntNode類型的結(jié)點所構(gòu)成的鏈表中查找出data域的值最大的結(jié)點并返回指向該結(jié)點的指針。8.統(tǒng)計出以表頭指針為f的鏈表中結(jié)點的個數(shù)。9.對于以表頭指針為f的鏈表,依次顯示出每個結(jié)點的data域的值。10.首先從鍵盤上輸入一個整數(shù)給n,然后依次輸入n個整數(shù)建立以表頭指針為f的鏈表。11.求出并返回字符指針參數(shù)s所指向的字符串長度。六、編程1.#include<>voidmain(){ intx,max; cin>>x; max=x;for(inti=0;i<9;i++){ cin>>x; if(x>max)max=x; } cout<<"
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人快遞包裹配送與包裝材料合同二4篇
- 四人合伙股份的協(xié)議書(二零二五年版)2篇
- 2025年金融產(chǎn)品銷售合同債務(wù)追討委托協(xié)議3篇
- 2025年度環(huán)保設(shè)備買賣雙方資金監(jiān)管與服務(wù)保障協(xié)議4篇
- 2025年高速公路施工升降機租賃及道路管制合同3篇
- 2025年度美甲店會員積分體系設(shè)計與運營合同4篇
- 2025年高校教材編輯與審核服務(wù)合同3篇
- 2025年度個人二手挖掘機買賣合同法律風(fēng)險防范范本3篇
- 2025年心理咨詢服務(wù)協(xié)議書范本(心理咨詢服務(wù)與公益活動)3篇
- 2025年度人工智能技術(shù)應(yīng)用保密協(xié)議3篇
- 2024年國家工作人員學(xué)法用法考試題庫及參考答案
- 國家公務(wù)員考試(面試)試題及解答參考(2024年)
- 《阻燃材料與技術(shù)》課件 第6講 阻燃纖維及織物
- 人教版五年級上冊遞等式計算100道及答案
- 公司總經(jīng)理年會致辭范例2篇
- 三位數(shù)乘以兩位數(shù)-計算題大全
- 宏觀社會工作1
- 醫(yī)療大數(shù)據(jù)分析與挖掘技術(shù)
- 道路通行能力手冊第4章-高速公路基本路段
- 傳感器與測試技術(shù)試卷及答案
- 2020年普通高等學(xué)校招生全國統(tǒng)一數(shù)學(xué)考試大綱
評論
0/150
提交評論