四川大學(xué)期末考試試題(閉卷)_第1頁
四川大學(xué)期末考試試題(閉卷)_第2頁
四川大學(xué)期末考試試題(閉卷)_第3頁
四川大學(xué)期末考試試題(閉卷)_第4頁
四川大學(xué)期末考試試題(閉卷)_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

四川大學(xué)期末考試試題(閉卷)(2015——2016學(xué)年第1學(xué)期)A卷課程號(hào):303066030課序號(hào):01-11課程名稱:計(jì)算機(jī)基礎(chǔ)及C程序設(shè)計(jì)語言任課教師:成績(jī):適用專業(yè)年級(jí):電氣信息2015級(jí)學(xué)生人數(shù):印題份數(shù):學(xué)號(hào):姓名:考生承諾我已認(rèn)真閱讀并知曉《四川大學(xué)考場(chǎng)規(guī)則》和《四川大學(xué)本科學(xué)生考試違紀(jì)作弊處分規(guī)定(修訂)》,鄭重承諾:1、已按要求將考試禁止攜帶的文具用品或與考試有關(guān)的物品放置在指定地點(diǎn);2、不帶手機(jī)進(jìn)入考場(chǎng);3、考試期間遵守以上兩項(xiàng)規(guī)定,若有違規(guī)行為,同意按照有關(guān)條款接受處理。考生簽名:一、單項(xiàng)選擇題(每題1.5分,共60分)1.C程序書寫格式自由,一行內(nèi)可寫多條語句,且語句中的空格和回車符均可忽略不計(jì),但每條語句和數(shù)據(jù)定義后必須有一個(gè)。 A.逗號(hào) B.句號(hào) C.分號(hào) D.冒號(hào)2.以下描述正確的是。 A.C語言的函數(shù)允許嵌套定義 B.C語言的函數(shù)允許嵌套調(diào)用 C.C語言編譯時(shí)不進(jìn)行語法檢查 D.C語言中轉(zhuǎn)義字符以"/"開頭3.以下敘述中錯(cuò)誤的是。 A.用戶所定義的標(biāo)識(shí)符允許使用關(guān)鍵字 B.用戶所定義的標(biāo)識(shí)符應(yīng)盡量做到“見名知意” C.用戶所定義的標(biāo)識(shí)符必須以字母或下劃線開頭 D.用戶定義的標(biāo)識(shí)符中,大、小寫字母代表不同標(biāo)識(shí)4.以下十六進(jìn)制數(shù)中不合法的是。 A.0xffH B.0Xabc C.0x11 D.0x195.有以下程序:#include<iostream>usingnamespacestd;voidmain(){chara,b,c,*d;a='\'; b='\xbc';c='\0xab'; d="\0127";cout<<a<<b<<c<<*d<<endl;}編譯時(shí)出現(xiàn)錯(cuò)誤,以下敘述中正確的是。 A.程序中只有a='\';語句不正確 B.b='\xbc';語句不正確 C.d="\0127";語句不正確 D.a='\';和c='\0xab';語句都不正確第1頁,共頁試卷編號(hào):6.有以下定義語句: doublea,b; intw; longc;若各變量已正確賦值,則下列選項(xiàng)中正確的表達(dá)式是。 A.a=a+b=b++ B.w%((int)a+b) C.(c+wa)%(int)ab D.w=a=b7.以下選項(xiàng)中可以作為C語言中合法整數(shù)的是。 A.10110B B.0386 C.0Xffa D.x2a28.C語言提供的合法的數(shù)據(jù)類型關(guān)鍵字是。 A.DOUBLE B.short C.integer D.Character9.下列程序執(zhí)行后的輸出結(jié)果是。#include<iostream>usingnamespacestd;intmain() { intx='f';cout<<(char)('A'+(x-'a'+1))<<endl; return0; } A.G B.H C.I D.J10.若有intx,y;,執(zhí)行程序段:for(x=1,y=1;y<50;y++){ if(x>=10) break; if(x%2==1) { x+=5; continue; } x-=3;}變量x的值最終為。 A.10 B.11 C.12 11.以下程序的輸出結(jié)果是。 #include<iostream> usingnamespacestd; intmain() { inta=-1,b=1,k; if((++a<0)&&!(b--<=0)) { cout<<a<<""<<b<<endl; } else { cout<<b<<""<<a<<endl; } return0;} A.-11 B.01 C.10 12.在下列選項(xiàng)中,沒有構(gòu)成死循環(huán)的程序段是。 A. inti=100; while(1) { i=i%100+1; if(i>100)break; }B. for(;;);第2頁,共9頁 C. intk=1000; do { ++k; }while(k>=10000);D. ints=36; while(s); --s;13.有以下程序 #include<iostream>usingnamespacestd;intmain(){ inta=3,b=4,c=5,d=2; if(a>b) if(b>c) cout<<(d+++1); else cout<<(++d+1); cout<<d<<endl; return0; }程序運(yùn)行后的輸出結(jié)果是。 A.2 B.3 C.43 D.4414.有以下程序#include<iostream>usingnamespacestd;intmain(){ inti; for(i=0;i<3;i++) switch(i) { case1:cout<<i; case2:cout<<i; default:cout<<i; } return0;}執(zhí)行后輸出結(jié)果是。 A.011122 B.012 C.012020 D.12015.若有以下定義:floatx;inta,b;則正確的switch語句是。 A. switch(x) { case1.0:cout<<"*\n"; case2.0:cout<<"**\n"; }B. switch(x) { case1,2:cout<<"*\n"; case3:cout<<"**\n"; } C. switch(a+b) { case1:cout<<"\n"; case1+2:cout<<"**\n"; }D. switch(a+b) { case1,cout<<"*\n"; case2,cout<<"**\n";

}16.變量a、b、x已經(jīng)定義并正確賦值,以下五條語句中有是合法的。 if(a=b)x++; if(a=<b)x++; if(a-b)x++; if(a<=b<=c)x++; if(1)x++; A.1 B.2 C.3 D.第3頁,共9頁17.以下程序段的輸出結(jié)果是。 intx=3; do { cout<<(x-=2)<<""; }while(!(--x)); A.1 B.30 C.1-2 D.死循環(huán)18.以下程序: #include<iostream> usingnamespacestd; intmain() { intn[2]={0},i,j,k=2; for(i=0;i<k;i++) for(j=0;j<k;j++) n[j]=n[i]+1; cout<<n[k]<<endl; return0; }其輸出結(jié)果是。 A.1 B.2 C.3 19.以下對(duì)二維數(shù)組a進(jìn)行不正確初始化的是。 A.inta[][3]={3,2,1,1,2,3}; B.inta[][3]={{3,2,1},{1,2,3}}; C.inta[2][3]={{3,2,1},{1,2,3}}; D.inta[][]={{3,2,1},{1,2,3}};20.下面程序的輸出結(jié)果為。 #include<iostream> usingnamespacestd; intmain() { inta[3],i,j,k=2; for(i=0;i<3;i++) a[i]=0; for(i=0;i<k;i++) for(j=0;j<k;j++) a[j]=i*j; cout<<a[2]<<endl; return0; } A.0 B.1 C.2 21.以下對(duì)字符數(shù)組word進(jìn)行不正確初始化的是。 A.charword[]='Turbo\0'; B.charword[]={'T','u','r','b','o','\0'}; C.charword[]={"Turbo\0"}; D.charword[]="Turbo\0";22.若程序中有如下的說明和定義: structexep {intx,y;} structexepx,y;則會(huì)發(fā)生的情況是。 A.編譯時(shí)出錯(cuò) B.能通過編譯、連接、執(zhí)行 C.能通過編譯但連接出錯(cuò) D.能通過編譯、連接,但不能執(zhí)行23.對(duì)兩個(gè)數(shù)組a,b初始化如下: chara[]="abcdef"; charb[]={'a','b','c','d','e','f'};則下列敘述正確的是。 A.a,b完全相同; B.a,b數(shù)組只有長(zhǎng)度相同; C.a,b不同,a是指針數(shù)組; D.a的數(shù)組長(zhǎng)度比b數(shù)組長(zhǎng);第4頁,共9頁24.表達(dá)式strcmp("box","bottle")的值是。 A.正整數(shù) B.負(fù)整數(shù) C.0 D.不確定的數(shù)25.若有定義:intx=0,*p=&x;,則語句cout<<*p<<endl;的輸出結(jié)果是。 A.隨機(jī)值 B.0 C.x的地址 26.有以下程序 #include<iostream> usingnamespacestd; structs { intx; inty; }data[2]={10,100,20,200}; intmain() { structs*p=data; cout<<(++(p->x))<<endl; return0; }程序運(yùn)行后的輸出結(jié)果是。 A.10 B.11 C.20 27.設(shè)有下面的程序段: chars[]="china";char*p;p=s;則以下敘述正確的是。 A.數(shù)組s中的內(nèi)容和指針變量p中的內(nèi)容相等 B.s和p完全相同 C.s數(shù)組長(zhǎng)度和p所指向的字符串長(zhǎng)度相等 D.*p與s[0]相等28.下面程序的運(yùn)行結(jié)果是。 #include<iostream>

