西華大學(xué)C語言程序設(shè)計(jì)復(fù)習(xí)題參考_第1頁
西華大學(xué)C語言程序設(shè)計(jì)復(fù)習(xí)題參考_第2頁
西華大學(xué)C語言程序設(shè)計(jì)復(fù)習(xí)題參考_第3頁
西華大學(xué)C語言程序設(shè)計(jì)復(fù)習(xí)題參考_第4頁
西華大學(xué)C語言程序設(shè)計(jì)復(fù)習(xí)題參考_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題 C 語言程序設(shè)計(jì)考試題型示例& 復(fù)習(xí)例程一、單項(xiàng)選擇題1.以下四組變量標(biāo)識符均為合法的就是( B ) 。A)cosx_Value、CASE、sin(x)B)Sum_Value、x01_value、xxxC)a_b_c_01、D)Num# 、abc_01、X_value_A2.設(shè)有二維數(shù)組定義 :float a33 ;假設(shè) &a00= =2001H, 則&a22= =( C ) 。A)2010HB)2036HC)2021HD)2024H3.設(shè)有整型變量x 與 y,且 x=y=10; 則計(jì)算表達(dá)式 x=(x+ , y+) , x+y; 后

2、x 的值為( D)A)11B)20C)22D)104.如果要使用一維數(shù)組 ,其正確的定義就是 (D)A)int array ;B)constn=10, arrayn;C)int n, arrayn; cin>>n;D)int n=5, *array=new int n;5.下述函數(shù) myfun 的功能就是 ( C )int myfun(char s ,char t )(A) 將字符串 t 復(fù)制到字符串 schar *ps=s,*pt=t;(B)將串 s 連接到串 t 的尾部while(*ps)ps+;(C)將串 t 連接到串 s 的尾部whie(*pt)*ps+=*pt+;(D)將

3、字符串 s 復(fù)制到字符串 t*ps=0;6.下面的程序運(yùn)行后的輸出結(jié)果就是 ( A )void s *x,int *y)main( )int *t;int a=111,b=333;t=*x;*x=*y;*y=t;s);cout<<a<<t<<b<<endl;(A)111333(B)333111(C)111111(D)3333337.下面的程序運(yùn)行后的輸出結(jié)果就是 ( A )intx=100;main( )void myfun()int x=100;int i;myfun( );for(i=1;i<=10;i+)x+;cout<<

4、x<<endl;(A)100(B)110(C)0(D)隨機(jī)值8.程序段 char str110=”Hello”, str210=”Hello! ”;if(strcmp( str1,str2 )puts(“Yes”) ; else puts(“No”); 的輸出結(jié)果就是 ( B)A)NoB)YesC)語法錯誤D)無輸出結(jié)果9.下面的程序段的輸出結(jié)果就是 ( B ) int a33=11,22,33,44,55,66,77,88,99;西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題int *p=a0+1;cout<<*p<< t<<*(*(a+1)+1)<&

5、lt;endl;A)1113B)2255C)1111D)121110.函數(shù)調(diào)用 :strstr(strcat(str1,str2),str3)的功能就是 (C ) A) 將串 str1 復(fù)制到串 str2 中后再連接到串 str3 之后B)將串 str1 連接到串 str2 之后 ,再在 str1 中定位串 str3 C)將串 str2 復(fù)制到串 str1 中后再將串 str3 連接到串 str1 之后D)將串 str2 連接到串 str1 之后 ,再在 str1 中定位 str311.設(shè)有結(jié)構(gòu)體類型 stuNode 的定義如下 ,則 sizeof(stuNode)的大小就是 ( B )個字節(jié)

