​C和C++的区别:

C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。

C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。

所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。

C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“

设计这个概念已经被融入到C++之中

”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。

​例如:

153=1*1*1+5*5*5+3*3*3 153为三位数,它的每个数字的三次方之和等于153。

要求:用C语言实现求出100~999之间的所有水仙花数。

要验证一个三位数是不是水仙花数很简单,只要把它的三个数字的三次幂加起来,看看是否等于它本身即可。所以问题的关键是如何用C语言得到一个三位数的三个数字。

我们知道任意一个三位数,都等于它的百位数乘以100,加上它的十位数乘以10,再加上它的个位数乘以1 。比如:567=5*100+6*10+7*1 。

根据这一特性,我们可以得出,一个三位数的百位数就等于该数除以100的整数部分(567除以100的整数部分为5,即它的百位数是5),而十位数等于该数减去百位数乘以100再除以10的整数部分((567-5*100)再除以10的整数部分等于6,即该数十位数是6),而个位数就等于该数减去百位数乘以100,再减去十位数乘以10(567-5*100-6*10=7,个位数为7)。

代码中关键部分做了详细的注释,代码中的i++等价于i=i+1。编写在visualstudio中的运行结果如下:

我们可以得知,100~999之间的水仙花数为:153,370,371,407

如果要求1000~9999之间的水仙花数呢?原理是一样的,依次得到四位数的千位数、百位数、十位数和个位数即可。自己动手试一试吧!

升序输出三个数_C语言入门经典例题:求100~999的水仙花数相关推荐

  1. 求100~999的水仙花数(C语言)

    用C语言求水仙花数,代码如下: #include<stdio.h> int main() {int i=0;int j,k,m,count=0;for(i=100;i<1000;i+ ...

  2. 什么是水仙花数,使用Java的for循环简单输出100~999的水仙花数和个数

    水仙花是一种很美丽的花,那我们数学领域中有一种数字也是和水仙花般美的数字,叫做水仙花数,那么这种数字和其他数字有什么区别呢?水仙花数的特别之处在哪呢? 首先,水仙花数是一个三位数,也就是说,水仙花数的 ...

  3. java三个整型变量_初值自定义.if按由小到大的顺序输出这三个数_C语言实现3个数从小到大排序/输出的方法示例...

    前言 本文主要给大家介绍了一个功能,任意输入 3 个整数,编程实现对这 3 个整数由小到大进行排序.下面话不多少了,来一起看看详细的介绍吧 实现过程: (1)定义数据类型,本实例中 a.b.c.t 均 ...

  4. c语言入门第6,c语言入门经典 第5版_c语言入门经典_c语言入门自学(6)

    1.8.5 函数体 main()函数的一般结构如图l-2 所示: 函数体是在函数名称后面位于起始及结束两个大括号之间的代码块.它包含了定义函数功能的所有语句.这个例子的main()函数体非常简单,只有 ...

  5. c语言水仙花数算法流程图,C语言经典算法例题求100-999之间的“水仙花数

    #include #include using namespace std; /* 求100-999之间的水仙花数 */ int main() { int number,hun,ten,gw,sum; ...

  6. c语言入门经典第五版自学,C语言入门经典(第5版) PDF扫描[103MB]

    C语言入门经典(第5版)  内容简介: C语言是每一位程序员都应该掌握的基础语言.C语言是微软.NET编程中使用的C#语言的基础:C语言是iPhone.iPad和其他苹果设备编程中使用的Objecti ...

  7. c语言入门经典必背18个程序,c语言入门经典必背18个程序

    c语言入门经典必背18个程序 1 . /* 输出 9*9 口诀.共 9 行 9 列, i 控制行, j 控制列. */ #include "stdio.h" main() {int ...

  8. c语言入门经典案例,c语言入门经典案例及飞源代码.doc

    c语言入门经典案例及飞源代码 循环控制输出图案 [程序1]题目:输出9*9口诀.1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列.2.程序源代码:#include "stdio.h ...

  9. C语言入门经典(第5版)之编程初步

    为什么80%的码农都做不了架构师?>>>    现在读者一定很渴望编写程序,让计算机与外界进行实际的交互.我们不希望程序只能做打字员的工作,显示包含在程序代码中的固定信息.的确,编程 ...

最新文章

  1. java = 与 == 同时使用问题 (例如 isRead = result == 0;)
  2. 基于Android的浮动组件,可以用于应用中的新功能展示等等。
  3. boost::gil::view_type用法的测试程序
  4. 一个成功的研发团队应具备的9大属性
  5. 虎扑入股“造物”App关联公司 后者为模玩、手办平台
  6. mysql 无法创建用户_无法在MySQL 5.6中创建用户
  7. linux安装tomcat_Linux云服务器安装jdk、Tomcat、MySQL5.7 - 咸鱼落成
  8. noip模拟赛 猜数字
  9. 我是火枪,我想打dps
  10. AIOT在数字化转型中的机遇和挑战
  11. MFC之对于文档类的DeleteContents和OnNewDocument说明29
  12. AI 考古比胡八一更高效
  13. macos下安装john the ripper并配置zip2john
  14. 数据报表常用excel公式
  15. 会议签到效率低,怎么办?用这招轻松解决
  16. 计算机课小组主题作业,计算机应用课程小组学习法的实践
  17. 计算机屏幕出现条纹w7,电脑屏幕出现条纹,教您电脑屏幕出现条纹怎么办
  18. 面试android开发工程师小结
  19. shell 中的单行注释和多行注释
  20. ssm+java计算机毕业设计大学生就业管理系统26cjn(程序+lw+源码+远程部署)

热门文章

  1. [转注自官网]Cocos2d-x Tutorial 4 - 如何放出子弹(Glede Edition for 2.0.3)
  2. Context与ApplicationContext
  3. Please review your Gradle project setup in the android/ folde
  4. 左耳朵耗子:聊聊分布式系统架构
  5. ASP.NETMVC Model验证(五)
  6. 大白话讲解如何给github上项目贡献代码
  7. java中反复使用代码_Java代码复用规则
  8. 2015年10月26日作业
  9. Android数据的四种存储方式
  10. Delphi 的运算符列表