c++大一模擬試題(帶答案)_第1頁
c++大一模擬試題(帶答案)_第2頁
c++大一模擬試題(帶答案)_第3頁
c++大一模擬試題(帶答案)_第4頁
c++大一模擬試題(帶答案)_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、模擬試卷(A卷)一、單項選擇題(在每小題的四個備選答案中,選出一個正確答案,并將正確答案的序號填在括號內(nèi)。每小題2分,共15小題,30分) 1. 下列字符串中不能作為C+標(biāo)識符使用的是( )。A、WHILE B、user C、_lvar D、9stars2. C+語言規(guī)定:在一個源程序中,main函數(shù)的位置( )。A、必須在程序的最開始 B、必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C、可以任意 D、必須在程序的最后 3. 假定int類型變量占用兩個字節(jié),其有定義int x10=0,2,4;,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是( )。 A、3    B、6

2、0; C、10    D、20 4. 判斷字符型變量ch是否為大寫英文字母,應(yīng)使用表達(dá)式( )。A、ch>='A' & ch<='Z' B、ch<='A' |ch>='Z'C、'A'<=ch<='Z' D、ch>='A' && ch<='Z'5. 已知下列語句中的x和y都是int型變量,其中錯誤的語句( )。A、x=y+; B、x=+y; C、(x+y)+;

3、 D、 +x=y;6. 有如下程序段:int i=1;while (1)     i+;    if(i = 10) break;    if(i%2 = 0) cout << '*'執(zhí)行這個程序段輸出字符*的個數(shù)是( )。A、10 B、3 C、4 D、57有如下程序 #include<iostream> using namespace std;int func (int a, int b)  

4、return (a+b); int main ()   int x=2,y=5,z=8,r; r=func(func(x,y), z); cout<<r; return 0; 該程序的輸出的結(jié)果是 ( )A、12    B、13  C、14    D、158. 執(zhí)行語句序列int n;cin >> n;switch(n) case 1: case 2: cout << '1' case

5、 3: case 4: cout << '2' break; default: cout << '3'時,若鍵盤輸入1,則屏幕顯示( )。A、1 B、2 C、3 D、129若二維數(shù)組a有m列,則在aij之前的元素個數(shù)為( )。A、j*m+i B、i*m+j C、i*m+j-1 D、 i*m+j+110. 語句的int *p=&k定義于指針P,于這個語句等效的語句序列是( )。A、int *p; p=&k; B、int*p; p=k; C、int*p; *p=&k; D、int*p;*p=k;11. 已知:int m

6、=10; 在下列定義引用的語句中,正確的是( )。A、int &x=m; B、int y=&m; C、int &z; D、int &t=&m;12、有如下程序段int i =0, j=1;intr=i ; / r =j; /int*p=i ; /*p=r ; /其中會產(chǎn)生編譯錯誤的語句是( )。A、 B、 C、 D、13. 在函數(shù)中,可以用auto, extem, register和static這四個關(guān)鍵字中的一個來說明變量的存儲類型,如果不說明存儲類型,則默認(rèn)的存儲類型是( )。A、auto B、extem C、register D、static14.

7、 已知數(shù)組arr的定義如下:( )。int arr5 = 1,2,3,4,5;下列語句中輸出結(jié)果不是2的是A、cout << *arr+1 <<endl; B、cout << *(arr+1)<<endl;C、cout << arr1 <<endl; D、cout << *arr <<endl;15. 在類聲明中,緊跟在“public:”后聲明的成員的訪問權(quán)限是( )。A、私有 B、公有 C、保護(hù) D、默認(rèn)二、改錯題( 每題有幾處錯誤,在錯誤處畫線,并寫出正確語句。每找對1個錯誤,加1分,每修改正確

8、1個錯誤,再加1分。共3小題,共16分)1. #include <iostream> using namespace std;const float pi = 3.1416; const float r = 3.2; int main() float s1; r = 2.8;c1 = pi*r*r; s1 = 2*pi*r; cout<<c1<<s1<<endl; return 0; 2. 下列程序功能是求x的y次方(缺省是x的2次方)  #include<iostream> using namespac

9、e std; double fun(double x,double y)     int i;  double s=1;  for(i=0/i=1;i<y;i+)  s=s*x;  return  s;  int main()   double x=2.5,y=3;   cout<<"pow(2.5,2):"<&l

10、t;fun(x,2)<<endl;  cout<<"pow(2.5,3):"<<fun(x,y)<<endl; return 0;  3將一維數(shù)組按升序排列。 #include <iostream >using namespace std; void sort ( int *p, int n)         int&

11、#160;i,j,temp;    for (i=0;i<n-1;i+)      for (j=i+1;j<n;j+)         if  (pi<pj)            temp=pi; pi=pj; pj=temp;   &#

12、160; int main( void)     int a16=1,3,2,5,4,6,*pi,i;     pi=a1/pi=a10;  sort (pi,6);                          &

13、#160;       for (i=0;i<6;i+) cout<<a1i<<'t'     cout<<endl;  return 0;三、程序理解分析題(分析下列程序代碼,并寫出程序的輸出結(jié)果,共4小題,每題4分,共16分)1. #include<iostream> using namespace std;int main() int sum; for(int i=0; i<

14、6; i+=3) sum=i; for(int j = i; j<6; j+) sum+=j; cout<<sum<<end1; return 0;2. #include <iostream>using namespace std;int main() int i = 5; int &r = i; r = 7; cout << i << endl; return 0;3. #include<iostream>using namespace std;int main() char a="abcdabc

15、abfgacd" int i1=0,i2=0,i=0; while (ai!='0') if(ai='a') i1+;if(ai='b') i2+; i+; cout<<"i1="<<i1<<", i2="<<i2<<endl; return 0;4. #include <iostream>using namespace std;int a=200;void s()static int a=20; a+; cout<&l

16、t;a<<", "int main() int i; for(i=1;i<=2;i+) a+; cout<<a<<", " s(); return 0; 四、程序填空題(在橫線處填上一個語句,使程序?qū)崿F(xiàn)其相應(yīng)的功能。每空3分,共6個空,總共18分)1、求三個數(shù)中的最大值和最小值。#include <iostream>using namespace std;void maxmin(int a, int b, int c, int &m, int &n)int t; if(a<b)t

17、=a;a=b;b=t; if(a<c)t=a;a=c;c=t; if(b<c)t=b;b=c;c=t; _m_=a; /*第一空*/ _n_=c; /*第二空*/int main( )int a,b,c,max,min; cout<<"Please input a b c :" cin>>a>>b>>c; maxmin(a,b,c, max,_min_ );/*第三空*/ cout<<" a="<<a<<" b="<<b<

