c语言程序设计与项目实践第19章.ppt

c语言程序设计与项目实践第19章.ppt

ID:49457085

大小:336.50 KB

页数:24页

时间:2020-02-07

c语言程序设计与项目实践第19章.ppt_第1页
c语言程序设计与项目实践第19章.ppt_第2页
c语言程序设计与项目实践第19章.ppt_第3页
c语言程序设计与项目实践第19章.ppt_第4页
c语言程序设计与项目实践第19章.ppt_第5页
资源描述:

《c语言程序设计与项目实践第19章.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第19章C语言应用实例本章的学习重点◆C语言解决实际问题◆C语言完成数学函数运算◆C语言工程项目建立与完成19.1C语言巧解问题实例C语言可以解决实际生活中许多小问题,小运算。同时,使用C语言也可以仿真和实现许多人工计算和统计难以实现的工作。下面介绍使用C语言解决实际生活中一些常见的计算问题,以展示C语言的实用性。19.1.1求1到1000之内的素数素数,又称为质数,其定义为:只能被1和它本身整除的自然数叫做素数。也就是说,任何一个素数,它除了能表示为其本身和1的乘积外,不能表示为任何其他两个正整数的乘积。例如,自然数7,只能表示为1*7,因此,7是素数。素数是一类特殊的数字,它在实际中也有很

2、多应用,例如使用素数构建素数表,用于进行工程测试,使用素数搭建加密系统,使密码更加难以被破解等。随着数字数值的增加,素数越来越少。在古代,素数的计算主要靠人工计算,繁琐且容易出错,现在,使用C语言则可以很容易的实现素数的统计计算。可以使用for循环遍历自然数,同时,根据素数的定义,对于自然数n,若n不能够被除1以外小于等于的所有自然数整除,则这个数就是素数。19.1.2巧解古代百钱买百鸡问题百钱买百鸡问题是中国古代经典的趣味算术问题,在今天,仍然有很多测试沿用这一题目进行智力测试。这一问题的具体描述是:5吊钱可以买1只公鸡,3吊钱可以买一只母鸡,1吊钱可以买3只小鸡。用100吊钱买100只鸡,

3、没种鸡必须有一只,那么可以买公鸡、母鸡、小鸡各多少只?共有多少种买法?这一问题在现代方程代数数学中可以很容易的解决,可以设100吊钱可以买x只公鸡,y只母鸡,z只小鸡,共100只,则可以使用下面的方程组表示:其中,x,y和z都是正整数,对于这样一个不定方程,只能使用试凑法解决,过程繁琐且容易产生错误。19.1.3巧解换钱币问题换钱币问题是外国古代趣味算术问题的经典题目,和我国古代百钱买百鸡问题极为相似,具体问题描述为:用一个1磅金币可以兑换1分、2分和5分金币,试问共有多少种不同的兑换方法。其中,1磅金币=100分金币。这一问题与百钱买百鸡问题可以沿用类似的程序来解决,所不同的是本题并没有限制

4、1分、2分或5分金币的数量。19.1.4求1-20000之间的平方回文数回文数也叫对称数,是指这类数的各位数字具有对称性,例如12121,通常,可以通过使用任何一个数字与其倒序数相加,再依次执行下去获得,例如:96+69=165,165+561=726,726+627=1353,1353+3531=4884。但是也有某些数字目前为止还不能验证是否可以通过上述操作获得回文数,例如数字196。平方回文数是指这类数字即是回文数,又是某个自然数的平方数,例如121,就是11的平方数,同时也是回文数。可以编写程序,通过遍历获得平方回文数19.1.5验证卡布列克常数卡布列克常数是美国数学家卡布列克在进行数

5、学运算时发现的一个有趣的数学规律,他也因此而闻名世界。卡布列克常数是一个非常简单的数字,共有两个,一个是495,一个是6174。这两个数字都具有特殊的规律,对于任何各位数字不全相同的三位数字或四位数字,都可以通过一定规律的运算得到这两个数字。其运算规律为:首先,将所选数的各位数字从大到小排列组成一个新的三位数x,然后,再将各位数字按从小到大排列得到另一个新的三位数y,然后,使用大的数字减去小的数字:x-y=z。得到差值z之后,对得到的结果z继续执行上述运算,直到每次都得到相同的数字为止。例如,数字132,首先将这个数的各位数字从大到小排列组成一个新的三位数321,然后再将各位数字按从小到大排列

6、得到另一个新的三位数123,然后,使用大的数字减去小的数字:321-123=198。继续执行上述操作:981-189=792,972-279=693,963-369=594,954-459=495,954-459=495,……。同样,对于四位数字,也存在这样的规律。有趣的是,除了三位数和四位数,再也没有能够找到符合这一规律的数字。通过编写程序,可以验证四位数字卡布列克常数的正确性。19.2C语言应用实例——计算数学公式C语言工程编译软件VisualC++中有很多函数库,其中数学函数库最为丰富,可以通过包含头文件math.h来调用数学库中的数学函数。对于VisualC++中的数学函数,大部分都是

7、使用C语言编写与实现的,因此,利用C语言实现数学函数逼近及数学公式计算广泛应用于工程运算中。19.2.1C语言实现三角函数sinx逼近数学中曾经介绍过,三角函数可以展开为无穷泰勒级数。而泰勒级数可以通过循环累加实现,而循环累加操作恰好是C语言最容易实现的操作,因此,使用C语言实现三角函数的逼近则变得非常简单而容易实现。sinx可以展开为泰勒级数如下的泰勒级数:通过for循环可以实现对sinx的逼近

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

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

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