6、 :typedef struct studentint num;A)16char name8;B)20float score;C)24struct student *next;D)17stuNode;12.關(guān)于 C 語言 ,以下敘述中正確的就是 (D)。A) 構(gòu)成 C 程序的基本單位就是文件B)可以在一個函數(shù)中定義另一個函數(shù)C)main()函數(shù)必須放在其它函數(shù)之前D)除 main()以外的函數(shù)也可以調(diào)用自身13.程序設(shè)計(jì)的三個層次由低到高的順序就是(A)A) 機(jī)器語言程序設(shè)計(jì)匯編語言程序設(shè)計(jì)高級語言程序設(shè)計(jì)B)匯編語言程序設(shè)計(jì)機(jī)器語言程序設(shè)計(jì)高級語言程序設(shè)計(jì)C)高級語言程序設(shè)計(jì)匯編語言程序設(shè)計(jì)

7、機(jī)器語言程序設(shè)計(jì)D)機(jī)器語言程序設(shè)計(jì)高級語言程序設(shè)計(jì)匯編語言程序設(shè)計(jì)14.下面的程序段執(zhí)行后 ,x、sum 的值就是 ( D )int x=1,sum=0;while(x+)if(sum>=10)break ; if(x%2)continue ; sum=sum+x ;A)6,10B)6,12C)7,10D)7,1215.關(guān)于以下函數(shù)的功能 ,正確的描述就是 ( C )void fun(int a C,int R)int i,j;A) 輸出矩陣全部元素for(i=0;i< R;i+)B)輸出矩陣上半三角for(j=0;j< C;j+)C)輸出矩陣下半三角if(j>i)c

8、ontinue ; cout<<setw(3)<<aij); D) 沒有什么輸出結(jié)果 cout<<endl;西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題16.在函數(shù)調(diào)用時 ,以下敘述中正確的就是 ( A)A )實(shí)參與其對應(yīng)形參各占獨(dú)立的存儲單元B)實(shí)參與其對應(yīng)形參共占同一個存儲單元C)只有實(shí)參與其對應(yīng)形參同名時才共占同一存儲單元D)形參就是一種虛擬的參數(shù) ,不占存儲單元17.若用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,則實(shí)際傳遞給形參的就是( A)A) 數(shù)組首地址B)數(shù)組首元素C)數(shù)組全部元素D) 數(shù)組元素個數(shù)18.C 語言中 ,函數(shù)形式參數(shù)的默認(rèn)存儲類別就是( B)A)extern

9、B)autoC)registerD)static19.下面的程序運(yùn)行后的輸出結(jié)果就是( A)int x=100;main( )void myfun(int *p)int i,x=*p;myfun(&x);for(i=1;i<=10;i+)x+;cout<<x<<endl;(A)100(B)110(C)0(D)隨機(jī)值20.設(shè)有結(jié)構(gòu)體數(shù)組及指針的定義如下,其下列引用非法的就是 ( D)struct studentint num ;float score ;stu3=101,95,102,89,103,75 ,*p=stu;A)(p+)->num;B)(p

10、+1)->score; C)(*p) 、numD)p=&stu 、score二、程序填空題1.函數(shù) DecTo2816(int d,int r)的功能就是將十進(jìn)制整數(shù)d 轉(zhuǎn)換為 r 進(jìn)制數(shù)的形式 ,實(shí)現(xiàn)方法就是輾轉(zhuǎn)除取余,將每次取得的余數(shù)轉(zhuǎn)換為字符存入字符數(shù)組trans后反向輸出。void DecTo2816(int d , int r) int res , i=0 ; char trans33='0' while(d) res=d%r;/取余數(shù)if(res<=9)transi+=0+res【 1】 ;/余數(shù) <=9,如何存入字符?else0+res%

11、10【2】; / 若 r=16,1015 的余數(shù)如何轉(zhuǎn)換?d=d/r;while(i>=0)put char(transi-)【 3】 ;/反向輸出西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題trans 中的字符2.本程序功能就是將兩個遞增整數(shù)表LA=(3,5,8,11) 與 LB=(2,6,8,9,11,15,20)歸并到新的整數(shù)表LC=(2,3,5,6,8,8,9,11,11,15,20)。整數(shù)表均采用單向鏈表存儲。#include<stdio 、 h>typedef struct elem/鏈表結(jié)點(diǎn)類型intNode 的定義int v;/數(shù)據(jù)域 ,存儲整數(shù)struct elem *

