計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)習(xí)題冊(cè)含答案_第1頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)習(xí)題冊(cè)含答案_第2頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)習(xí)題冊(cè)含答案_第3頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)習(xí)題冊(cè)含答案_第4頁(yè)
計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)習(xí)題冊(cè)含答案_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)》習(xí)題冊(cè)習(xí)題冊(cè)計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_基礎(chǔ)知識(shí)(一)班級(jí)學(xué)號(hào)姓名成績(jī)單選題C++源程序文件的默認(rèn)擴(kuò)展名為A。

A)cpp

B)exe

C)obj

D)lik由C++源程序文件編譯而成的目標(biāo)文件的默認(rèn)擴(kuò)展名為C。

A)cpp

B)exe

C)obj

D)lik由C++目標(biāo)文件連接而成的可執(zhí)行文件的默認(rèn)擴(kuò)展名為B。

A)cpp

B)exe

C)obj

D)lik編寫(xiě)C++程序一般需經(jīng)過(guò)的幾個(gè)步驟依次是B。

A)編譯、編輯、連接、調(diào)試B)編輯、編譯、連接、調(diào)試C)編譯、調(diào)試、編輯、連接D)編輯、調(diào)試、編輯、連接程序中主函數(shù)的名字為A。

A)mainB)MAINC)MainD)任意標(biāo)識(shí)符下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)的是C。

A)Ap_odoB)floatlao_AC)b-agotointD)_123tempINT下列變量名中合法的是C。

A)B)C)TomB)3a66C)_6a7bD)$ABC存儲(chǔ)以下數(shù)據(jù),占用存儲(chǔ)字節(jié)最多的是D。

A)0B)‘0’C)“0”D)0.0在C++語(yǔ)言中,字符型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是D。

A)補(bǔ)碼B)反碼C)原碼D)ASCII碼若有說(shuō)明語(yǔ)句:charc=’\072’;則變量cA。

A)包含1個(gè)字符B)包含2個(gè)字符C)包含3個(gè)字符D)說(shuō)明不合法,變量的值不確定填空題C++頭文件和源程序文件的擴(kuò)展名分別為.h和.cpp。C++語(yǔ)言規(guī)定,標(biāo)識(shí)符只能由字母、數(shù)字、下劃線三種字符組成,而且第一個(gè)字符必須是字母或下劃線。一條表達(dá)式語(yǔ)句必須以__分號(hào)_;___作為結(jié)束符。用于從鍵盤(pán)上為變量輸入值的標(biāo)準(zhǔn)輸入流對(duì)象是___cin____;用于輸出表達(dá)式值的標(biāo)準(zhǔn)輸出流對(duì)象是__cout____。在一個(gè)C++程序文件中,若要包含另外一個(gè)頭文件或程序文件,則應(yīng)使用以_#include___標(biāo)識(shí)符開(kāi)始的預(yù)處理命令計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_基礎(chǔ)知識(shí)(二)班級(jí)學(xué)號(hào)姓名成績(jī)單選題下列哪一個(gè)是C++語(yǔ)言中合法的變量CA)8ZSeB)±A0C)X0_2D)’x0’已知ch是字符型變量,下面不正確的賦值語(yǔ)句是A

A)ch='a+b'B)ch='\0'C)ch='7'+'9'D)ch=5+9下列浮點(diǎn)數(shù)的表示中不正確的是▁C▁▁A)223.B)719E22C)e23D)12e2下列不正確的轉(zhuǎn)義字符是▁C▁▁A)'\\'B)‘\"’C)'074'D)'\0'在C語(yǔ)言中,合法的字符常量是▁B▁▁A)'\084'B)'\x43'C)'ab'D)"\0"下列變量定義中合法的是▁A▁▁A)double_a=1.le-1;B)doubleb=1+5e2.5;C)doubledo=2e3D)double2_and=1-e-3;已知ch是字符變量,正確的賦值語(yǔ)句是▁B▁A)ch=‘123’ B)ch=’\xff’C)ch=’\08’ D)ch=”\”若x、i、j和k都是int型變量,則計(jì)算表達(dá)式x=(i=4,j=15,k=32)后,x的值為▁▁C▁。A)4B)16C)32D)52單精度數(shù)x=3.0,y=4.0,下列表達(dá)式中y的值為9.0的是▁B▁。A)y/=x*27/4B)y+=x+2.0C)y-=x+8.0D)y*=x-3.0有整型變量x,單精度變量y=5.5,表達(dá)式:x=(float)(y*3+((int)y%4))執(zhí)行后,x的值為▁A▁。A)17B)17.5C)16.5D)16二.填空題一個(gè)C語(yǔ)言程序一般由若干個(gè)函數(shù)構(gòu)成的,程序中至少應(yīng)包含一個(gè)▁▁主函數(shù)▁▁。在C語(yǔ)言中,八進(jìn)制整常量以▁▁0▁▁開(kāi)頭、十六進(jìn)制整常量以▁▁0x▁▁開(kāi)頭?!畑’在內(nèi)存中占▁1▁字節(jié),”x”在內(nèi)存中占▁2▁字節(jié),”/101”在內(nèi)存中占▁▁5▁。若a是int型變量,且a的初值為6,則計(jì)算表達(dá)式a+=a-=a*a后a的值為_(kāi)_-60____。設(shè)inta=2,b=3;floatx=3.5,y=2.5;表達(dá)式(float)(a+b)/2+(int)x%(int)y的值是▁3.5。設(shè)intx=1,y=1;表達(dá)式(!x||y--)的值是▁1▁。定義:inta=10,b=9,c=8;順序執(zhí)行語(yǔ)句:c=(a-=(b-5));c=(a%11)+(b=3);后變量c的值是;變量b的值是3。設(shè)有intx=11;則表達(dá)式(x++*1/3)的值是3。計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_基礎(chǔ)知識(shí)(三)班級(jí)學(xué)號(hào)姓名成績(jī)單選題下列優(yōu)先級(jí)最低的算符是D