usingnamespacestd; intmain() { inta[]={1,2,3,4,5,6,7, 8,9,10,11,12}; int*p=a+5,*q=NULL; *q=*(p+5); cout<<*p<<""<<*q<<endl;

return0;

} A.運(yùn)行后報(bào)錯(cuò) B.55 C.66 29.設(shè)有如下定義: char*a[3]={"aa","bb","cc"};則以下說法正確的是。 A.a數(shù)組第二個(gè)元素的值是"bb" B.輸出"cc"使用語句cout<<a[2]<<endl; C.a數(shù)組的三個(gè)元素分別存放的是含有2個(gè)字符的一維字符數(shù)組 D.a數(shù)組的三個(gè)元素中各自存放了字符'a','b'和'c'30.有以下函數(shù)定義: voidfun(intn,doublex){……}若以下選項(xiàng)中的變量都已經(jīng)正確定義并賦值,則對(duì)函數(shù)fun的正確調(diào)用語句是。 A.fun(inty,doublem); B.k=fun(10,12.5); C.fun(x,n); D.voidfun(n,x);第5頁,共9頁31.以下程序: #include<iostream> usingnamespacestd; intfunc(inta,intb) { intc; c=a+b; returnc; } intmain() { intx=6,y=7,z=8,r; r=func((x--,y++,x+y),z--); cout<<r<<endl; return0; }其輸出結(jié)果是。 A.11 B.20 C.21 32.以下程序 #include<iostream> usingnamespacestd; doublef(intn) { inti; doubles=1.0; for(i=1;i<=n;i++)s+=1.0/i; returns; } intmain() { inti,m=3; doublea=0.0; for(i=0;i<m;i++)a+=f(i); cout<<a<<endl; return0; }其輸出結(jié)果是。 A.3 B.4 C.5.5 D.8.533.下面敘述中正確的是。 A.對(duì)于用戶自己定義的函數(shù),在使用前必須加以申明 B.申明函數(shù)時(shí)必須明確指明其參數(shù)名稱和返回類型 C.函數(shù)可以返回一個(gè)值,也可以什么值也不返回 D.空函數(shù)不完成任何操作,所以在程序設(shè)計(jì)中不允許存在34.下面函數(shù)的功能是。intsss(char*s,char*t){ while((*s)&&(*t)) { if(*s!=*t) break; s++; t++; } return(*s-*t);} A.求字符串的長(zhǎng)度 B.比較兩個(gè)字符串的大小 C.將字符串s復(fù)制到字符串t中 D.將字符串s接續(xù)到字符串t中35.以下不正確的說法是。 A.在不同的函數(shù)中可以使用名稱相同的變量 B.在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效 C.形式參數(shù)是局部變量 D.在函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效第6頁,共9頁36.設(shè)有以下函數(shù) #include<iostream> usingnamespacestd; intf(inta); voidmain() { inta=2,i; for(i=0;i<3;i++) cout<<f(a)<<endl; } intf(inta) { intb=0; staticintc=3; b++;c++; return(a+b+c); }其輸出結(jié)果是。 A. 7 7 7B. 7 8 9C. 7 9 11D. 7 10 1337.以下敘述中正確的是。 A.全局變量的作用域一定比局部變量的作用域范圍大 B.靜態(tài)(static)類別變量的生存期貫穿于整個(gè)程序的運(yùn)行期間 C.函數(shù)的形參都屬于全局變量 D.未在定義語句中賦初值的auto變量和static變量的初值都是隨機(jī)值38.StudentInfo是已定義好的一個(gè)描述學(xué)生信息的結(jié)構(gòu)類型,已有如下語句:StudentInfostuList[20];intn=sizeof(StudentInfo);StudentInfo*p=stuList+5;則語句fin.read((char*)p,n);的功能是。 A.從文本文件中讀取長(zhǎng)度為n的字符串存入指針p所指的內(nèi)存 B.從文本文件中讀取1個(gè)StudentInfo數(shù)據(jù)存入指針p所指的內(nèi)存 C.從二進(jìn)制文件中讀取1個(gè)StudentInfo數(shù)據(jù)存入指針p所指的內(nèi)存 D.從二進(jìn)制文件中讀取n個(gè)StudentInfo數(shù)據(jù)存入指針p所指的內(nèi)存39.從一個(gè)文件中讀一個(gè)字節(jié)存于charc;正確的語句為。 A.file.read(c,sizeof(c)); B.file.read((char*)(&c),sizeof(c)); C.file.read(&c,sizeof(c)); D.file.read((char*)c,sizeof(c);40.要求打開文件D:\file.dat,并能夠?qū)懭霐?shù)據(jù),正確的語句是。 A.ifstreaminfile("D:\\file.dat",ios::in); B.ifstreaminfile("D:\\file.dat",ios::out); C.ofstreamoutfile("D:\\file.dat",ios::in); D.fstreaminfile("D:\\file.dat",ios::in|ios::out);第7頁,共9頁二、寫出下列程序的運(yùn)行結(jié)果(每題4分,共20分)1.#include<iostream> usingnamespacestd; intmain() { charx,y; cout<<"Enteracharacter:"; x=getchar(); y=getchar(); cout<<"Enteracharacter,again:"; x=getchar(); y=getchar(); cout<<x<<","<<y<<endl;

