2012年湖南省對口高考C語言試題(含答案)_第1頁
2012年湖南省對口高考C語言試題(含答案)_第2頁
2012年湖南省對口高考C語言試題(含答案)_第3頁
2012年湖南省對口高考C語言試題(含答案)_第4頁
2012年湖南省對口高考C語言試題(含答案)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、湖南省計(jì)算機(jī)應(yīng)用類專業(yè)綜合知識(shí)高考(2012)c語言試題含答案 2012年湖南省對口高考計(jì)算機(jī)c語言試題一、單選題(在本題的每一小題的備選答案中,只有一個(gè)答案是正確的,本大題共3小題,每小題5分,共15分)2012年20以下正確的c語言自定義標(biāo)識(shí)符是 aint ba.3 c_7c d5d_2012年21已知i=3,執(zhí)行j=i+后,i和j的值分別為 ai=4 -2 bi=4 j=3 ci=3 j=3di=3 j=22012年 22c語言中,以下語句能跳過循環(huán)體中未執(zhí)行的語句,接著執(zhí)行本循環(huán)下一次迭代的語 句是 a空語句 bbreak語句 creturn語句dcontinue語句二、基本操作題(每

2、空3分,共12分)2012年28c語言中,文件操作fopen函數(shù)的原型為file * fopen(char *filename, char *mode),用于打開一個(gè)指定文件,若成功則返回一個(gè)與之關(guān)聯(lián)的流,否則返回 null(或0) ;代碼片段file * fp=fopen("c:test.dat","a")的含義是以 追加 的方式打開路徑"c:test.dat"對應(yīng)的文件,當(dāng)訪問的文件是二進(jìn)制文件時(shí),還需要在字符串“a”后增加一個(gè)字符 b ,以上代碼片段對應(yīng)的關(guān)閉文件的c語言代碼是fclose(fp); 。三、綜合應(yīng)用題(每小題20

3、分,每空5分,共20分)2012年3130人參觀博物館共花50美元,其中成年男子門票為3美元/人,成年女子2美元/人,小孩1美元/人。編程輸出成年男子、成年女子和小孩人數(shù)的所有組合。題目分析如下:設(shè)x,y,z分別代表成年男子、成年女子和小孩人數(shù)。按題目要求,可得下面方程:x+y+z=30(1)3x+2y+z=50(2)用程序求此不定方程的非負(fù)整數(shù)解,可先通過(2)-(1)式得:2x+y=20 (3)由(3)式可知,x變化范圍是0-10 根據(jù)以上分析編寫程序如下:#include<stdio.h>main()int x,y,z; /*x,y,z分別代表成年男子、成年女子、小孩人數(shù)*/

4、printf("men women chlidrenn");for(x=0; x<=10 ;x+) _y=20-2*x_; /*按照(3)式根據(jù)x求y*/_z=30-x-y_ _; /*由(1)式求得z*/if(3*x+2*y+z=50) *當(dāng)前得到的一組解是否滿足式(2)*/printf("d d dn",x,y,z); 四、程序分析題(本大題共3小題,共75分)2012年33閱讀程序,寫出運(yùn)行結(jié)果(每空5分,共25分) (1) #include<stdioh> main() int a=3,b=4; a=b+=a+=(a+b); p

5、rintf("d,d",a,b); 運(yùn)行結(jié)果是_10,14_(2) #include<stdioh> main() int x=2,y=7,z=5;switch(x>2) case 1:switch(y>0) case 1:printf("1");break; case 2:printf("2");break; case 0:switch(z=5) case 0:printf("3");break; case 1:printf("4");break; default:pr

6、intf("5");break; default:printf("6"); 運(yùn)行結(jié)果是_46_(3) #include<stdioh> main() int a=8,y=0; do a+=2: y+=a; if(y>30) break; while(a=10); printf("a=d y=dn",a,y); 運(yùn)行結(jié)果是_a=12 y=34_(4) #include<stdioh> func(int a,int b) return a=a+b,ab; main() int x=9,y=7,z=3,rels

7、; rels=func(func(x,y),z); printf("dn",l<<rels); 運(yùn)行結(jié)果是_ 4_ (5) #include<stdioh> main() char ch25="1981","0921",*p2; int i,j,s=0; for(i=0;i<2;i+) pi=chi; for(i=0;i<2;i+) for(j=1;j<=3;j+=2) s=10*s+pij-'0' printf("d",s); 運(yùn)行結(jié)果是_ 9191_20

8、12年34程序填空。按照題目要求,將正確內(nèi)容填入答題卡相應(yīng)位置,使程序完整(每空5分, 共25分) (1)下面程序輸出x,y,z三個(gè)數(shù)中的最大值。 #include<stdio.h> main() int x=3,y=7,z=6; int a,b; a=x<y? y:x ; b=a<z? z:a ; printf("d",b); (2)下面程序接受鍵盤上的輸入,直到按回車鍵為止,然后將輸入的字符串輸出,輸出時(shí)如果原輸入字符是英文大寫字母則轉(zhuǎn)成小寫字母輸出,如果是小寫字母則轉(zhuǎn)成大寫字母輸出,如果有連續(xù)的一個(gè)以上的空格時(shí)只輸出一個(gè)空格。 #include