A)&&B)+C)||D)=以下符合C++語(yǔ)言語(yǔ)法的賦值表達(dá)式是C。

A)d=9+e+f=d+9B)d=9+e,f=d+9

C)d=(9+e,e++,d+9)D)d=9+e++=d+7已知字母A的ASCII碼為十進(jìn)制數(shù)65,且c2為字符型,執(zhí)行語(yǔ)句c2=‘A’+’6’-‘3’;后c2的十進(jìn)制ASCII碼值為B。

A)67B)68C)69D)不確定的值設(shè)有說(shuō)明:charw;intx;floaty;doublez;則表達(dá)式w*x+z-y值的數(shù)據(jù)類型為D。

A)floatB)charC)intD)double假設(shè)在程序中a、b、c均被定義成整型,所賦的值都大于1,則下列能正確表示代數(shù)式的表達(dá)式是DA)1.0/a*b*cB)1/(a*b*c)C)1/a/b/(float)cD)1.0/a/b/c已知inti,a;執(zhí)行語(yǔ)句“i=(a=2*3,a*5),a+6;”后,變量i的值是C

A)6B)12C)30D)36C++語(yǔ)言中,要求運(yùn)算數(shù)必須是整型的運(yùn)算符是A

A)%B)/C)<D)!以下正確地定義整型變量a,b和c并為它們都賦初值5的語(yǔ)句是C

A)inta=b=c=5;B)inta,b,c=5;C)inta=5,b=5,c=5;D)a=b=c=5;以下變量均為int類型,則值不等于7的表達(dá)式是C

A)(x=y=6,x+y,x+1)B)(x=y=6,x+y,y+1)C)(x=6,x+1,y=6,x+y)D)(y=6,y+1,x=y,x+1)10.設(shè)有inta=1,b=2,c=3,d=4,m=2,n=2;執(zhí)行語(yǔ)句:(m=a>b)&&(n=d>c);后n的值為B

