C語言程序設計試卷及答案_第1頁
C語言程序設計試卷及答案_第2頁
C語言程序設計試卷及答案_第3頁
免費預覽已結束,剩余8頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PAGEPAGE9C語言程序設計考試試題一、單項選擇題(每小題1分,共15分)以下敘述正確的是( )A.C,mainB.程序的每行中只能寫一條語句C.C語言本身沒有輸入輸出語句D.在對一個C程序進行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤,().必須為字母 須為下劃線C.必須為字母或下劃線

以是字母、數(shù)字和下劃線中的任意一種判斷字符型變量c1是否為數(shù)字字符的正確表達式()A.’0’<=c1<=’9’ C.(‘0’>=c1)||(‘9’<=c1) .D(c1>=’0’)&&(c1<=’9’)在C語言要求運算數(shù)必須是整型的運算符(A./ B.++C.!= D.%“x”的要求的是()A.x%2==0 B.!(x%2==0)C.(x/2*2-x)==0 D.!(x%2)intk=2;while(k!=0){printf(“%d”,k);k--;}則下面描述中正確的是()。A.while循環(huán)執(zhí)行兩次

是無限循環(huán)循環(huán)題語句一次也不執(zhí)行 環(huán)體語句執(zhí)行一次if,。if配對if配對8doublefun(intx,doubley){……}則該函數(shù)正確的函數(shù)原型聲明為)

一個f配對之前最近的且尚未配對的if配對A.doublefun(intx,doubley) B.fun(intx,doubley)C.doublefun(int,double); D.fun(x,y);已知下列程序段:chara[3],b[]="Hello";a=b;printf("%s",a);則( 。運行后將輸出Hello B.運行后將輸出HeC.運行后將輸出Hel D.編譯出錯"double。a,a[0]a[9]10個整數(shù)數(shù)組元素a,a(0)a(9)10個整數(shù)數(shù)組元素a,a[0]a[9]10個雙精度數(shù)組元素a,a(1)a(10)10個雙精度數(shù)組元素intk=2;intptr1ptr2均已指向變量k,下面不。k=*ptr1+*ptr2 B.ptr2=kC.ptr1=ptr2 12.。A.chars[5]={“ABCDE”}; B.chars[5]={‘A’,’B’,’C’,’D’,’E’};C.char*s;s=”ABCDE”; D.char*s;scanf(“%s”,s);13.:intp。是一個指向整型變量的指針是一個指針數(shù)組名D.定義不合法typedef。typedef可以定義多種類型名,但不能用來定義變量typedef可以增加新類型typedef只是將已存在的類型用一個新的標識符來代表typedef有利于程序的通用和移植。A.所有成員一直駐留在內存中 B.只有一個成員駐留在內存C.部分成員駐留在內存中 D.沒有成員駐留在內存中二、基礎知識填空(每空2分,共20分)已知inta=7;floatx=2.5,y=4.7;計算表達式xa%3*(int)(xy)%2/4的值為 [1]算法的特點主要包括:確定性、 [2]、足夠多的情報(輸入輸出、可行性。x2y2|abx2y2|ab|設有數(shù)組定:chararray[8]="China";則數(shù)組array所占的空間為 [4]5z都是整型變量寫出z中有一個負數(shù)的表達式: [5] 6已知有二維數(shù)組聲t則a數(shù)組有]行。7.若有定義語:inta[4]={1,2,3,4},*p;p=&a[1];則++(*p)的值是 [7] 若有定義#defineM3#defineNM+1則執(zhí)行語句z=M*N;后,z的值為 [8] 。struct{intx;char*y;}tab[2]={1,”ab”,2,”cd”},*p=tab;則語句printf(“%c”,*((++p)->y+1))輸出的結果是 [9]。10.已知某程序中有預處理命令“#include<stdio.h>”,為使語句“fp=fopen(“c:\\out.dat”,”w”);”能正常執(zhí)行,則在使用該語句之前必須有聲明[10] 。三、程序閱讀題(每題3分,共21分)輸入10,20回車后,下面程序輸出語句的第一行是 ,第二行是 。#include<stdio.h>voidswap(int*,int*);intmain(){ inta,b,*pa=&a,*pb=&b;scanf(“%d,%d”,&a,&b);swap(pa,pb);return0;}voidswap(int*p1,int*p2){intp;p=*p1;*p1=*p2;*p2=p;printf(“*p1=%d,*p2=%d\n”,*p1,*p2);}31#include<stdio.h>#include<math.h>voidmain(){intm,i,k;scanf("%d",&m);k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>k)printf("%disaprimenumber\n",m);elseprintf("%disnotaprimenumber\n",m);}10#include<stdio.h>unsignedintfact(unsignedint);intmain(){ unsignedintn,fac;scanf("%u",&n);fac=fact(n);return0;}unsignedintfact(unsignedintn){unsignedintresult;if(n==1)result=1;elseresult=n+fact(n-1);returnresult;}下面程序的輸出結果是 。#include<stdio.h>intfun(int,int);intmain(){intx=5,y=3,s,j;for(j=0;j<3;j++){s=fun(x,y);printf("%d",s);}return0;}intfun(inta,intb){staticintn=1,i=2;i=n+1;n=i+a+b;return(n);}下面程序的功能是#include<string.h>#include<stdio.h>voidsort(char*name[],intn);intmain(){char*name[]={"CProgram","C++ObjectOrientedProgram","OperatingSystem","DataSturcture"};inti,n=4;sort(name,n);for(i=0;i<n;i++)printf("%s\n",name[i]);return0;}voidsort(char*name[],intn){char*temp;inti,j,k;for(i=0;i<n-1;i++){k=i;for(j=i+1;j<n;j++)if(strcmp(name[j],name[k])<0)k=j;if(k!=i){temp=name[i];name[i]=name[k];name[k]=temp;}}}#include<stdio.h>voidinv(int[],int);intmain(){ inti,a[10]={3,7,9,11,0,6,7,5,4,2};inv(a,10);for(i=0;i<10;i++)printf("%3d",a[i]);printf("\n");return0;}voidinv(intx[],intn){ intt,i;i=0;t=x[0];for(;i<n-1;i++)x[i]=x[i+1];x[i]=t;}下面函數(shù)的功能是intstr_cat(char*s,char*t){while(*s++);while(*t)*s++=*t++;*s=’\0’;}四、程序填空題(每空2分,共18分)xy zy以下程序的功能是計算函數(shù)F(xyz

xy

z

,請?zhí)羁帐钩绦蛲暾?include<stdio.h>[1] ;intmain(){ floatx,y,z,f;f=fun( [2] );f+=fun( [3] );printf(“f=%f”,f);return0;}floatfun(floata,floatb){return(a/b);}下面程序是將按降序排列的數(shù)組ab合并到數(shù)組c中,使c請完善程序。#include<stdio.h>#defineM5#defineN4voidmerge(inta[],intb[],intc[],int,int);intmain(){intj;inta[M]={9,8,7,3,2},b[N]={7,5,4,1};intc[M+N];merge( [4] );printf("a和b:\n");for(j=0;j<M+N;j++)printf("%5d",c[j]);return0;}voidmerge(inta[],intb[],intc[],intm,intn){inti=0,j=0,k=0;while( [5] ){if(a[i]<b[j])c[k++]=b[j++];elsec[k++]=a[i++];}while(i<m)c[k++]=a[i++];while(j<n)}已知如下公式:

1 12 123 1234213353573579下面程序的功能使根據(jù)上述公式輸出滿足精度要求的eps的值,請?zhí)羁帐钩绦蛲暾?include<stdio.h>#include<math.h>intmain(){ doubles=0.0,eps,t=1.0;intn;scanf(“%lf”,&eps);for(n=2;t>=fabs(eps);n++){s+=t;t= [6] ;}[7] ;return0;}矩陣中每列元素中的最大值,并按順序依次存使程序得出正確的結果。給定源程序:#include<stdio.h>#defineN4#defineM3voidfun(inta[][N],int*b){inti,j;for(i=0;i<N;i++){b[i]= [8] ;for(j=1;j<M;j++)if(b[i] [9] a[j][i])b[i]=a[j][i];}}intmain(){intx[M][N]={{12,5,8,7},{6,1,9,3},{1,2,3,4}},y[N],i,j;for(i=0;i<M;i++){for(j=0;j<N;j++)printf("%4d",x[i][j]);printf("\n");}fun(x,y);for(i=0;i<N;i++)printf("%3d",y[i]);return0;}(每處26/****found****/1~3行以內)::將s或ASCII碼為偶數(shù)的字符放入t()。例如,字符串中的數(shù)據(jù)為:AABBCCDDEEFF,則輸出應當是:ABBCDDEFF。1.#include<stdio.h>2.#include<string.h>3.#defineN804.voidfun(char*s,chart[])5.{ inti,j=0;6. for(i=0;i<strlen(s);i++)7./*************found********/8. if(i%2&&s[i]%2==0)9. t[j++]=s[i];10./*************found********/11. t[i]='\0';12.}intmain(){chars[N],t[N];gets(s);fun(s,t);結果是:return0;19.}六、編程題(第1小題10分,第2小題10分,共20分)1 1 1 1 1輸入正整數(shù)a和項數(shù)s之和

aaa

aaa

aaaa

(1)n1aa有N求輸出3總平均成績,以及三門總分最高分的學生的數(shù)據(jù)(3門課的成績,總分數(shù)。aa一、單項選擇題(每小題1分,共15分)1.C2.C 3.D 4.D 5.B6.A7.D 8.C 9.D 10.CB 12. C 13. C 14. B 15. A二、基礎知識填空(220)1. 2.5000005. x<0||y<0||z<07. 39. ‘d’

2. 有窮性4. 8字節(jié)6. 38. 1010. FILE*fp1.1.*p1=20,*p2=10a=20,b=102.31isaprimenumber3.554.1019285.7.選擇法對字符串按字典序排列將兩個字符串連接起來6.79110 675423、程序填空題(每空2分,共18分)[1].floatfun(float,float); [2]. x+y,x-y[3].z+y,z-y[4].a(chǎn),b,c,M,N[5].j<n&&i<m[6].t*(n-1)/(2*n-1)[7].[9].printf(“%lf\n”,2*s);<[8].a(chǎn)[0][i]四五、改正下面程序錯誤(6分)[1].第8行:if(i%2||s[i]%2==0)[2].第11行:t[j]=’\0’;六、編程題(第1小題10分,第2小題10分,共20分)1.#include<stdio.h>intmain(){unsigneda,n; 分1doublesum=0,t=0; 分1inti,s=1,p=1; 1do{scanf("%u%u",&a,&n); 1}while((a==0||a>9)||(n==0||n>9));第第11頁/共頁for(i=1;i<=n;i++){t=p*t+a; 分2sum=sum+s*1/t; 分1p=p*10; 分1s=-s; 分 1}printf("%lf\n",sum); return0;}2.#include<

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論