12、next;/指針域intNode;intNode *CreateList(intNode *Head , int n)/函數(shù) :創(chuàng)建能存儲n 個整數(shù)的鏈表intNode *pnew,*pend ; int i; /pnew 用于創(chuàng)建新結(jié)點(diǎn) ,pend 為輔助指針 for(i=1;i<=n;i+) pnew=new intNode; cin>>pnew->v;if(Head=NULL) Head=pnew【 4】 ;/ 若當(dāng)前頭指針為空,應(yīng)賦什么值else pend->next=pnew; / 新結(jié)點(diǎn)接入當(dāng)前尾部結(jié)點(diǎn)之后 pend=pnew ; pend->n

13、ext=NULL; /pend 更新 ,當(dāng)前尾結(jié)點(diǎn)指針域賦空return(Head);/返回鏈表頭指針/ 以下 MergeList( ) 函數(shù) ,歸并 LA、 LB 到 LCintNode *MergeList(intNode *LA,intNode *LB,intNode *LC) intNode *pa=LA,*pb=LB,*pnew,*pend;while(pa&&pb【5】) /當(dāng) pa 與 pb 不為空時pnew=(intNode*)malloc(sizeof(intNode);/為 LC 創(chuàng)建新結(jié)點(diǎn)if(pa->v<=pb->v)/若結(jié)點(diǎn) pa 的

14、 v 值小于或等于pb 結(jié)點(diǎn)的 v 值 pnew->v=pa->v;/LC 的新結(jié)點(diǎn)的 v 賦值為 pa 結(jié)點(diǎn)的 v 值pa=pa->next;/當(dāng)前結(jié)點(diǎn)處理完畢 ,pa 指針下移elsepnew->v=pb->v【 6】 ;pb=pb->next【7】 ;if(LC=NULL)LC=pnew;/當(dāng)前 LC 鏈表還為空else pend->next=pnew;pend=pnew ;pend->next=NULL;while(pa!=NULL)/如果 LA 比 LB 長,將剩余部分接入LC西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題 pnew=new intN

15、ode; pnew->v=pa->v ; pa=pa->next;pend->next=pnew ; pend=pnew ; pend->next=NULL;while(pb!=NULL)/如果 LB 比 LA 長,將剩余部分接入LC pnew=new intNode;Pnew->v=pb->v【8】;pb=pb->next【 9】;pend->next=pnew ; pend=pnew ; pend->next=NULL;Return LC【10】 ;/此函數(shù)應(yīng)返回什么值void main(void) /以 LA=(3,5,8,11

16、) 與 LB=(2,6,8,9,11,15,20)為實(shí)例數(shù)據(jù) intNode *LA=NULL,*LB=NULL,*LC=NULL;LA= CreateList(la 4)【11】 ;/創(chuàng)建鏈表 LALB=CreateList(LB 7)【 12】;/創(chuàng)建鏈表 LBLC=MergeList(LA,LB,LC);/歸并 LA 與 LB 到 LC3.以下函數(shù)功能就是使用對分法在遞增排序的整型數(shù)組a 中查找指定元素SearchNum, 算法思想就是 : 取數(shù)組的中點(diǎn)下標(biāo) c,若 ac=SearchNum 則找到 ,若 SearchNum> ac, 則查找范圍縮小為右半 ,否則縮小為左半 ,依此

17、循環(huán)直到查找范圍不能再縮小為止。void BisectSearch(int a , int n)/n 為數(shù)組長度 ,即元素個數(shù)int s=0 , e=n-1 , c;/s 與 e 分別為查找范圍的起點(diǎn)與終點(diǎn)下標(biāo),c 為中點(diǎn)int flag=0 , SearchNum; /flag作為就是否找到的標(biāo)志,SearchNum 待查找cin>>SearchNum;if(a0=SearchNum)/判斷數(shù)組首元素cout<<"Fount it: a0="<<SearchNum ; return;if(an-1=SearchNum)/判斷數(shù)組尾元素c

18、out<<"Found it: a"<<n-1<<"="<<SearchNum ; return;while(el=(s+1)【13】 )/e=s+1 時 ,查找范圍不能再縮小 c=(s+e)/2; /取數(shù)組的中點(diǎn)下標(biāo)if(ac=SearchNum)flag=1【14】;break【15】 ;else if(ac<SearchNum) s=c【 16】 ;/更新 s 還就是 e?elsee=c【 17】;/更新 s 還就是 e西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題if(flag=1)cout<<

19、"Fount it! a"<<c<<"="<<ac);else cout<<"Not found!"<<endl;4.下列函數(shù) LocateSubString(char *s , char *t)的功能就是在字符串s 中定位字符串 t 并返回首次出現(xiàn)的位置(又稱模式匹配 ,s 稱目標(biāo)串 ,t 稱模式串 )。char *LocateSubString(char *s,char *t)int s_len=strlen(s) , t_len=strlen(t);/求串 s 與 t

