浙江計(jì)算機(jī)二級(jí)編程試題_第1頁
浙江計(jì)算機(jī)二級(jí)編程試題_第2頁
浙江計(jì)算機(jī)二級(jí)編程試題_第3頁
浙江計(jì)算機(jī)二級(jí)編程試題_第4頁
浙江計(jì)算機(jī)二級(jí)編程試題_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1./*設(shè)計(jì)程序:z=f(x,y)=10*cos(x-4)+5*sin(y-2),若x,y取值為區(qū)間0,10的整數(shù),找出*使z取最小值的x1,y1,并將x1、y1以格式%d,%d寫入到考生目錄中Paper子目錄下的*新建文件design.dat中。*/#include#includevoid main() FILE *p; int x,y,x1,y1; float z,z1;p=fopen(design.dat,w); if(p=NULL) return; z1=15; for(x=1;x=10;x+) for(y=1;y=10;y+) z=10*cos(x-4)+5*sin(y-2); if

2、(zz1) z1=z;x1=x;y1=y; fprintf(p,%d,%dn,x1,y1); fclose(p); 2. /* 在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能需要填充部分,* 請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。* 該程序功能:* 將輸入的十進(jìn)制整數(shù)n通過函數(shù)DtoH轉(zhuǎn)換為十六進(jìn)制數(shù),并將轉(zhuǎn)換結(jié)果以字符串形式輸出。* 例如:輸入十進(jìn)制數(shù)79,將輸出十六進(jìn)制4f。*/# include # include char trans(int x)if(x10) return 0+x;else _1_/return

3、a+x-10; int DtoH(int n,char *str)int i=0;while(n!=0)_2_/stri=trans(n%16);n/=16;i+;return i-1;void main()int i,k,n;char *str;scanf(%d,&n);k=DtoH(n,str);for (i=0;i=k;i+) printf(%c,strk-i);3. /* * 設(shè)計(jì)程序:* 在數(shù)組a的10個(gè)數(shù)中求平均值v,將大于等于v的數(shù)組元素進(jìn)行求和,* 并將結(jié)果以格式%.5f寫到考生目錄中Paper子目錄下的新建文件design.dat中。*/#include void main(

4、) FILE *p; int i; float a10=7.23,1.5,5.24,2.1,2.45,6.3,5,3.2,0.7,9.81,sum,v=0;sum=0.0;for(i=0;i10;i+) sum+=ai;v=sum/10.0;sum=0.0;for(i=0;i=v) sum+=ai;printf(%fn,sum);4. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:輸入的一個(gè)小寫字母,將字母循環(huán)后移5個(gè)位置后輸出,*如a變成f, w變成b

5、。*/#include void main() char c; c=getchar(); if(_1_) /c=a&c=v & c=z) _2_ /c=c+5-26; putchar(c);5. * 設(shè)計(jì)程序:將數(shù)組a的每1行均除以該行上的主對角元素(第1行同除以 */* a00,第2行同除以a11,.),然后將a數(shù)組寫入到考生目錄中*/* Paper子目錄下的新建文件design.dat中新建的文件design.dat中。 */ #include void main() float a33=1.3,2.7,3.6,2,3,4.7,3,4,1.27; FILE *p;float k; int

6、i,j; p=fopen(design.dat,w); for(i=0;i3;i+) k=aii; for(j=0;j3;j+) aij=aij/k; for(i=0;i3;i+) for(j=0;j3;j+) fprintf(p,%10.6f,aij); fprintf(p,n); fclose(p);6. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:調(diào)用函數(shù)f,從字符串中刪除所有的數(shù)字字符。*/#include #include #include