A)1B)2C)3D)0填空題當(dāng)inta=1,b=2,c=3;時(shí),則表達(dá)式a+b>0&&b==c的值是___0_______。若x是int類型變量,則執(zhí)行下列語(yǔ)句:x=7;x+=x-=x+x;后x的值是-14若變量a,b和c是int類型,以下語(yǔ)句借助int類型中間變量t把a(bǔ),b,c交換,如交換前:a=10,b=20,c=30,交換后:a=20,b=30,c=10,則交換語(yǔ)句為t=a;a=b;b=c;c=t;設(shè)inta=2,b=4,c=1,x=0,y=0;執(zhí)行語(yǔ)句a||(x=b)&&(y=c);后x的值為▁0▁,y的值為▁0。判斷字符型變量c是否為大寫(xiě)字母的正確表達(dá)式是▁C>=’A’&&C<=’Z’▁▁。計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_控制結(jié)構(gòu)(一)班級(jí)學(xué)號(hào)姓名成績(jī)單選題1.下列程序的輸出結(jié)果是C。#include<iostream.h>voidmain(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;cout<<d*y<<endl;}A)3B)3.2C)0D)3.072.下列程序執(zhí)行后的輸出結(jié)果是A。#include<iostream.h>voidmain(){doubled;floatf;longl;inti;i=f=1=d=20/3;cout<<i<<l<<f<<d<<endl;}A)666.06.0B)666.76.7C)666.06.7D)666.76.03.下面程序的輸出是C。#include<iostream.h>voidmain(){inta=-1,b=4,k;k=(a++<=0)&&(!(b--<=0));cout<<k<<a<<b<<endl;}A)003 B)012C)103 D)1124.設(shè)intx=1,y=3,則語(yǔ)句x+=y;y=x-y;x-=y;的功能是▁D▁。A)把x和y按從大到小排列B)把x和y按從小到大排列C)無(wú)確定結(jié)果D)交換x和y中的值5.以下程序的輸出結(jié)果是A。#include<iostream.h>voidmain(){inta,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}A)2,1B)3,2C)4,3D)2,-1二、分析程序,寫(xiě)出運(yùn)行結(jié)果1.#include<iostream.h>voidmain(){inti,j,m,n;i=8;j=10;m=++i;n=j++;cout<<i<<j<<m<<n<<endl;}程序的運(yùn)行結(jié)果是▁▁9,11,9,10▁▁2.#include<iostream.h>voidmain(){inty=3,x=3,z=1;cout<<(++x,y++)<<z+2<<endl;}程序的運(yùn)行結(jié)果是▁▁33▁▁計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_控制結(jié)構(gòu)(二)班級(jí)學(xué)號(hào)姓名成績(jī)單選題1.若從鍵盤(pán)上輸入5,則程序的輸出結(jié)果是B。#include<iostream.h>voidmain(){intx;cin>>x;if(x++>5)cout<<x<<endl;elsecout<<x--<<endl;}A)7 B)6 C)5 D)42.下列程序的輸出結(jié)果是A。#include<iostream.h>voidmain(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}cout<<”a=”<<a<<”,b=”<<b<<endl;}A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=23.下列程序的輸出結(jié)果是C。#include<iostream.h>voidmain(){doublex=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;cout<<y<<endl;}A)0B)0.25C)0.5D)14.若從鍵盤(pán)上輸入3和4,則程序的輸出結(jié)果是B。#include<iostream.h>voidmain(){inta,b,s;cin>>a>>b;s=a;if(a<b)s=b;s=s*s;cout<<s<<endl;}A)14 B)16 C)18 D)205.下面的程序D。#include<iostream.h>voidmain(){intx=3,y=0,z=0;if(x=y+z)cout<<"****\n";elsecout<<"####\n";}A)有語(yǔ)法錯(cuò)誤不能通過(guò)編譯 B)輸出****C)可以通過(guò)編譯,但是不能通過(guò)連接,因而不能運(yùn)行 D)輸出####6.為避免在嵌套的條件語(yǔ)句if-else中產(chǎn)生二義性,C語(yǔ)言規(guī)定:else子句總是與C配對(duì)。A)同一行上的if B)其之后最近的if C)其之前最近的且沒(méi)有else的ifD)縮排位置相同的if填空題計(jì)算機(jī)總是按照語(yǔ)句或者語(yǔ)句塊位置的先后關(guān)系▁順序▁▁執(zhí)行所有程序都可以用▁順序▁▁、▁選擇▁▁、▁循環(huán)▁▁3種控制結(jié)構(gòu)實(shí)現(xiàn)。switch結(jié)構(gòu)中的表達(dá)式必須是▁整型表達(dá)式▁▁。case語(yǔ)句中的表達(dá)式必須是▁整常量表達(dá)式▁▁。計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_控制結(jié)構(gòu)(三)班級(jí)學(xué)號(hào)姓名成績(jī)分析程序,寫(xiě)出運(yùn)行結(jié)果1.#include<iostream.h>voidmain(){intx=100,a=10,b=20,ok1=5,ok2=5;if(a<b)if(b!=15)if(!ok1)x=1;elseif(ok2)x=10;cout<<x<<endl;}程序的輸出是102.#include<iostream.h>voidmain() {floatx,y;charch;doubler; cin>>x>>y>>ch; switch(ch) {case‘+’:r=x+y;break;case‘-’:r=x-y;break;case‘*’:r=x*y;break;case‘/’:r=x/y;break;}cout<<r<<endl;}運(yùn)行時(shí)輸入:35/<回車(chē)>,則程序的運(yùn)行結(jié)果是0.6單選題1.以下敘述正確的是▁D▁▁▁A)do-while語(yǔ)句構(gòu)成的循環(huán)不能用其它語(yǔ)句構(gòu)成的循環(huán)來(lái)代替B)do-while語(yǔ)句構(gòu)成的循環(huán)只能用break語(yǔ)句退出C)用do-while語(yǔ)句構(gòu)成的循環(huán),在while后的表達(dá)式為非零時(shí)結(jié)束循環(huán)D)用do-while語(yǔ)句構(gòu)成的循環(huán),在while后的表達(dá)式為零時(shí)結(jié)束循環(huán)2.設(shè)inta,b;則執(zhí)行以下語(yǔ)句后b的值為Da=1;b=10;do{b-=a;a++;}while(b--<0);9B)–2C)–1D)83.以下程序段的執(zhí)行結(jié)果是▁D▁▁▁inta,y;a=10;y=0;do{a+=2;y+=a;cout<<“a=”<<a<<”,y=”<<y<<endl;if(y>20)break;}while(a=14);a=12,y=12B)a=12,y=12a=14,y=16a=14,y=26C)a=12,y=12D)a=12,y=12a=14,y=44a=16,y=284.設(shè)inti;執(zhí)行語(yǔ)句:for(i=1;i++<4;);后,變量i的值是▁C▁▁A)3B)4C)5D)不定值填空題設(shè)i,j,k均為int型變量,則執(zhí)行完下面的for循環(huán)后,i的值為_(kāi)__6___;j的值為_(kāi)_4____;k的值為