18、<" c="<<c<<endl; cout<<" max="<<max<<", min="<<min<<endl; return 0;2. 以下程序的功能是輸出二維數(shù)組中最大值所在行內(nèi)最小元素的值。#include <iostream>using namespace std;int fun(int a45)int i, j, m=0,n=0,min; for (i=0; i<4; i+ ) for(j=0;j<5;j+)

19、if(amn<aij) _m=i_ /*第一空*/ n=j; _min=am0_ /*第二空*/for(j=1;j<5;j+) if(min>amj) _min=amj_ /*第三空*/ return min; int main() int i,j,min; int a45=2,3,6,4,1,25,54,23,28,26, 7,9,15,20,35,67,18,30,88,38; for(i=0;i<4;i+) for(j=0;j<5;j+) cout<<aij<<" " cout<<endl; min=f

20、un(a); cout<<min; return 0;五、程序設(shè)計題(根據(jù)功能要求,編寫程序,實現(xiàn)其功能,2題,每題10分,共20分)1. 請編寫一個函數(shù)long sum(int n),用遞歸函數(shù)完成運算:sum(n)=1*1+2*2+n*n,遞歸表達(dá)式為sum(n)=sum(n-1)+n2。 請勿修改主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)sum的花括號中填寫若干語句。#include<iostream> using namespace std;long sum(int n)     int

21、sum=0;while(n>0)sum+=n*n;n-;return sum; int main()     int n;  cout<<"輸入n:"      cin>>n;   cout<<"結(jié)果為:"<<sum(n)<<endl;  return 0;   2. 請編寫函數(shù)fun(),該函數(shù)的功能是判斷字符串是否為回

22、文,若是則函數(shù)返回1,主函數(shù)中輸出YES;否則返回0,主函數(shù)中輸出NO?;匚氖侵疙樧x和倒讀都一樣的字符串。   例如:字符串LEVEL是回文,而字符串123312就不是回文。請勿修改主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號中填寫若干語句。   #include<iostream> using namespace std;   #define N 80    int fun(char*str)      &

23、#160;    int main()      char sN;     cout<<"Enter a string:"<<endl;      gets(s);     cout<<"nn"      puts(s);  

24、0;   if (fun(s)      cout<<"YESn"      else      cout<<"NOn"  return 0;    模擬試卷(A卷)參考答案及評分標(biāo)準(zhǔn)一、單項選擇題(在每小題的四個備選答案中,選出一個正確答案,并將正確答案的序號填在括號內(nèi)。每小題2分,共15小題,30分) 1. D 2. C

25、 3. D 4. D 5. C 6. C 7、D 8. D 9B 10. A11. A 12、A 13. A 14. D 15. B 二、改錯題( 每題有幾處錯誤,在錯誤處畫線,并寫出正確語句。每找對1個錯誤,加1分,每修改正確1個錯誤,再加1分。共3小題,共16分)1. 答案: #include <iostream> using namespace std;const float pi = 3.1416; const float r = 3.2; int main() float s1,c1; /r = 2.8;c1 = pi*r*r; s1 = 2*pi*r; cout<

26、<c1<<s1<<endl; return 0; 2. 答案:#include<iostream> using namespace std; double fun(double x,double y) int i; double s=1; for(i=1;i<=y;i+) s=s*x; return s; int main() double x=2.5,y=3; cout<<"pow(2.5,2):"<<fun(x,2)<<endl; cout<<"pow(2.5,3)

27、:"<<fun(x,y)<<endl; return 0; 3答案:#include <iostream >using namespace std; void sort ( int p, int n) int i,j,temp; for (i=0;i<n-1;i+) for (j=i;j<n;j+) if (pi>pj) temp=pi; pi=pj; pj=temp; int main( void) int a16=1,3,2,5,4,6,*pi,i; pi=a1; sort (pi,6); for (i=0;i<6;i+) cout<<a1i<<'t' cout<<endl; return 0;三、程序理解分析題(分析下列程序代碼,并在程序右側(cè)寫出程序的輸出結(jié)果,共4小題,每題4分,共16分)1. 運行時的輸出結(jié)果是152. 運行時的輸出結(jié)果是73. 運行時的輸出結(jié)果是i1=4,

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論