7、void f(char *s) int i=0; while(si!=0) if(isdigit(si) _1_(s+i,s+i+1);/ strcpy _2_ i+;/elsevoid main() char str80; gets(str); f(str); puts(str);7. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:輸入三個(gè)整數(shù),按由小到大的順序輸出這三個(gè)數(shù)。*/#include void swap(_1_)/ int *pa,int

8、*pb /*交換兩個(gè)數(shù)的位置*/ int temp; temp = *pa; *pa = *pb; *pb = temp;void main() int a,b,c,temp; scanf(%d%d%d,&a,&b,&c); if(ab) swap(&a,&b); if(bc) swap(&b,&c); if(_2_)/ ac swap(&a,&b); printf(%d,%d,%d,a,b,c);8. /*設(shè)計(jì)程序:計(jì)算500800區(qū)間內(nèi)素?cái)?shù)的個(gè)數(shù)cnt和素?cái)?shù)和sum。*請編寫函數(shù)JSValue()實(shí)現(xiàn)程序的要求。最后把cnt和sum寫入到考生目錄中Paper子目*錄下的新建文件design

9、.dat中*/#includeint cnt,sum;void JSValue() int i,j,half;cnt=0; sum=0; for(i=500;i=800;i+) j=i/2; for(half=2;halfj) printf(%d n,i); cnt+; sum+=i; void main() FILE *p; p=fopen(design.dat,w); JSValue(); fprintf(p,%d,%d,cnt,sum); fclose(p);9. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(

10、注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:輸入整數(shù)n(n0),求m使得 2的m次方小于或等于n、2的m+1次方大于或等于n。*/#include void main() int m=0,t=1,n; while( _ 1 _);/ scanf(%d,&n), n=0 while(!(t=n) _ 2 _/ t=t*2; m+; printf(%dn,m);10. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:求輸入的整數(shù)各位數(shù)字之和

11、,如輸入234則輸出9,輸入-312則輸出6。*/ #include #include void main() int n,s=0; scanf(%d,&n); _ 1 _/n=fabs(n); while(n!=0) _ 2 _/s=s+n%10; n=n/10; printf(%dn,s);11. /* 設(shè)計(jì)程序:對x=1,2,.,10,求函數(shù)f(x)=x-10*cos(x)-5*sin(x)的 */* 最大值,并將該數(shù)以格式%.3f寫到考生目錄中Paper子目錄下的新建文件design.dat中。*/#include #include void main() FILE *p; float

12、 f(float),max,x;p=fopen(design.dat,w); max=f(1); for(x=2;x=10;x+) if(maxf(x) max=f(x); fprintf(p,%.3f,max); fclose(p);float f(float y)y=y-10*cos(y)-5*sin(y);return(y)12./* * 在考生目錄的Paper子目錄下,有Modify.c文件,該文件中“* N *”的下一行中有錯(cuò)誤,* 請改正(注意:不得加行、減行、加句、減句,否則后果自負(fù))。* 該程序功能:* 輸入一個(gè)字符串,將組成字符串的所有字符先按順序存放到字符串t中,再將字符串

13、中的字符按逆序連接到字符串t * 后面。* 例如:輸入ABCD,則字符串t為ABCDDCBA。*/# include # include void fun(char *s,char *t) int i,sl; sl=strlen(s); for(i=0;isl;i+) ti=si; for(i=0;isl;i+) /*1*/ tsl+i=ssl-i; /*2*/ tsl=0;void main() char s100,t100; scanf(%s,s); fun(s,t); printf(%s,t);13. /* 設(shè)計(jì)程序:數(shù)組元素xi、yi表示平面上某點(diǎn)坐標(biāo),統(tǒng)計(jì)10個(gè)點(diǎn)中處在圓 */* (

14、x-1)*(x-1)+(y+0.5)*(y+0.5)=25內(nèi)的點(diǎn)數(shù)k,并將變量k的值 */* 以格式%d寫到考生目錄中Paper子目錄下的新建文件design.dat中。 */#include #include void main() FILE *p; int i,k=0; float x=1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65; float y=-6,4.3,4.5,3.67,2.42,2.54,5.6,-0.97,4.65,-3.33;p=fopen(design.dat,w); for(i=0;i10;i+) if(xi-1)*(xi

15、-1)+(yi+0.5)*(yi+0.5)=25) k+; fprintf(p,%d,k); fclose(p);14. /* 設(shè)計(jì)程序:統(tǒng)計(jì)滿足條件x*x+y*y+z*z=2000的所有解的個(gè)數(shù),并將統(tǒng)計(jì) */* 結(jié)果以格式%d寫入到考生目錄中Paper子目錄下的新建文件design.dat中 */* 說明:若a、b、c是1個(gè)解,則a、c、b也是1個(gè)解,等等。 */#include void main() FILE *p; int x,y,z,k=0;p=fopen(design.dat,w); for(x=1;x=100;x+) for(y=1;y=100;y+) for(z=1;z=10

16、0;z+) if(x*x+y*y+z*z=2000) k=k+1; printf(%d,k); fclose(p);15. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:輸入m、n(要求輸入數(shù)均大于0),輸出它們的最大公約數(shù)。*/#include void main() int m,n,k; while(scanf(%d%d,&m,&n), _1_ );/ m0|n0 for( _2_; n%k!=0|m%k!=0; k-);/ k=mn?m:n pri

17、ntf(%dn,k); 16. /* 設(shè)計(jì)程序:xi,yi分別表示平面上1個(gè)點(diǎn)的x、y坐標(biāo),求下列5點(diǎn)各點(diǎn) */* 間距離總和,并將該數(shù)以格式%.4f寫到考生目錄中Paper子目錄下的新 */* 建文件design.dat中。 */#include #include void main() FILE *p; float s,x5=-1.5,2.1,6.3,3.2,-0.7; float y5=7,5.1,3.2,4.5,7.6; int i,j;s=0; p=fopen(design.dat,w); for(i=0;i4;i+) for(j=i+1;j5;j+) s+=sqrt(pow(xi-