return0; }先輸入a<CR>后輸入b<CR>2.#include<iostream> usingnamespacestd; intmain() { inti,j; for(i=1;i<=4;i++) { for(j=28-i*2;j>=1;j--) cout<<""; for(j=1;j<=2*i-1;j++) cout<<"*"; cout<<endl; } for(i=3;i>=1;i--) { for(j=28-i*2;j>=1;j--) cout<<""; for(j=1;j<=2*i-1;j++) cout<<"*"; cout<<endl; } return0; }3.#include<iostream> #include<string.h> usingnamespacestd; voidmain() { charstr1[]="Howdoyoudo"; strcpy(str1+strlen(str1)/2, "esshe?"); puts(str1); }4.#include<iostream> usingnamespacestd; intmain() { inta[]={1,2,3,4,5}; int*p=a; cout<<(*++p)<<","; cout<<(*p++)<<","; cout<<((*p)++)<<","; cout<<(++*p)<<endl; return0; }5.#include<iostream> #include<string.h> usingnamespacestd; voidunknown(chars[],chart[]) { inti=0,j=0; while(*(s+i)!='\0')i++; for(j=0;j<strlen(t);j++) { s[i]=t[j]; i++; } s[i]='\0'; } voidmain(){ charstr1[11]="ccafc"; charstr2[6]="12345"; unknown(str1,str2); cout<<str1<<endl; }第8頁,共9頁三、程序填空(每空2分,共20分)1.以下程序的功能是:從鍵盤上輸入若干個(gè)學(xué)生的成績(jī),統(tǒng)計(jì)計(jì)算出平均成績(jī),并輸出低于平均分的學(xué)生成績(jī),用輸入負(fù)數(shù)結(jié)束輸入。#include<iostream>usingnamespacestd;intmain(){floatx[1000],sum=0.0,ave,a;intn=0,i;cout<<"Entermark:"<<endl;cin>>a;while(a>=0.0&&n<1000){sum=sum+a;;x[n]=【1】;n++;cin>>a;}ave=【2】;cout<<"Output:"<<endl;cout<<"ave="<<ave<<endl;for(i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論