c语言编程算法模板,C语言编程算法精选.doc
C語言編程算法精選
二級C語言編程算法精選一、數學計算1、編寫函數double?fun功能是:根據公式計算s,計算結果通過形參指針sn傳回;n通過形參傳入。? ? 1? ?? ?1? ?? ? 1? ?? ?1? ?? ?? ?? ???1? ??S = ── - ── + ── - ── + … ─────?? ? 1? ?? ?3? ?? ? 5? ?? ?7? ?? ?? ?? ?2n+1? ?double??fun(double *sn ,int n){int i,j=1;double s=0;for(i=0;i<=n;i++){s=s+1.0/(2*i+1)*j;j=-j;}*sn=s;}2、編寫函數double?fun功能是:根據公式求P值,結果由函數值帶回。m與n為兩個正整數且要求m > n。? ?? ?? ?? ? m!? ?? ? ???P = ─────?? ?? ?? ? n!(m-n)!? double??fun(int m,int n){double i=1,x=1,y=1,z=1,p=0;for(i=1;i<=m;i++) x=x*i;for(i=1;i<=n;i++) y=y*i;for(i=1;i<=(m-n);i++) z=z*i;p=x/(y*z);return p;}3、編寫函數fun,它的功能是計算:s=(ln(1)+ln(2)+ln(3)+…+ln(m))(0.5),s作為函數值返回。在C語言中可調用log (n)函數求ln (n)。? ?log函數的引用說明是: double log(double x) double fun(int m){ int I;double s=0.0, log(double x);for(i=1;i<=m;i++)s=s+log(i);s=sqrt(s);return s;}4、編寫函數double??fun(double h),它的功能是:四舍五入并保留兩位小數double??fun(double h){long int i,j=1;if(h<0) {j=-1;h=-h;}h=h*100+0.5;i=h;h=i/100.0;return h*j;}5、編寫函數fun功能是:求Fibonacci數列中大于t的最小的一個數,結果由函數返回。其中Fibonacci數列F(n)的定義為:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2) 例如:當t = 1000時,函數值為:1597。int fun(int t){int i,f0=0,f1=1,f2=f0+f1;while(f2<=t){f0=f1;f1=f2;f2=f0+f1;}return f2;}6、編寫函數fun功能是:求出1000以內能被7或11整除,但不能同時被7和11整除的數,存放到數組xx中,通過函數名返回個數。int fun(int *xx,int n) /* 1000傳給形參n */{int i,j=0;for(i=1;i0){ a=a/10;n++;}return n;}8、編寫函數unsigned fun(unsigned w),w是一個大于10的無符號整數,若w是n(n≥2)位的整數,則函數求出w后n-1位的數作為函數值返回。例如:w 值為 5923,則函數返回 923; w 值為 923 則函數返回 23。unsigned fun(unsigned w){ unsigned t,s=0,s1=1,p=0;t=w;while(t>10){ if(t/10)p=t%10;s=s+p*s1;s1=s1*10;t=t/10;}return s;}二、一維數組9、編寫函數fun的功能是:將s所指字符串中的內容從小到大重新排列。char fun(char *s) /*形參部分還可寫成char s[]或char s[N] */{int i,j;char t;for(i=1;i s[j+1]) {t= s[j+1]; s[j+1]=s[j];s[j]=t;}}相似題:編寫函數fun,對長度位7個字符的字符串,除首尾字符外,將其余5個字符按ascii碼降序
總結
以上是生活随笔為你收集整理的c语言编程算法模板,C语言编程算法精选.doc的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 逾期几次不能贷款
- 下一篇: 开美容店怎么开 想入行创业的点进来