___10____。for(i=0,j=10;i<=j;i++,j--)k=i+j;

計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_控制結(jié)構(gòu)(四)班級(jí)學(xué)號(hào)姓名成績(jī)單選題1.以下循環(huán)體的執(zhí)行次數(shù)是▁▁C▁▁#include<iostream.h>voidmain(){inti,j;for(i=0,j=1;i<=j+1;i+=2,j--)cout<<i<<endl;}3B)2C)1D)02.當(dāng)執(zhí)行以下程序段時(shí)▁C▁▁▁inty=-1;do{y--;}while(--y);cout<<y--<<endl;A)循環(huán)體將執(zhí)行一次B)循環(huán)體將執(zhí)行兩次C)循環(huán)體將執(zhí)行無(wú)限次D)系統(tǒng)將提示有語(yǔ)法錯(cuò)誤3.在下列選項(xiàng)中,沒(méi)有構(gòu)成死循環(huán)的程序是CA)inti=100;B)for(;;);while(1){i=i%100+1;if(i>100)break;}C)intk=1000;D)ints=36;do{++k;while(s);--s;}while(k<=1000);4.設(shè)intx,y;則執(zhí)行下的循環(huán)后,y值為Cfor(y=1,x=1;y<=50;y++){if(x>=10)break;if(x%2==1){x+=5;continue;}x-=3;}A)2B)4C)6D)85.設(shè)intj;,則下面for循環(huán)語(yǔ)句的執(zhí)行結(jié)果是▁B▁▁for(j=10;j>3;j--){if(j%3)j--;--j;--j;cout<<j;}A)63B)74C)62D)736.以下程序的輸出結(jié)果是▁A▁▁▁#include<iostream.h>voidmain(){intn=4;while(n--)cout<<--n;}A)20B)31C)321D)210分析程序,寫(xiě)出運(yùn)行結(jié)果1.#include<iostream.h>voidmain(){inti,j;for(i=1;i<5;i++){for(j=1;j<i+1;j++)cout<<j<<’\t’;cout<<endl;}}1程序的輸出結(jié)果122.#include<iostream.h>voidmain(){inti,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<3;j++){if(j%2)continue;x++;}x++;}cout<<"x="<<x<<endl;}程序的輸出結(jié)果是x=8計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_控制結(jié)構(gòu)(五)班級(jí)學(xué)號(hào)姓名成績(jī)單選題1.以下程序的輸出結(jié)果是▁B▁▁▁#include<iostream.h>voidmain(){inti,j;for(j=10;j<11;j++)for(i=9;i<=j-1;i++)cout<<j;}A)11B)10C)9D)10112.以下程序的執(zhí)行結(jié)果是▁C▁▁▁#include<iostream.h>voidmain(){inti,sum;for(i=1;i<=3;sum++)sum+=i;cout<<sum<<endl;}A)6B)3C)死循環(huán)D)03.以下程序的執(zhí)行結(jié)果是▁B▁▁▁#include<iostream.h>voidmain(){intx=23;do{cout<<x--<<endl;}while(!x);}A)22B)23C)24D)陷入死循環(huán)4.有如下程序,該程序段的輸出結(jié)果是▁B▁#include<iostream.h>voidmain(){intn=9;while(n>6){n--;cout<<n;}}A)987B)876C)8765D)98765.以下程序的輸出結(jié)果是▁D▁▁▁#include<iostream.h>voidmain(){intx=10,y=10,i;for(i=0;x>8;y=++i)cout<<x--<<""<<y<<"";cout<<endl;}A)10192B)9876C)10990D)1010916.以下程序的輸出結(jié)果是▁▁A▁▁#include<iostream.h>voidmain(){inti;for(i=1;i<6;i++){if(i%2){cout<<"#";continue;}cout<<"*";}cout<<"\n";}A)#*#*#B)#####C)*****D)*#*#*7.以下程序的輸出結(jié)果是▁▁B▁▁#include<iostream.h>voidmain(){chari;for(i='A';i<'I';i++,i++)cout<<i;cout<<"\n";}A)編譯不通過(guò),無(wú)輸出B)ACEGC)ACEGID)ABCDEFG8.運(yùn)行以下程序后,如果從鍵盤(pán)上輸入china#<回車(chē)>,則輸出結(jié)果為▁▁C▁▁#include<iostream.h>#include<stdio.h>voidmain(){intv1=0,v2=0;charch;while((ch=getchar())!='#')switch(ch){case'a':case'h':default:v1++;case'0':v2++;}cout<<v1<<”,”<<v2<<endl;}A)2,0B)5,0C)5,5D)2,5計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_函數(shù)(一)班級(jí)學(xué)號(hào)姓名成績(jī)單選題1.下面敘述中正確的是B。A)對(duì)于用戶自己定義的函數(shù),在使用前必須加以說(shuō)明B)函數(shù)可以返回一個(gè)值,也可以什么值也不返回C)說(shuō)明函數(shù)時(shí)不必明確其參數(shù)類型和返回類型D)調(diào)用函數(shù)的實(shí)參,只能是有確定值的變量2.下面敘述中錯(cuò)誤的是A。A)主函數(shù)中定義的變量在整個(gè)程序中都是有效的B)在其他函數(shù)中定義的變量在主函數(shù)中也都不能使用C)形式參數(shù)也是局部變量D)復(fù)合語(yǔ)句中定義的變量只在該復(fù)合語(yǔ)句中有效3.下面敘述中正確的是B。A)全局變量在定義它的文件中的任何地方都是有效的B)全局變量在程序全部執(zhí)行過(guò)程中一直占用內(nèi)存單元C)同一文件中的變量不能重名D)使用全局變量有利于程序的模塊化和可讀性的提高4.若函數(shù)的類型和return語(yǔ)句中表達(dá)式的類型不一致,則D。A)編譯時(shí)出錯(cuò)B)運(yùn)行時(shí)出現(xiàn)不確定結(jié)果C)不會(huì)出錯(cuò),且返回值的類型以return語(yǔ)句中表達(dá)式的類型為準(zhǔn)D)不會(huì)出錯(cuò),且返回值的類型以函數(shù)的類型為準(zhǔn)5.C++語(yǔ)言中若不特別聲明,則自動(dòng)變量的存儲(chǔ)類型被認(rèn)為是D。A)externB)staticC)registerD)auto6.在函數(shù)調(diào)用語(yǔ)句fun1(fun2(x,y),(x,y),z=x+y);中,fun1的實(shí)際參數(shù)的個(gè)數(shù)是A。A)3B)7C)4D)57.對(duì)函數(shù)的調(diào)用不可以出現(xiàn)在C。A)對(duì)一個(gè)變量賦初值B)調(diào)用函數(shù)時(shí)傳遞的實(shí)際參數(shù)C)函數(shù)的形式參數(shù)D)引用數(shù)組元素[]的運(yùn)算符中8.以下對(duì)C++語(yǔ)言函數(shù)的有關(guān)描述中,正確的是A。在C++中,調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳送給形參,形參的值不能傳送給實(shí)參C++函數(shù)既可以嵌套定義又可以遞歸調(diào)用C)函數(shù)必須有返回值,否則不能使用函數(shù)D)C++程序中有調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)源程序文件中9.以下敘述中不正確的是C。A)在C++中,函數(shù)中的自動(dòng)變量可以賦初值,每調(diào)用一次,賦一次初值B)在C++中,在調(diào)用函數(shù)時(shí),實(shí)在參數(shù)和對(duì)應(yīng)形參在類型上只需賦值兼容C)在C++中,外部變量的隱含類別是自動(dòng)存儲(chǔ)類型D)在C++中,函數(shù)形參可以說(shuō)明為register變量計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_函數(shù)(二)班級(jí)學(xué)號(hào)姓名成績(jī)填空題函數(shù)直接或者間接地自己調(diào)用自己,被稱為函數(shù)的遞歸調(diào)用____。在C++語(yǔ)言中,某函數(shù)在一個(gè)程序中被調(diào)用的次數(shù)是無(wú)限制的。在C++語(yǔ)言中,編譯是以源文件為單位的,一個(gè)C++程序可以由一個(gè)或多個(gè)源文件組成。C++語(yǔ)言中,唯一不能被別的函數(shù)調(diào)用的函數(shù)是main()或主函數(shù)。從函數(shù)定義角度看,C++語(yǔ)言中的函數(shù)分為兩種,即庫(kù)函數(shù)和用戶自定義函數(shù)。從接口形式上分類,函數(shù)分為無(wú)參函數(shù)和有參函數(shù)。在定義函數(shù)時(shí),函數(shù)名后面的括號(hào)中的變量名稱為形式參數(shù),在調(diào)用函數(shù)時(shí)函數(shù)名括號(hào)后面的變量名稱為實(shí)際參數(shù)。在函數(shù)內(nèi)部定義只在本函數(shù)內(nèi)有效的變量是局部變量或內(nèi)部變量,在函數(shù)外部定義的變量是全局變量或外部變量。單選題1.以下程序運(yùn)行后,輸出結(jié)果是D。#include<iostream.h>intfunc(inta,intb){intm=0,i=2;i+=m+1;m=i+a+b;return(m);}voidmain(){intk=4,m=1,p;p=func(k,m);cout<<p;p=func(k,m);cout<<’,’<<p<<endl;}A)8,15B)8,16C)8,17D)8,82.以下程序運(yùn)行后,輸出結(jié)果是A。#include<iostream.h>intd=1;voidfun(intp){intd=5;d+=p++;cout<<d;}voidmain(){inta=3;fun(a);d+=a++;cout<<d<<endl;}A)84B)99C)95D)443.以下程序的輸出結(jié)果是D。#include<iostream.h>intfunc(inta,intb){return(a+b);}voidmain(){intx=2,y=5,z=8,r;r=func(func(x,y),z);cout<<r<<endl;}A)12B)13C)14D)154.設(shè)有以下宏定義:#defineN3#defineY(n)((N+1)*n)則執(zhí)行語(yǔ)句:intz;z=2*(N+Y(5+1));后,z的值為C。A)編譯出錯(cuò)B)42C)48D)54計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_函數(shù)(三)班級(jí)學(xué)號(hào)姓名成績(jī)分析程序,寫(xiě)出運(yùn)行結(jié)果1.#include<iostream.h>intabc(intu,intv);voidmain(){inta=24,b=16,c;c=abc(a,b);cout<<c<<endl;}intabc(intu,intv){intw;while(v){w=u%v;u=v;v=w;}returnu;}程序的輸出結(jié)果是8。2.#include<iostream.h>intfun2(inta,intb){intc;c=a*b%3;returnc;}intfun1(inta,intb){intc;a+=a;b+=b;c=fun2(a,b)+fun2(a,b);returnc*c;}voidmain(){intx=11,y=19;cout<<fun1(x,y)<<endl;}輸出結(jié)果為163.#include<iostream.h>voidfun(){staticinta;a+=2;cout<<a;}voidmain(){intcc;for(cc=1;cc<=4;cc++)fun();cout<<“\n”;}輸出結(jié)果為24684.#include<iostream.h>intn=5;voidfun1(intx);intfun2(intn);voidmain(){intn=3;fun1(n);cout<<"n="<<n<<endl; }voidfun1(intx){cout<<"n="<<n<<endl;x+=n;cout<<fun2(x)<<endl;}intfun2(intn){n*=2;returnn;}程序運(yùn)行結(jié)果為:n=516n=35.#include<iostream.h>intn=10;intfunc(){staticinta=0;a+=n;n+=10;returna;}voidmain(){intx=0;x=func();cout<<"x="<<x<<endl;x=func();cout<<"x="<<x<<endl;}輸出結(jié)果為x=10x=30計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_數(shù)組(一)班級(jí)學(xué)號(hào)姓名成績(jī)單選題下面對(duì)一維數(shù)組a的說(shuō)明正確的是D。A)inta(10); B)intn=10,a[n];C)intn;cin>>n; inta[n];D)#defineSIZE10inta[SIZE];若要對(duì)一維數(shù)組a的所有元素值初始化為1的語(yǔ)句正確的是C。A)inta[5]=(1,1,1,1,1); B)inta[]={5*1}C)inta[]={1,1,1,1,1};D)inta[5]={1}若已定義數(shù)組:floata[8];則下列對(duì)數(shù)組元素引用正確的是A。A)a[0]=1; B)a[8]=a[0];C)a=1; D)a[3.5]=1;下面對(duì)二維數(shù)組a的說(shuō)明正確的是C。A)inta[3][]; B)floata(3,4);C)doublea[1][4]; D)longa[3,4];不能對(duì)二維數(shù)組a進(jìn)行正確初始化的語(yǔ)句是B。A)inta[2][3]={0} B)inta[2][3]={{1,2},{3,4},{5,6}};C)inta[][3]={{1,2},{0}}; D)inta[][3]={1,2,3,4,5,6}若有說(shuō)明:inta[3][4]={0};則以下說(shuō)法正確的是C。A)只有元素a[0][0]可得到初值0B)數(shù)組a中各元素都可得到初值,但其值不一定為0C)數(shù)組a中每個(gè)元素均可得到初值0D)此說(shuō)明語(yǔ)句不正確下面對(duì)字符數(shù)組s的初始化不正確的是D。A)chars[5]={“abc”}; B)chars[5]={‘a(chǎn)’,’b’,’c’};C)chars[5]=“”; D)chars[5]=“abcdef”;8.執(zhí)行下面的程序段后,變量k中的值為A。intk=3,s[2];s[0]=k;k=s[1]*10;A)不定值B)33C)30D)109.以下程序運(yùn)行后,輸出結(jié)果是D。#include<iostream.h>voidmain(){inty=18,i=0,j,a[8];do{a[i]=y%2;i++;y=y/2;}while(y>=1);for(j=i-1;j>0;j--)cout<<a[j];cout<<endl;}A)1000B)10010C)00110D)100110.若有定義inta[4][5],則元素a[2][3]是數(shù)組中第B個(gè)元素。A)13 B)14 C)8 D)9計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_數(shù)組(二)班級(jí)學(xué)號(hào)姓名成績(jī)單選題1.有程序段如下:運(yùn)行該程序的結(jié)果是A。chara[3],b[]=”China”;a=b;cout<<a<<endl;A)編譯出錯(cuò) B)運(yùn)行結(jié)果為ChinaC)運(yùn)行結(jié)果為Ch D)運(yùn)行結(jié)果為空串2.下述對(duì)字符數(shù)組的描述中錯(cuò)誤的是D。A)字符數(shù)組可以存放字符串B)字符數(shù)組的字符串可以整體輸入、輸出C)不可以在賦值語(yǔ)句中通過(guò)賦值運(yùn)算符“=”對(duì)字符數(shù)組整體賦值D)可以用關(guān)系運(yùn)算符對(duì)字符數(shù)組中的字符串進(jìn)行比較3.若有以下程序片段,則輸出結(jié)果是C。charstr[]="ab\n\012\\\"";cout<<strlen(str)<<endl;A)3B)4C)6D)124.合法的數(shù)組定義是D。A)inta[]="string";B)inta[5]={0,1,2,3,4,5};C)chara="string";D)chara[]={0,1,2,3,4,5};5.若有定義和語(yǔ)句:則輸出結(jié)果是。chars[10];s="abcd";cout<<s<<endl;。A)abcdB)aC)"abcd"D)編譯不通過(guò)6.對(duì)兩數(shù)組a,b分別作如下初始化chara[]=”abcd”;charb[]={‘a(chǎn)’,’b’,’c’,’d’};則以下敘述正確的是D。A)a與b數(shù)組完全相同 B)a與b長(zhǎng)度相同C)a與b的最后一個(gè)元素都是‘\0’ D)a數(shù)組比b數(shù)組多一個(gè)元素7.下面程序段的運(yùn)行結(jié)果是C。chara[7]=”abcdef”,b[4]=”ABC”;inti;strcpy(a,b);for(i=0;i<7;i++)cout<<a[i];cout<<endl;A)ABCdef B)ABC C)ABCef D)ABCdef二、分析程序,寫(xiě)出運(yùn)行結(jié)果#include<iostream.h>