20、的長度char *ps=s,*pt=t , *pa;/ps 與 pt 分別指向 s 與 t 的首字符 ,pa 為輔助指針int flag=0;/標(biāo)志變量 ,找到 t 為 1,否則為 0while(ps<=s+s【18】 ) /ps 指針最多只能移動到什么地方? pa=ps ; pt=t;/為本輪匹配運(yùn)算做準(zhǔn)備工作while(*pt!='0')/pt 指針往下移動直到串尾if(*pa=*pt)/如果對應(yīng)字符相等 ,如何處理?flag=1;pa+【 19】;pt+【20】;else/對應(yīng)字符不相等 ,也就就是不匹配 flag=0 ; break; /不匹配 ,提前結(jié)束內(nèi)層循環(huán)

21、/while 內(nèi)層循環(huán)if(flag=1)break;/上面的內(nèi)層循環(huán)結(jié)束,flag=1 說明找到了子串telse ps+;/本輪結(jié)束后 ,沒找到子串t,ps 下移一個字符/while 外層循環(huán)if(flag=1) return ps;/當(dāng)前 ps 即子串 t 首次出現(xiàn)的位置else return "0"/返回空串三、編制程序題1.編寫一個函數(shù) sort(int a,int n), 實(shí)現(xiàn)任意長度一維整型數(shù)組的元素排序 ,在 main( ) 中完成一維數(shù)組的定義與初始化 ,調(diào)用 sort( ) 函數(shù)后輸出排序的結(jié)果。2.編程實(shí)現(xiàn) :求 119999之間的 m,使?jié)M足 m 、m

22、2、m3 均為回文數(shù)。例如 121、1221、43634 等即為回文數(shù)。要求將求得的 m 存儲到一個動態(tài)數(shù)組之中并輸出。四、參考例程1、簡單的學(xué)生成績管理演示程序/文件包含及命名空間的使用語句,此處省略/結(jié)點(diǎn)類型定義typedef struct student int ID;西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題char name16;float score;struct student *next;StuNode;/存儲文件的函數(shù) void Save *Head) int k=0; if(Head=NULL)cout<<" 鏈表為空 ,無法存儲文件! "<&l

23、t;endl; system("pause");return;fstream outfile;out(" 、Stu、 dat",ios:out); StuNode *pt=Head;while(pt) k+; out(char*)pt,sizeof(StuNode); pt=pt->next;out();cout<<" 創(chuàng)建結(jié)點(diǎn)數(shù) ="<<k<<endl;/讀取文件的函數(shù)StuNode *ReadFile() int k=0;StuNode *Head=NULL,*pnew=NULL,*pai