18、xj,2)+pow(yi-yj,2); fprintf(p,%.4f,s); fclose(p); 17. /* 在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能需要填充部分,* 請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。* 該程序功能:* 找出100999之間所有的Armstrong數(shù)。所謂Armstrong數(shù)是指這個(gè)3位數(shù)各位上數(shù)字的立方和等于自身。* 例如:371=3*3*3+7*7*7+1*1*1,那么371就是Armstrong數(shù)。*/#include #includevoid main()int i,a,b,c;for

19、(i=100;i=999;i+)a=i/100;_1_/b=i/10%10;c=i%10;if (_2_) /i =a*a*a+b*b*b+c*c*cprintf(%d is a Armstrong number!n,i); 18/*設(shè)計(jì)程序:計(jì)算字符串s中每個(gè)字符的權(quán)重值,所謂權(quán)重值就是字符在字符串中的位置值與*該字符的ASCII碼值的乘積。位置值從1開始依此遞增。將每個(gè)字符的權(quán)重值,以格式%d 寫*入到考生目錄中Paper子目錄下的新建文件design.dat中。*/#include#includevoid main() FILE *p; int i,w; char *s=we45*&y3

20、r#$1;p=fopen(design.dat,w); for(i=0;*(s+i)!=0;i+) w=(i+1)*(*(s+i); fprintf(p,%dn,w); fclose(p);19. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中“/* N * /”的下一行中有錯(cuò)誤,*請改正(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:運(yùn)行時(shí)輸入整數(shù)n,輸出n各位數(shù)字之和(如n=1308則輸出12,n=-3204則輸出9)。*/#include #include void main() int n,s=0; scanf(%d,&n); n=fabs(n)

21、; /* 1 */ while(n1) /n或n=1 s=s+n%10; /* 2 */ n=n%10; /n=n/10; printf(%dn,s);20. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:數(shù)列的第1、2項(xiàng)均為1,此后各項(xiàng)值均為該項(xiàng)前二項(xiàng)之和。計(jì)算數(shù)列第30項(xiàng)的值。*/#include _1_/long f(int);void main() printf(%ldn,f(30);long f(int n) if( _2_ )/ n=1|n=

22、2 return 1; else return f(n-1)+f(n-2);21. /*設(shè)計(jì)程序:有數(shù)列:2/1,3/2,5/3,8/5,13/8,21/13,求出數(shù)列的前40項(xiàng)的和。將結(jié)果*以格式%.6f寫入到考生目錄中Paper子目錄下的新建文件design.dat中。*/#includevoid main() FILE *p; int i; float f1=1.0,f2=2.0,t1=2.0,t2=3.0,s; float f,t; s=t1/f1+t2/f2;p=fopen(design.dat,w); for(i=1;i38;i+) f=t2; t=t2+f2; s+=t/f; t

23、2=t;f2=f; fprintf(p,%.6f,s); fclose(p);22. /* 設(shè)計(jì)程序:* 利用公式/41-1/3+1/5-1/7+公式計(jì)算的近似值,直到某一項(xiàng)的絕對值小于1e-6為止。 (/4的結(jié)果不包含此項(xiàng))* 將結(jié)果以格式%.6f寫入到考生目錄中Paper子目錄下的新建文件design.dat中。*/#include #include void main()FILE *fp;float n=1,t=1,pi=0;int i; /* * * * 考生在這里添加代碼 * * */23. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中“/* N * /”的下

24、一行中有錯(cuò)誤,*請改正(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能:運(yùn)行時(shí)輸入n,輸出n的所有質(zhì)數(shù)因子(如n=13860,則輸出2、2、3、3、5、7、11)。*/#include void main() int n,i; scanf(%d,&n); /* 1 */ i=1;/ i=2; while(n1) if(n%i=0) printf(%dt,i); n/=i; else /* 2 */ n+; /i+;24. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,

25、否則后果自負(fù))。*該程序功能:輸入1個(gè)整數(shù)后,輸出該數(shù)的位數(shù)(若輸入3214則輸出4,輸入-23156*則輸出5)。*/#include void main() int n,k=0; scanf(%d,&n); while( n%10 ) k+; n=n/10; printf(%dn,k);25. /*在考生目錄的Paper子目錄下,有Modify.c文件,該文件中_ N _是根據(jù)程序功能*需要填充部分,請完成程序填充(注意:不得加行、減行、加句、減句,否則后果自負(fù))。*該程序功能: 求出a中各相鄰兩個(gè)元素的和,并將這些和存放在數(shù)組 b中,*按每行3個(gè)元素的形式輸出。例如: b1=a1+a0,b9=a9+a8。*/#include void main() int a10,b10,i; printf(nInput 10 numbers: ); for (i=0; i10;i+) /* 數(shù)組輸入 */ scanf(%d, &ai); for (i=1; i10; i+) bi=ai+ai-1; /* 計(jì)算b數(shù)組中的元素 */ for (i=1; i10; i+) printf(%3d,bi); if (i%3=0) printf(n); /* 每行打印3個(gè)數(shù)據(jù) */ 28./*設(shè)計(jì)程序

溫馨提示

  • 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

提交評論