9、<stdio.h> main() char cx,pre='0' while( (cx=getchar() !='n') if(cx!=' ') if(cx>='a'&&cx<='z') putchar(cx-32); else if(cx<'z'&&cx>='a') if(cx>=a&&cx<=z) putchar(cx+32) _; else putchar(cx); else if(

10、pre!=' ') putchar(cx); _pre=cx_; ; 2012年35閱讀程序,修改程序中的錯(cuò)誤,不得增行或刪行,也不得更改程序結(jié)構(gòu)。請?jiān)诖痤} 卡中指出錯(cuò)誤所在的行號(hào),并給出該行修改后的程序代碼。(每空5分,共25分) (1)以下程序用于輸入兩個(gè)學(xué)生的姓名和成績,然后輸出這兩個(gè)學(xué)生的平均成績,運(yùn)行結(jié)果如圖7所示。程序中存在3處錯(cuò)誤。input scores of student1name:lilyscore:05input scores of student2name:lucyscore:09avg score is : 07.0圖 7 ll #include&l

11、t;stdioh> l2 define n2 改為:#define n 2 l3 struct student l4 l5 char name4; l6 float score; l7 ; l8 main() l9 l10 struct student stun; l11 int i=0; l12 for(;i<n;i+) l13 l14 printf("input scores of student%d:n",i+1); l15 printf("name:"); l16scanf("s",); l17

12、printf("score:"); l18scanf("f",stui.score); 改為:scanf("f",&stui.score); l19 l20float rels=0; l21for(;i<n;i+) 改為: for(i=0;i<n;i+) l22 l23rels+=stui.score; l24 l25printf("avg score is:3.2f",relsn); l26 (2)以下程序?qū)?shù)組中元素逆序輸出,運(yùn)行結(jié)果如圖8所示。程序中存在2處錯(cuò)誤。dd cc bb aa圖8

13、 l1#include<stdioh> l2main() l3 l4char *array="aa","bb","cc","dd"; l5char (*pt) ; 改為:char *pt; l6int j; l7pt=array+3; l8for(j=3;j>=0;j-) l9printf("s ",*(pt)j);改為:printf("s ",*(pt-); l10 五、程序設(shè)計(jì)題(本大題25分,每空5分)2012年36merge函數(shù)用于將兩個(gè)升序的鏈表h

14、ead1和head2合并成一個(gè)鏈表,并保持合并后鏈表依然升序。排序的依據(jù)為結(jié)構(gòu)體類型node中的data成員,合并中不得刪除節(jié)點(diǎn)。下面給出merge函數(shù)的主體框架,在空出的五個(gè)位置補(bǔ)充該主體框架缺失的代碼段。注意:不能定義新的變量,可不用已定義的某些變量。 typedef struct node int data; struct node *next; node; node *merge(node *head1,node *head2) if ( head1=null) return head2; if(head2=null) return headl; node *head=null;/he

15、ad指針用于指向合并后鏈表的頭結(jié)點(diǎn) node *pl=null; node *p2=null; if(headl->data<head2->data) head=headl; _p1=head1->next;_ p2=head2; else head=head2; _p2=head2->next;_ pl=headl; node *pcurrent=head; while(p1!=null&&p2!=null) if(pl->data<=p2->data) pcurrent->next=p1; _ _ pcurrent =

16、p1;_ p1=pl->next; else pcurrent->next=p2; _pcurrent = p2;_ p2=p2->next; if(pl!=null) _ pcurrent->next=p1;_ if(p2!=null) pcurrent->next=p2; return head; 2012年湖南省對口高考計(jì)算機(jī)c語言試題答卷含答案一、單選題(每小題5分,共15分)123cbd二、基本操作題(每空3分,共12分)1null(或0)2追加3b4fclose(fp);三、綜合應(yīng)用題(每小題20分,每空5分,共20分)10-102x<=103y

17、=20-2*x4z=30-x-y四、程序分析題(本大題共3小題,共75分)33閱讀程序,寫出運(yùn)行結(jié)果(每空5分,共25分)(1) 運(yùn)行結(jié)果是_10,14_(2) 運(yùn)行結(jié)果是_46 _(3) 運(yùn)行結(jié)果是_ a=12 y=34_(4) 運(yùn)行結(jié)果是_ 4_(5) 運(yùn)行結(jié)果是_9191_34程序填空。按照題目要求,將正確內(nèi)容填入答題卡相應(yīng)位置,使程序完整(每空5分,共25分)(1) y:x(2) z:a (3) (cx=getchar()(4) putchar(cx+32)(5) pre=cx_35閱讀程序,修改程序中的錯(cuò)誤,不得增行或刪行,也不得更改程序結(jié)構(gòu)。請?jiān)诖痤}卡中指出錯(cuò)誤所在的行號(hào),并給出該行修改后的程序代碼。(每空5分,共25分)(1) l2 define n2 改為:#define n 2 l18scanf("f",stui.score);改為:scanf("f",

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論