c语言基本算法 博客,C语言入门级教程:基础数据类型与基本算法,学编程从此刻开始!...

本文适合C语言初学者,讲解了C语言的基础数据类型,包括基本类型、构造类型、指针类型和空类型,并通过思维导图帮助理解。此外,还介绍了算法的基本特性,如有穷性、确定性和时间复杂度,以及如何通过自然语言、流程图等方式描述算法。示例代码展示了符号常量的使用和求圆面积的算法流程。
摘要由CSDN通过智能技术生成

今天带大家了解一下学C语言必备的基本数据类型和基本算法,适合刚学C以及零基础的小伙伴!

话不多说,我们一起来学习吧~

↓ ↓ ↓

❀ 数据类型

● 基本类型

基本类型就是我们在使用C语言时最基础的数据类型,包括整形(短整型,基本整型,长整型)、字符型、浮点型(单、双精度)以及枚举类型。

● 构造类型

在编程的过程中只使用基本类型是远远不够的,为了满足需求,因此还要使用基本类型之外的类型,构造类型就是其中的一种。

构造类型可以使用基本类型构造出新的数据类型来满足实际开发中的需求。构造类型有3种形式:数组类型、结构体类型、共用体类型。

● 指针类型

指针是C语言的精华所在,许多编程语言中都支持某种形式的指针,但最著名的是C语言。

指针的特殊性在于它的值是一个内存地址。关于指针后面我们会详细说明。

● 空类型

空类型(void)的主要作用就是限定函数的返回和限定函数的参数。

为了便于记忆,我将数据类型做了一个简单的思维导图,如下:

c9ae270372d8e08b2f2f5973ce19bbce.png

● 常量

这块内容就不在用过多的文字赘述了,从下面的思维导图我们可以直观的理解。

a9d734a0878f435da372eae7b4e360a0.png

关于符号常量我们来看一段简单的代码,你就能够明白啦~#include

#define PI 3.14/*定义符号常量*/

int main() {

double r=5.0;/*定义半径*/

double area;/*面积变量*/

area = PI*r*r;/*计算面积*/

printf("圆的面积是:%f\n",area);/*打印输出*/

return 0;

}

❀ 基本算法

算法的特性和算法的表示。

算法的基本特性

算法包含两方面的内容:算法设计和算法分析

算法设计其实就是针对某一特定类型的问题而设计的一个实现过程。算法有以下几个特性:㉿有穷性

㉿ 确定性

㉿ 可行性

㉿ 输入

㉿ 输出

也就是说我们在设计算法是的满足上面所说的特性。当然算法也是有好有坏的,那么我们怎样去衡量一个算法的优劣呢?

算法分析其实就是在衡量一个算法的优劣,通常会从一下几个方面来分析:㉿ 正确性

㉿ 可读性

㉿ 健壮性

㉿ 时间复杂度和空间复杂度

算法的表达方式

在描述一个算法时通常使用的方法有:自然语言、流程图、N-S图等。

▶ 自然语言

自然语言这种表达方式通俗易懂,我们通过一个具体的实例了解一下。

需求:任意输入3个数,求出其中的最小数。(1) 定义4个变量分别是a,b,c和min。

(2) 输入大小不同的三个数分别赋值给a,b,c。

(3) 判断a是否小于b,如果小于,则将a的值赋给min,否则将b的值赋给min。

(4) 判断min是否小于c,如果小于,则执行(5),否则将c的值赋给min。

(5) 输出min。

这种表达方式的好处就是简单易懂,但是当遇到复杂的算法时自然语言就显得不是很方便了。

▶ 流程图

流程图就是用一些图框来代表各种不同性质的操作,用流程线来指示算法的执行方向。他的特点就是直观形象,应用很广泛。

下图介绍了流程图的符号以及含义:

acd3bc0fc127fcdfda88765ba9a5d656.png

流程图有三种基本结构,即顺序结构、选择结构和循环结构。

顺序结构:顺序结构就是简单的线性结构

dfebb82f43fd3d591e7a9b3a88cd3ed9.png

选择结构:选择结构也称为分支结构

72b7ae5ae57401dfb2f408fb4c764c14.png

循环结构:反复执行一系列操作,知道条件不成立时终止。

829f58ac8b828776512ca4921f2e47d9.png

我们再把上面的需求用流程图来表示一下

a3120a480d02348b28be8d56c3add98a.png

▶ N-S流程图

N-S流程图是将全部的算法写在一个矩形框内,省去了流程图中的流程线。下面继续看一个实例:

需求:输入一个数,判别是否为素数。

f491146b5281c8d05cb8c02d99a355fe.png

算法的基本特性和算法的表示介绍到就结束了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值