voidmain(){charch[7]=”12ab56”;inti,s=0;for(i=0;ch[i]>=’0’&&ch[i]<=’9’;i+=2)s=10*s+ch[i]-‘0’;cout<<”s=”<<s<<endl;}輸出結(jié)果是s=1。#include<iostream.h>voidmain()

{inta[][3]={1,2,3,4,5,6,7,8,9};inti,j,s=0;for(i=0;i<3;i++)for(j=0;j<3;j++)if(i==j)s=s+a[i][j];cout<<"s="<<s<<endl;}輸出結(jié)果是s=15計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_數(shù)組(三)班級(jí)學(xué)號(hào)姓名成績(jī)分析程序,寫(xiě)出運(yùn)行結(jié)果1.#include<iostream.h>voidmain(){inta[10]={1,2,3,4,5,6,7,8,9,10};intk,s,i;floatave;for(k=s=i=0;i<10;i++){if(a[i]%2==0)continue;s+=a[i];k++;}if(k!=0){ave=s/k;cout<<“k=”<<k<<”,ave=”<<ave<<endl;}輸出結(jié)果是k=5,ave=5。2.#include<iostream.h>#defineN5voidmain(){inta[N];for(inti=0;i<N;i++) {a[i]=1;for(intj=i-1;j>0;j--)a[j]=a[j]+a[j-1];for(intk=0;k<=N-i;k++)cout<<"";for(j=0;j<=i;j++)cout<<a[j]<<"";cout<<endl; }}程序運(yùn)行結(jié)果為13.#include<iostream.h>

