




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、2010年C語言編程題年蘿卜家園Microsoft選取日期2功能:求一分?jǐn)?shù)序列2/1,3/2,5/3,8/5,13/8,21/13的前n項(xiàng)之和。說明:每一分?jǐn)?shù)的分母是前兩項(xiàng)的分母之和,每一分?jǐn)?shù)的分子是前兩項(xiàng)的分子之和例如:求前20項(xiàng)之和的值為32.660259。-#include stdio.hfloat fun(int n) /*Program*/Int I; Float f1=1,f2=1,f3,s=0; For(i=1;i=n;i+) f3=f1+f2; F1=f2; F2=f3; S=s+f2/f1; ) Return s; /* End */main() float y; y=fun
2、(20); printf(y=%fn,y); yzj();yzj() FILE *IN,*OUT; int iIN,i; float fOUT; IN=fopen(in.dat,r); if(IN=NULL) printf(Please Verify The Currernt Dir.It May Be Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. It May Be Changed); for(i=0;i10) z=log(x+3) (x-3) z=sin(x)/(cos(
3、x)+4)-#include #includedouble y(float x) /*Program*/Double z; If(x10) z=exp(x); Else if(x-3) z=logz(x+3); Else z=sin(x)/(cos(x)+4);Return(z); /* End */main() float x; scanf(%f,&x); printf(y=%fn,y(x); yzj(); yzj() FILE *IN,*OUT; int n; float i; double o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read Fi
4、le Error); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(n=0;n10;n+) fscanf(IN,%f,&i); o=y(i); fprintf(OUT,%ldn,o); fclose(IN); fclose(OUT);4功能:對(duì)長度為8個(gè)字符的字符串,將8個(gè)字符按降序排列。例如:原來的字符串為CEAedcab,排序后輸出為edcbaECA。-#include#include#includeint fun(char *s,int num) /*Program*/int i,j;char t;for
5、(i=0;inum;i+)for(j=i+1;jnum;j+)if(sisj)t=si;si=sj;sj=t; /* End */main() char s10; printf(輸入8個(gè)字符的字符串:); gets(s); fun(s,8); printf(n%s,s); NONO();NONO() int i; char a100; FILE *rf, *wf ; rf = fopen(in.dat, r) ; wf = fopen(out.dat, w) ; for(i=0;i3;i+) fscanf(rf, %s, &a); fun(a,8); fprintf(wf, %s, a); f
6、printf(wf, n); fclose(rf); fclose(wf);5功能:用do-while語句求1100的累計(jì)和。-#includelong int fun(int n) /*Program*/int i=1,sum=0;dosum=sum+i;i+;While(i=n);return sum; /* End */void main () int i=100; printf(1100的累加和為:%ldn,fun(i); wwjt();wwjt() FILE *IN,*OUT; int i; int iIN; long int iOUT; IN=fopen(in.dat,r); if
7、(IN=NULL) printf(Please Verify The Currernt Dir.It May Be Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. It May Be Changed); for(i=0;i5;i+) fscanf(IN,%d,&iIN); iOUT=fun(iIN); fprintf(OUT,%ldn,iOUT); fclose(IN); fclose(OUT);6功能:實(shí)現(xiàn)兩個(gè)整數(shù)的交換。例如:給a和b分別輸入:60和65,輸入為:a=65
8、b=60-#include#includevoid fun(int *a,int *b) /*Program*/int t;t=*a;*a=*b;*b=t; /* End */ main() int a,b; printf(Enter a,b:); scanf(%d%d,&a,&b); fun(&a,&b); printf(a=%d b=%dn,a,b); yzj();yzj() FILE *IN,*OUT; int a,b,n; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(
9、OUT=NULL) printf(Write File Error); for(n=0;n=a&si=A&si=Z)k+;return k; /* End */main() char str=Best wishes for you!; int k; k=fun(str); printf(k=%dn,k); yzj();yzj() FILE *IN,*OUT; char sIN80; int iOUT,i; IN=fopen(21.in,r); if(IN=NULL) printf(Please Verify The Currernt Dir.It May Be Changed); OUT=fo
10、pen(21.out,w); if(OUT=NULL) printf(Please Verify The Current Dir. It May Be Changed); for(i=0;i100) printf(data error!n); exit(0); y=fun(x); if(y) printf(%d YESn,x); else printf(%d NOn,x); yzj();yzj() FILE *IN,*OUT; int n,t; int i5; int o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT
11、=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(t = 0 ; t 5 ; t+) fscanf(IN, %d, &n) ; o=fun(n); fprintf(OUT, %dn,o ) ; fclose(IN); fclose(OUT);9功能:用輾轉(zhuǎn)相除法求兩個(gè)整數(shù)的最大公約數(shù)。-#includeint gcd(int n,int m) /*Program*/int r,t;iIf(nm)t=n;n=m;m=t;r=n%m;while(r!=0)n=m;m=r;r=n%m;retrun (m); /* End */
12、main() int n,m,result; scanf(%d%d,&n,&m); result=gcd(n,m); printf(the gcd is %dn,result); yzj();yzj() FILE *IN,*OUT; int m,n; int i2; int o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(n=0;n6;n+) for(m=0;m2;m+) fscanf(IN,%
13、d,&im); o=gcd(i0,i1); fprintf(OUT,%dn,o); fclose(IN); fclose(OUT);10功能:計(jì)算n門課程的平均值,計(jì)算結(jié)果作為函數(shù)值返回。例如:若有5門課程的成績是:92,76,69,58,88,則函數(shù)的值為76.599998。-#include stdio.hfloat fun(int a,int n) /*Program*/int i;float y=0;for(i=0;in;i+)y+=ai;y=y/n;return y; /* End */main() int a=92,76,69,58,88; printf(y=%fn,fun(a,5
14、); yzj();yzj() FILE *IN,*OUT; int iIN10,i,j; float fOUT; IN=fopen(in.dat,r); if(IN=NULL) printf(Please Verify The Currernt Dir.It May Be Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. It May Be Changed); for(j=0;j5;j+) for(i=0;i5;i+) fscanf(IN,%d,&iINi); fOUT=fun(
15、iIN,5); fprintf(OUT,%fn,fOUT); fclose(IN); fclose(OUT);11功能:對(duì)長度為7個(gè)字符的字符串,除首、尾字符外,將其余5個(gè)字符按降序排列。例如:原來的字符串為CEAedca,排序后輸出為CedcEAa。-#include#include#includeint fun(char *s,int num) /*Program*/ Int I,j;Char t;For(i=1;inum-1;i+) For(j=j+1;jnum-1;j+) /* End */main() char s10; printf(輸入7個(gè)字符的字符串:); gets(s); f
16、un(s,7); printf(n%s,s); NONO();NONO() int i; char a100; FILE *rf, *wf ; rf = fopen(in.dat, r) ; wf = fopen(out.dat, w) ; for(i=0;i0)S=s/100;t=s%10*s1+t;s1=s1*10; /* End */return t; main() long s, t,m; printf(nPlease enter s:); scanf(%ld, &s); m=fun(s,t); printf(The result is: %ldn, m); yzj();yzj() F
17、ILE *IN,*OUT; int n; long i,t,m; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(n=0;n5;n+) fscanf(IN,%ld,&i); m=fun(i,t); fprintf(OUT,%ldn,m); fclose(IN); fclose(OUT);13功能:編寫函數(shù)fun計(jì)算下列分段函數(shù)的值: x2+x+6 x0且x-3 f(x)= x2-5x+6 0x10且x
18、2及x3 x2-x-1 其它-#include stdio.hfloat fun(float x) /*Program*/float y;if(x=0&x10.0&x!=2.0&x!=3.0)y=x*x-5*x+6;else y=x*x-x-1;return y; /* End */main() float x,f; printf(Input x=); scanf(%f,&x); f=fun(x); printf(x=%f,f(x)=%fn,x,f); yzj();yzj() FILE *IN,*OUT; int n; float i; float o; IN=fopen(in.dat,r);
19、 if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(n=0;n10;n+) fscanf(IN,%f,&i); o=fun(i); fprintf(OUT,%fn,o); fclose(IN); fclose(OUT);14功能:編寫函數(shù)用冒泡排序法對(duì)數(shù)組中的數(shù)據(jù)進(jìn)行從小到大的排序。-#include #includevoid sort(int a,int n) /*Program*/int i,j,t;for(i=0;in-1;i+)for
20、(j=0;jaj+1)t=aj;aj=aj+1;aj+1=t; /* End */main() int a16,i; for(i=0;i16;i+) ai=rand()%(30)+15; for(i=0;i16;i+) printf(%3d,ai); printf(n-n); sort(a,16); for(i=0;i16;i+) printf(%3d,ai); yzj();yzj() FILE *IN,*OUT; int n; int i10; int o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(
21、out.dat,w); if(OUT=NULL) printf(Write File Error); for(n=0;n10;n+) fscanf(IN,%d,&in); sort(i,10); for(n=0;n10;n+) fprintf(OUT,%dn,in); fclose(IN); fclose(OUT);15題目:用函數(shù)求一個(gè)N階方陣右下三角元素的和(包括副對(duì)角線上的元素)。 -#include #include stdio.h#define N 3int sum(int aN) /*Program*/int I,j,k=0;for(i=0;iN;i+)for(j=N-1;jN;j
22、+)k=k+aij;return (k); /* End */main() int aNN,i,j; for(i=0;iN;i+) for(j=0;jN;j+) aij=rand()%(10)+10; printf(%3d,aij); printf(n); printf(=n); printf(sum=%5dn,sum(a); yzj();yzj() FILE *IN,*OUT; int m,n; int i33; int o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(O
23、UT=NULL) printf(Write File Error); for(m=0;m3;m+) for(n=0;n3;n+) fscanf(IN,%d,&imn); o=sum(i); fprintf(OUT,%dn,o); fclose(IN); fclose(OUT);16功能:根據(jù)整型形參m,計(jì)算如下公式的值:y=sin(m)*10。例如:若m=9,則應(yīng)輸出:4.121185-#include stdio.h#includemath.hdouble fun(int m) /*Program*/double y=0;y=sin(m)*10;return (y); /* End */ma
24、in() int n; printf(Enter n: ); scanf(%d, &n); printf(nThe result is %1fn, fun(n); yzj(); yzj() FILE *IN,*OUT; int s,i ; int t; float o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Write File Error); for(i=0;istrlen(str) printf(刪除位置i和待刪字符個(gè)數(shù)n的值錯(cuò)!請(qǐng)
25、重新輸入i和n的值n); scanf(%d%d,&i,&n); fun(str,i,n); printf(刪除后的字符串str是:%sn,str); yzj();fun(char str,int i,int n) /*Program*/While(stri+n-1)Stri-1=stri+n-1;i+;Stri-1=0; /* End */yzj() FILE *IN,*OUT; int n; char i200; char o200; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w);
26、if(OUT=NULL) printf(Write File Error); fscanf(IN,%s,i); fun(i,2,8); fprintf(OUT,%sn,i); fclose(IN); fclose(OUT);18功能:統(tǒng)計(jì)出若干個(gè)學(xué)生的平均成績,最高分以及得最高分的人數(shù)。例如:輸入10名學(xué)生的成績分別為92,87,68,56,92,84,67,75,92,66,則輸出平均成績?yōu)?7.9,最高分為92,得最高分的人數(shù)為3人。-#include stdio.hfloat Max=0;int J=0;float fun(float array,int n) /*Program*/in
27、ti;float sum=0,ave;max=array0;for(i=0;in;i+)if(Maxarrayi)max=arrayi;ave=sum+arrayi;for(i=0;in;i+)if(arrayi=Max)J+;return(ave) /* End */ main( ) float a10,ave; int i=0; for(i=0;i10;i+) scanf(%f,&ai); ave=fun(a,10); printf(ave=%fn,ave); printf(max=%fn,Max); printf(Total:%dn,J); yzj();yzj() FILE *IN,*O
28、UT; float iIN10,iOUT; int iCOUNT; IN=fopen(in.dat,r); if(IN=NULL) printf(Please Verify The Currernt Dir.It May Be Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. It May Be Changed); for(iCOUNT=0;iCOUNT10;iCOUNT+) fscanf(IN,%f,&iINiCOUNT); iOUT=fun(iIN,10); fprintf(
29、OUT,%f %fn,iOUT,Max); fclose(IN); fclose(OUT);19功能:編寫程序,實(shí)現(xiàn)矩陣(3行3列)的轉(zhuǎn)置(即行列互換) 例如:輸入下面的矩陣: 100 200 300 400 500 600 700 800 900 程序輸出: 100 400 700 200 500 800 300 600 900 -#include stdio.hint fun(int array33) /*Program*/ Int i,j,t;For(i=0;i3;i+)For(j=0;jI;j+)t=arrayij=arrayji; arrayij=arrayji;arrayji=t;
30、 /* End */ main() int i,j; int array33=100,200,300, 400,500,600, 700,800,900; for (i=0; i 3; i+) for (j=0; j 3; j+) printf(%7d,arrayij); printf(n); fun(array); printf(Converted array:n); for (i=0; i 3; i+) for (j=0; j 3; j+) printf(%7d,arrayij); printf(n); NONO(); NONO() int i,j, array33; FILE *rf,
31、*wf ; rf = fopen(in.dat, r) ; wf = fopen(out.dat, w) ; for (i=0; i 3; i+) for (j=0; j 3; j+) fscanf(rf, %d, &arrayij); fun(array); for (i=0; i 3; i+) for (j=0; j 3; j+) fprintf(wf, %7d, arrayij); fprintf(wf, n); fclose(rf) ; fclose(wf) ; 20功能:用函數(shù)實(shí)現(xiàn)字符串的復(fù)制, 不允許用strcpy()函數(shù)。-#include stdio.hvoid copy(ch
32、ar str1,char str2) /*Program*/int i;for(i=0;str1i!=0;i+)str2i=str1i;str2i=0; /* End */main() void copy(); char c140,c240; gets(c1); copy(c1,c2); puts(c2); yzj();yzj() FILE *IN,*OUT; int n; char i100; char o100; IN=fopen(in.dat,r); if(IN=NULL) printf(Read File Error); OUT=fopen(out.dat,w); if(OUT=NUL
33、L) printf(Write File Error); fscanf(IN,%s,i); copy(i,o); fprintf(OUT,%sn,o); fclose(IN); fclose(OUT);21功能:從鍵盤為一維整型數(shù)組輸入10個(gè)整數(shù),調(diào)用fun函數(shù)找出其中最小的數(shù),并在main函數(shù)中輸出。請(qǐng)編寫fun函數(shù)。-#include stdio.hint fun(int x,int n) /*Program*/Int min,I;Min=x0;For(i=1;in;i+)If(ximin)min=xi;Return min; /* End */main() int a10,i,min;
34、for(i=0;i10;i+) scanf(%d,&ai); for(i=0;i10;i+) printf(%3d,ai); printf(n); min=fun(a,10); printf(%dn,min); yzj();yzj() FILE *IN,*OUT; int iIN10,i; int iOUT,iCOUNT; IN=fopen(4.in,r); if(IN=NULL) printf(Please Verify The Currernt Dir.It May Be Changed); OUT=fopen(4.out,w); if(OUT=NULL) printf(Please Verify The Current Dir. It May Be Changed); for(i=0;i10;i+) for(iCOU
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年云浮市云城區(qū)招聘教育人才筆試真題
- 2024年南昌職業(yè)大學(xué)輔導(dǎo)員考試真題
- 法學(xué)概論學(xué)習(xí)方法與技巧探討試題及答案
- 2024年西安市第一醫(yī)院招聘筆試真題
- 加強(qiáng)行業(yè)分析能力的行動(dòng)計(jì)劃
- 廣東省深圳市羅芳中學(xué)2025年八年級(jí)數(shù)學(xué)第二學(xué)期期末教學(xué)質(zhì)量檢測試題含解析
- 明確目標(biāo)客戶群的識(shí)別計(jì)劃
- 數(shù)據(jù)可視化技術(shù)的應(yīng)用前景試題及答案
- 賦能團(tuán)隊(duì)領(lǐng)導(dǎo)力提升計(jì)劃
- 豐富校園經(jīng)歷的實(shí)習(xí)社活動(dòng)計(jì)劃
- IT項(xiàng)目周報(bào)模板
- 機(jī)械工業(yè)出版社2020《人工智能導(dǎo)論》課程同步PPT課件第4章 搜索算法
- 說專業(yè)-物流管理專業(yè)
- 圖紙會(huì)審記錄SG-007
- 鋼結(jié)構(gòu)門頭施工方案
- 住房城鄉(xiāng)建設(shè)領(lǐng)域重大安全風(fēng)險(xiǎn)隱患清單
- 中興XPON高級(jí)VUE認(rèn)證考試題庫(高分版)
- 化工原理課程設(shè)計(jì)-吸收塔
- 2023年云南省中考地理試卷和答案
- 三級(jí)安全教育考試試卷及答案
- 門式起重機(jī)的制作工藝
評(píng)論
0/150
提交評(píng)論