C语言常用算法.docx
《C语言常用算法.docx》由会员分享,可在线阅读,更多相关《C语言常用算法.docx(26页珍藏版)》请在第一文库网上搜索。
1、y=y*x;returny;)1ongf2(intn)1ongm=1;intk;for(k=1;k=n;k+)m=m*k;returnm;)voidmain()f1oats,t,x;intifn;scanf(*%f%d*,&x,&n);s=0,t=-1;for(i=1:i=n;i+)t=-t;s=s+t*f1(x,i)f2(i);)printf(%f,s);)二、整除性基本知识:x%y=0(int)(xy)=xyfmod(x,y)=0应用:1 .素数(质数)/inc1udettinc1udevoidmain()累加索乘基本知识:s=s+x累加0X=X+1计数0=*x累乘求XB11T=T*1累乘
2、求N11应用:级数求和1.输入X、n后输出下列算式的值。(次数控制)X2X3XF2!3!4!7?!程序1Jtinc1udevoidmain()f1oats,t,x,t1=1.0,t2=1.0:inti,nscanf(*%f%d*,&x,&n):s=0,t=-1;for(i=1;i=n:i+)t1=t1*x:t2=t2*i;t=-t;s=s+t*t1t2;)printf(%f”,s);)程序2Sinc1udef1oatf1(f1oatx,intn)f1oaty=1.0;intk;for(k=0:kn:k+)e1seprintf(“刎不是素数.”,m);)2 .水仙花数:若某数等于各位数字的立方和
3、,则称该数为水仙花数for(i=100;i0)k=n%10:t=t+k*k*k;n=n10;)if(m=t)Printf(%d是水仙花数.”,m);水仙花数/inc1udeintf(intm)intk,n,t;n=m;t=0:whi1e(n0)k=n%10:t=t+k*k*k;n=n10;)if(m=t)return1;e1sereturn0;)voidmain()intm1i,n=0;doscanf(%d,&m);n=sqrt(m);for(i=2;in)printf(u%dw,m);WhiIe(In!=0);/*输入0结束*/素数2Ainc1ude#inc1udeintprime(intm
4、)intk,p:p=sqrt(m);for(k=2jk=pjk)if(mk=0)return0;return1;voidmain()(intm,i,n=0;doscanf(%d,&m);if(prime(m)printf(w%d是素数.”,m);digit=in%10;s=s+digit*digitin=in10;)Printf(sum=%1dn”,s);5.最大公约数、最小公倍数#inc1udevoidmain()intm,n,k,t,p;scanf(*%d%d*,&n);if(mn)k=m;p=n;e1sek=njp=m;whi1e(t=(k%p)!=0)(k=P:P=t;)printf(
5、*gongyueshu=%dn*,p);printf(*gongbeishu=%dn*,m*np);)6.亲密数对:说明:若a、b为1对亲密数,则a的因子和等于b、b的因子和等于a、且a不等于b。如:220、284是1对亲密数,284、220也是1对亲密数。#inc1udevoidmain()(inta,b,c,i;for(a=6;a=5000;a+)intm;doscanf(%d*,&m);if(f(m)printf(%d是水仙花数.”,m);e1sePrintf(%d不是水仙花数.”,m);whi1e(m!=0):)3 .完数:某数等于其诸因子之和则该数为完数,如6=1+2+3,28=1+
6、2+4+7+14则6、28就是完数。#inc1udeinc1udevoidmain()intn,i,s;for(n=6;n=1000;n+)s=0;for(i=1;i=n/2;i+)if(n%i=0)s+=i;if(n=s)fprintf(p,%6d,n);)4 .数位截取:输入一个长整型数,求各位数字的平方和Ainc1udevoidmain()intdigit;1ongin,s;scanf(%1d”,in);if(in0)三、 最大最小1 .从输入的若干个正数中选出最小数#inc1udevoidmain()(f1oatx,min;scanf(*%f*,&x):min=x;whi1e(x=0)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 常用 算法