voidmain()

{

inta[10]={67,85,45,78,53,92,75,80,94,88};intb[]={60,70,80,90,101};

intc[5]={0};

inti;

for(i=0;i<10;i++)

{intj=0;

while(a[i]>=b[j])

j++;

c[j]++;

}

for(i=0;i<5;i++)

cout<<c[i]<<'\t';

cout<<endl;

}輸出結(jié)果是4.#include<iostream.h>

voidmain()

{inta[3][4]={12,23,14,25,36,27,18,39,15,27,32,35};

intm,n,i,j;

m=n=0;

for(i=0;i<3;++i){

for(j=0;j<4;++j){

if(a[m][n]<a[i][j]){

m=i,n=j;

}

}

}

cout<<"a["<<m<<"]["<<n<<"]="<<a[m][n];}程序運(yùn)行結(jié)果為:

計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_指針(一)班級(jí)學(xué)號(hào)姓名成績(jī)單選題若有兩個(gè)基本類型相同的指針p1,p2,則下列不能進(jìn)行的運(yùn)算是A。A)p1+p2 B)p1-p2 C)p1=p2 D)p1==p2有下列定義和賦值語(yǔ)句,則說(shuō)法正確的是D。(1)charstr[]=”Iamaboy.”;(2)charstr[12];str=”Iamaboy.”;(3) char*p=”Iamaboy.”;(4)char*p;p=”Iamaboy.”;A)以上四組語(yǔ)句都正確. B)只有(1),(3)正確C)只有(3),(4)正確。 D)只有(1),(3),(4)正確。若已定義chars[10];則在下面表達(dá)式中不表示s[1]的地址的是B。A)s+1 B)s++ C)&s[0]+1 D)&s[1]若有說(shuō)明語(yǔ)句:chara[]=”Itismine”;char*p=”Itismine”;則以下不正確的敘述是D。A)a+1表示的是字符t的地址B)p指向另外的字符串時(shí),字符串的長(zhǎng)度不受限制C)p變量中存放的地址值可以改變D)a數(shù)組的長(zhǎng)度為10下面程序段的運(yùn)行結(jié)果是D。chars[6];s=”abcd”;cout<<“\””<<s<<”\””<<endl;A)”abcd” B)abcd C)\”abcd\” D)編譯出錯(cuò)下面程序的輸出是D。#include<iostream.h>voidmain(){ inta,b,*p1,*p2;a=b=3;p1=&a;p2=&b;if(p1==p2){cout<<a*b<<",";cout<<*p1<<","; cout<<*p2*2<<endl;}else{cout<<a+b<<",";cout<<*p1<<","; cout<<*p2+2<<endl;}}A)18,3,6 B)8,3,5 C)9,3,6 D)6,3,5以下程序的運(yùn)行結(jié)果是B。#include<iostream.h>voidsub(intx,inty,int*z){*z=y-x;}voidmain(){inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);cout<<a<<'\t'<<b<<'\t'<<c<<endl;}A)5,2,3 B)-5,-12,-7C)-5,-12,-17 D)5,-2,-7已有定義intk=2;int*ptr1,*ptr2;且ptr1和ptr2均已指向變量k,下面不能正確執(zhí)行的賦值語(yǔ)句B。A)k=*ptr1+*ptr2;B)ptr2=k;C)ptr1=ptr2; D)k=*ptr1*(*ptr2);計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_指針(二)班級(jí)學(xué)號(hào)姓名成績(jī)單選題1.以下程序運(yùn)行后,輸出結(jié)果是A。#include<iostream.h>voidmain(){char*s="abcde";s+=2;cout<<s<<endl;}A)cdeB)字符c的ASCLL碼值C)字符C的地址D)編譯出錯(cuò)2.有以下程序輸出結(jié)果是C。#include<iostream.h>voidfun(intx,inty,int*cp,int*dp){*cp=x+y;*dp=x-y;}voidmain(){inta,b,c,d;a=30;b=50;fun(a,b,&c,&d);cout<<c<<”,”<<d<<endl;}A)50,30B)30,50C)80,-20D)80,203.有如下程序段:int*p,a=10,b=1;p=&a;a=*p+b;執(zhí)行該程序段后,a的值為B。A)12B)11C)10D)編譯出錯(cuò)4.有如下說(shuō)明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;則數(shù)值為9的數(shù)組元素的表達(dá)式是B。A)*p+9B)*(p+8)C)*p+=9D)p+85.若已定義:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,則對(duì)a數(shù)組元素不正確的引用D。A)a[p-a]B)*(&a[i])C)p[i]D)a[10]6.以下程序執(zhí)行后的結(jié)果為C。#include<iostream.h>voidmain()

