C语言常见编程算法实例.doc

C语言常见编程算法实例.doc

ID:56277739

大小:94.50 KB

页数:19页

时间:2020-06-05

C语言常见编程算法实例.doc_第1页
C语言常见编程算法实例.doc_第2页
C语言常见编程算法实例.doc_第3页
C语言常见编程算法实例.doc_第4页
C语言常见编程算法实例.doc_第5页
资源描述:

《C语言常见编程算法实例.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、常见编程算法实例一、关于数字上的一些编程算法1.输出9*9口诀乘法表。分析:分行与列考虑,共9行9列,i控制行,j控制列。#include"stdio.h"main(){inti,j,result;printf("");for(i=1;i<10;i++){for(j=1;j<=i;j++){result=i*j;printf("%d*%d=%-3d",i,j,result);/*-3d表示左对齐,占3位*/}printf("");/*每一行后换行*/}}2.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5

2、个数相加),几个数相加有键盘控制。分析:关键是计算出每一项的值。main(){inta,n,count=1;longintsn=0,tn=0;printf("pleaseinputaandn");scanf("%d,%d",&a,&n);printf("a=%d,n=%d",a,n);while(count<=n){tn=tn+a;sn=sn+tn;a=a*10;++count;}printf("a+aa+...=%ld",sn);}3.公式∏/4=1-1/3+1/5-1/7+...+1/n,求∏的近似值,直到最后一项1/n的绝对值小于0.。#include

3、#includemain(){intf=1;doublepi=0,t=1,v=1;while(fabs(t)>1e-6){pi=pi+t;v+=2;f=-f;t=f/v;}pi*=4;printf("∏=%f",pi);}1.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。规律:分子是前一项分子分母之和,分母是前一项的分子。main(){intn,t,number=20;floata=2,b=1,s=0;for(n=1;n<=number;n++){s=s+a/b;t=a;a=a+b;b=t;/*序列规律的实现*/}

4、printf("sumis%9.6f",s);}2.判断11<=x<=10000中的数那些是回文数,统计回文数个数,回文数每行输出10个。分析:(1)让x重新构成新的数t,如果x==t则是回文数.(2)分解出x的各位,进行首尾比较,如果都相等则是回文数。fun1()//算法一{longx,i,t=0,s=10,cnt=0;for(x=11;x<10000;x++){i=x;while(i!=0)//构成新的数{t=t*s+i%10;i=i/10;}if(t==x){printf("%5d",x);cnt++;if(cnt%10==0)printf("");}t=0;}printf

5、("cnt=%5d",cnt);}fun2()//算法二{longx,i,t=0,j=0,s=10,x1,cnt=0;inta[10];for(x=11;x<10000;x++){x1=x;while(x1!=0)//分解出各位{a[j]=x1%10;x1=x1/10;j++;}i=0;j--;while(i=j){printf("%5d",x);cnt++;if(cnt%10==0)printf("");}j=0;}printf("cnt=%5d",cnt);}main(){fun1

6、();}1.求1+2!+3!+...+20!的和。main(){floatn,s=0,t=1;for(n=1;n<=20;n++){t*=n;//实现阶乘s+=t;//将阶乘累加}printf("1+2!+3!...+20!=%e",s);//%e为科学计数法输出}1.输入一个年份判断它是否是闰年,满足下面条件之一就称为闰年:(1).能被4整除而不能被100整除。(2).能被100整除也能被400整除。#includemain(){longintyear;printf("inputyear:");scanf("%d",&year);if(year%4==0&&yea

7、r%100!=0

8、

9、year%100==0&&year%400==0)printf("yes");elseprintf("No");}2.将十进制数转换成任意进制。分析:将输入的数循环除以基数取余直到商为0,然后逆序输出。#includevoidmain()//idec为十进制数,ibase为要转换成数的基{intidec,i,idr,p=0,ibase;charstrdr[20],t;printf("输入要转换的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。