24、d=NULL; ifstream infile;in(" 、Stu、dat",ios:in); if(in() cout<<" 文件不存在 ,打開失??! "<<endl; system("pause");return Head;while(!in() pnew=new StuNode; pnew->next=NULL;西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題in(char*)pnew,sizeof(StuNode);if(in()<0) delete pnew; break;k+;if(Head=NULL)

25、 Head=pnew;paid=pnew; paid->next=NULL;else paid->next=pnew; paid=pnew; paid->next=NULL;/while, 讀文件結(jié)束 in();cout<<" 讀取結(jié)點(diǎn)數(shù) ="<<k<<endl; return Head;/創(chuàng)建學(xué)生信息鏈表的函數(shù)StuNode *CreateList(StuNode *Head)StuNode *pnew,*paid,*ps,*pe;cout<<" 開始創(chuàng)建學(xué)生鏈表 ,輸入學(xué)號為 0 或負(fù)則停止 :

26、"<<endl;for(;) pnew=new StuNode; pnew->next=NULL; cout<<" 學(xué)號 :" cin>>pnew->ID; if(pnew->ID<=0) delete pnew; break;cout<<" 姓名 :" fflush(stdin);cin 、getline(pnew->name,15);西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題cout<<" 成績 :" cin>>pnew->

27、score; if(Head=NULL) Head=pnew; pnew->next=NULL; paid=pnew;else if(pnew->ID<=Head->ID) pnew->next=Head;Head=pnew;else if(pnew->ID>=paid->ID) paid->next=pnew; pnew->next=NULL; paid=pnew;else ps=Head; pe=ps->next;while(pnew->ID>=pe->ID) ps=ps->next;pe=pe-&g

28、t;next;ps->next=pnew; pnew->next=pe;return Head;/輸出鏈表的函數(shù)void PrintList(StuNode *Head)(省略 )/主函數(shù) void main( ) StuNode *Head=NULL; Head=CreateList(Head); Save); Head=ReadFile();西華大學(xué) C 語言程序設(shè)計(jì)復(fù)習(xí)題PrintList(Head);system("pause");一、 選擇題參考答案15:BCDDC610:AABBC1115: BDADC1620: AABAD二、 程序填空題參考答案【

29、 1】 0+res【2】 A+res%10【 3】 putchar(transi-)【4】 Head=pnew【 5】 pa&&pb【6】 pnew->v=pb->v【 7】 pb=pb->next【8】 pnew->v=pb->v【 9】 pb=pb->next【10】 return LC【 11】 CreateList(LA, 4)【12】 LB=CreateList(LB,7)【 13】 e!=(s+1)【14】 flag=1【 15】 break【16】 s=c【 17】 e=c【18】 s+s_len-t_len【 19】 pa+【20】 pt+衛(wèi)生管理制度1總則1.1為了加強(qiáng)公司的環(huán)境衛(wèi)生管理,創(chuàng)造一個整潔、文明、溫馨的購物、辦公環(huán)境,根據(jù)公共場所衛(wèi)生管理?xiàng)l例的要求,特制定本制度。1.2集團(tuán)公司的衛(wèi)生管理部門設(shè)在企管部,并負(fù)責(zé)將集團(tuán)公司的衛(wèi)生區(qū)域詳細(xì)劃分到各部室,各分公司所轄區(qū)域衛(wèi)生由分公司客服部負(fù)責(zé)劃分,確保無遺漏。2衛(wèi)生標(biāo)準(zhǔn)2.1室內(nèi)衛(wèi)生標(biāo)準(zhǔn)2.1.1地面、墻面:無灰塵、無紙屑、無痰跡、無泡泡糖等粘合物、無積水,墻角無灰吊、無蜘蛛網(wǎng)。2.1.2門、窗、玻璃、鏡子、柱子、電梯、樓梯、燈具等,做到明亮、無灰塵、無污跡、無粘合物,特別是玻璃,要求兩面明亮。2.1.3柜臺、貨架:清

溫馨提示

  • 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

提交評論