{inta,b,k=4,m=6,*p1=&k,*p2=&m;

a=p1==&m;

b=(-*p1)/(*p2)+7;

cout<<”a=”<<a<<”,b=”<<b<<endl;

}

A)a=–1,b=5 B)a=1,b=6 C)a=0,b=7 D)a=4,b=107.下列程序的輸出結(jié)果是▁▁▁。[A]

inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

cout<<*(p+2)<<endl;

A.3 B.4 C.1 D.2填空題在如下定義inta=7;int*p;讓指針p指向a的語(yǔ)句是p=&a;,當(dāng)p指向a后,&a與p等價(jià),a與*p等價(jià)。條件同上題,則語(yǔ)句(*point)++;與語(yǔ)句a++;等價(jià),執(zhí)行point++后,則變量a的值為7。計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)_指針(三)班級(jí)學(xué)號(hào)姓名成績(jī)讀程序,寫(xiě)出運(yùn)行結(jié)果#include<iostream.h>voidmain(){inta[5]={1,2,3,4,5};int*p=a;cout<<*++p<<'\t';cout<<*p++<<'\t';cout<<a[2]<<endl;}輸出的結(jié)果為223#include<iostream.h>charb[]="ABCD";voidmain() {char*chp;for(chp=b;*chp;chp+=2)cout<<chp;cout<<endl;}輸出的結(jié)果為ABCDCD#include<iostream.h>voidmain(){chara[]="ABCDEFGH";charb[]="abCDefGH";char*p1,*p2;intk;p1=a;p2=b;for(k=0;k<=7;k++)if(*(p1+k)==*(p2+k))cout<<*(p1+k);cout<<endl;}運(yùn)行結(jié)果是CDGH4.#include<iostream.h>voidsub(floatx,float*y,float*z){*y=*y-1.0;*z=*z+x;}main(){floata=2.5,b=9.0,*pa,*pb;pa=&a;pb=&b;sub(b-a,pa,pa);cout<<a<<endl;}程序的輸出結(jié)果是85.#include<iostream.h>voidfun(int*

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論