首页
学习
活动
专区
工具
TVP
发布

C语言/C加加程序设计编程基础学习—经典算法

C语言是面向过程的,而C++是面向对象的

C和C++的区别:

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

C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。

C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。

请原谅小编把这个算法单独提取出来算作一个“经典算法”,因为对于一个初入编程世界的新手,各种已知与未知碰撞的代码世界,最开始让他眼前一亮的都是这个程序吧!欢迎你,加入代码的世界,hello world!

main()

printf("Hello world! ");

言简意赅,这行代码算法就是在cmd中打印一行 Hello world!

小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

二、比较三个数的大小

这个算法核心是分别找出其中的最大值、最小值,中间值,分别存储到max、min、middle三个整形变量中。主要是遍历的思想。在编程中,遍历是一种重要的思维方式,可能比较蠢,但是却是暴力破解、枚举等等高级一些的算法的基础。

下面是程序运行后的结果截图。

三、求某一年是否是闰年

科学研究表明,地球绕太阳运行周期为365天5小时48分46秒(合365.24219天),即一回归年(tropical year)。公历的平年只有365日,比回归年短约0.2422 日,每四年累积约一天,把这一天加于2月末(2月29日),使当年的历年长度为366日,这一年就为闰年。 按照每四年一个闰年计算,平均每年就要多算出0.0078天,经过四百年就会多出大约3天来,因此,每四百年中要减少三个闰年。所以规定公历年份是整百数的,必须是400的倍数才是闰年,不是400的倍数的就是平年。比如,1700年、1800年和1900年为平年,2000年为闰年。闰年的计算,归结起来就是通常说的:能够被400整除,或者不能被100整除但是能被4整除的,都是闰年(leapyear)。这就是转换为程序语言的基础。

main()

{

int year;

scanf("%d",&year);

if(year%400==0||(year%100!=0&&year%4==0))

printf("%d是闰年!",year);

else

printf("%d不是闰年!",year);

}

运行测试如下图

小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

四、兔子繁殖问题

有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

经过分析,兔子数量变化规律,1,2,3,5,8,13......

这里的递推公式是An+2=An+An+1,所以我们的程序代码如下图。

五、判断素数

所谓素数,是指只能被1和它本身整除的数。下面给出经典的素数判定代码。

{

int x,i;

scanf("%d",&x);

for(i=2;i

if(x%i==0)break;

if(i==x/2)

printf("%d是素数!",x);

else

printf("%d不是素数!",x);

}

下面是运行测试结果。

小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

这些是C/C++能做的

服务器开发工程师、人工智能、云计算工程师、信息安全(黑客反黑客)、大数据 、数据平台、嵌入式工程师、流媒体服务器、数据控解、图像处理、音频视频开发工程师、游戏服务器、分布式系统、游戏辅助等

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180321A1UNQF00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券