【无标题】

高级语言程序设计

高级程序语言简介

C语言是当今使用最广泛的高级语言,是操作系统、编译系统等大型复杂系统的首选语言。用C语言编写的程序,灵活、方便、简洁、高效、数据结构丰富、功能齐全。C语言以其灵活方便的特点,成为培养学生计算机语言思维,了解计算机编程思想的最佳语言。

程序与设计语言

问题1:什么是程序程序?

实际上是一个用计算机语言描述的某一问题的解决步骤

问题2:什么是语言?

自然语言是人与人之间的交流工具,而人与计算机之间的交流就是计算机语言。如:C语言、java、汇编语言、机器语言等。

问题3:什么是程序设计?

将编写程序的过程称为程序设计。程序设计语言分为低级语言与高级语言。

低级语言

对机器的性能,通用性差,要求专用只是,普遍用户难以使用。

1、机器语言

低级语言的起源是机器语言:机器语言是以二进制(0,1)形式表示的机器基本指令的集合。
机器语言的特点是:运行速度快(机器可以直接识别),节省内存,难阅读、难修改。

2、汇编语言

从机器语言发展到汇编语言,通过使用助记符来表示机器指令,主要是为了解决语言难以理解和记忆,用易于理解和记忆的名称和符号表示的机器指令(用助记符来代替指令中的操作代码,用地址符代替地址码)。计算机不能直接识别和执行汇编语言编写的源程序,必须经过一个叫汇编程序的系统软件翻译成机器语言程序后才能执行。
例如ADD A, B
特点:计算机无法直接执行,需要汇编程序;执行效率比较高,与特定机器相关;通用性可移植性差。

3、 高级语言

用接近自然语言和数学语言的语句构成的语言。例如C语言(C语言属于低级语言中的高级语言)。
如ADD -> A+B 用+和-来表示加减运算
但是高级语言也不能直接被机器识别,必须经过翻译程序,将用高级语言编写的陈鼓型但已成机器语言才能执行。

问题1:比较一下高级语言和汇编语言翻译的效率?

①高级语言------------》机器语言;
②高级语言------------》汇编语言-------------》机器语言;
由此可知,汇编语言的效率要快

高级语言特点:

1、编程效率高,执行速度相对低级语言慢;2、可移植性好;3、执行需翻译

4、面向任务的程序设计语言

是面向非过程化的语言,不需要知道问题是如何求解的。例如数据库的SQL语言

5、面向对象的程序设计语言

认为系统是由许多对象组成,对象通过消息相互联系和相互作用,从而完成系统的功能。如C++,JAVA,C#等。
优点:设计的程序更易懂,更适合更大规模的程序开发。

C语言的发展与特点

什么是C语言

C语言是一种高级语言中的低级语言,作为系统的描述语言,既可以写系统的软件,也可以写应用软件。如UNIX操作系统、扫雷,贪吃蛇。

C语言的特点

(1)语言简洁,紧凑,使用方便,灵活
(2)运算符丰富
(3)具有编程语言的各种数据结构
(4)结构化的控制语句,模块化的编程方式
(5)语法限制少,程序设计白山度大

C程序的基本结构

#include <studio.h>    ------------帽子
void main()      -------void是没有返回值
{
	int a, b, c, s; ------分号代表一条语句的结束
	printf("Hello World")
}        ------

(1)C程序的基本单位是函数,有一个或多个构成,有且有一个main函数。
(2)一个函数有两部分组成,函数的首部和函数体。函数体用{ }括起来体内由变量定义和语句部分组成。函数的首部,即函数的第一行,包括函数的名称,类型,参数名称,参数类型。函数名后面必须有圆括号()。
如:void main()int max (int x, int y)
(3)C程序从main()函数开始执行,main()函数可放在任意位置。
(4)程序书写格式自由,一行内可写多个语句,一个语句可分写在多行上。
(5)每条语句最后必须有一个分号(😉 分号是C语句的必要组成部分。
(6)由“/”与“/”之间的内容构成C语言程序的注释,增强了程序的可读性。
(7)用预处理命令#include可以包含有关文件的信息。
(8)在C语言中区分大小写,如Main、MAIN、main、 maiN是不相同的。

C语言的字符集

C语言的基本字符集包括有英文字母、阿拉伯数字和其他一些符号,如下所示:
(1)英文字母:大小写各26个,共计52个;
(2)阿拉伯数:0 - 9共10个数字;
(3)下划线:_;
(4)特殊符号:通常指由1~2个符号组成的运算符。
算术运算符:+ - * / % ++ –
关系运算符:< > >= <= == !=
逻辑运算符:&&!位运算符:&& || ! (与或非)
位运算符:& |(按位或) ~(按位取反) ^ >> <<
条件运算符:? : 赋值运算符: =
其他分隔符:()[] {} . , ;

标识符就是用来标识变量名、符号常量名、函数名、类型名、文件名等的有效字符序列。
**标识符起名规则**:
(1)标识符只能由字母、数字和下划线三种字符组成。
(2)第一个字符必须为字母或下划线。
例如:
合法标识符:_22A, tca_1, sum3, day, Ade43w8
不合法标识符: NEW. YORK, $_238, #XYZ, A*b, 10Tea
注意:在C语言中,区分大小写。因此,a和A,I和i,Sum和sum,分别是两个不同的标识符。
关键字就是具有特定含义的标识符,不能作为变量名或函数名来使用;用户不能用来作自定义标识符。由ANSI标准推荐的关键字有32个,常用的有:
(1)与数据类型有关的(12个):charint float doublesigned unsignedshortlongvoidstructunionenum
(2) 与程序控制结构有关的(12个)dowhile for if else switchcase defaultgotocontinue break return
(3) 与存储类别有关的(4个):autoexternregisterstatic
(4)其他的(4个):constsizeoftypedefvolatile

算法及算法描述

算法的概念

算法,就是研究解题的步骤和方法。学好程序设计语言的两步:
(1)对数据的描述。即在程序中要指定数据的类型和数据的组织形式,即数据结构。
(2)对操作的描述。即程序完成其功能所要进行的操作步骤:算法。即:程序=数据结构+算法

算法的特点

(1)有穷性。一个算法必须保证执行有限步之后结束;
(2)确定性。算法的每一个步骤必须具有确切的定义;
(3)应对算法给出初始量
(4)有一个或多个输出
(5)有效性。算法的每一步都必须是计算机能进行的有效操作。不能出现如 X/0 的操作。

算法的描述方法

我们可以用自然语言来描述一个问题的解决步骤(即算法),也可以用其他一些约定的描述工具,算法的描述一般有以下方法:
① 自然语言表示法;
② 传统的流程图(BS流程图)表示法;
③ 结构化的流程图(N-S流程图)表示法;
④ 伪代码表示法;
⑤ 计算机语言表示法(程序)。

1、自然语言:

使用人们日常进行交流的语言。如:从a, b中找出一个小的数给min.
(1)从键盘输入两个数给a和b;
(2)如果a比b小,则把a的值传给min,否则把b的值传给min;
(3)输出min的值。

2、专用工具:

借助于有关图形工具或代码符号来描述。常用的工具有流程图、N-S图等。
2.1 流程图

Yes
No
Yes
No
起止框
判断框
处理框
处理框
处理框
连接
Start
Is it?
OK
Rethink
End

2.2 N-S图
N-S图:N-S图

3、常用算法

常用的算法迭代法:
迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程。
穷举法:穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。
递归法:程序调用自身的编程技巧称为递归,是函数自己调用自己。一个函数己在其定义中直接或间接调用自身的一种方法,它通常把一个大型的复杂的问题转化为一个与原问题相似的规模较小的问题来解决,可以极大的减少代码量。
递推法:通过已知条件,利用特定关系得出中间推论,直至得到结果的算法。

开发环境

C程序执行过程

执行过程:在这里插入图片描述
注意:编译只能发现于法错误,不能发现算法错误
注释有3中:
(1)//
(2)//
(3)#if() …#endif

基本数据类型

基本的数据类型

如图:在这里插入图片描述

常量与变量

1、常量

常量是指在程序运行中,其数值不能被动改变的量。它可以分为直接常量和符号常量。直接常量是指一个具体的值(可以是数字,字符串)。符号常量是指一个可以被赋值的常量,例如当一个数字在code中多次出现时,可以使用一个字符串来表示。
符号常量的定义形式:#define 标识符 常量数据 (一般符号常量名大写,变量名小写)

2、变量

变量是指以标识符为名字,其值时可以变化的量。变量代表计算机内存中某一存储空间,该存储空间存放的数据就是变量的值。变量有两个要素(变量名和变量值)。变量不能被重复定义,切记要先定义后使用。
定义形式: 类型标识符(int,float,char,double) 变量名(符号标识符,当多个变量时用逗号隔开)
注意
(1)C语言对英文字母的大小敏感,即同一字母的大小写,被认为是两个不同的字符。习惯将变量名和函数名中的英文字母用小写,以增加可读性。
(2)在同一程序块中,变量不能被重复定义(不能有两个名字一样的变量)。
(3)使用变量时必须“先定义,后使用”。

3、变量作用域初识

变量的作用域分为:局部变量和全局变量
局部变量:
1.在函数内定义;只在该函数中才能使用。或在复合语句中定义和使用。
定义位置
2.定义为函数的参数,只在该函数中才能使用。
全局变量(外部变量或全程变量):在函数外定义;从它被定义的位置起,在之后的所有函数中有效。
变量的特点
变量是指以标识符为名字,其值可以改变的量。变量代表计算机内存中的某一存储空间,该存储空间中存放的数据就是变量的值。在同一程序块中,变量不能被重复定义。使用变量时必须“先定义,后使用”
注意:C语言不支持二进制
(1)士进制小数形式:由数字和小数点组成;例如:3.14,4.,.4,.0, 0.。
(2)指数形式:“十进制小数或整数”+“e(或E)”+“十进制数整数”,e(或E)的两边必须有数,不能省略。例如:3.5e-4 表示3.5×104
如:ЗE0. 2 × e2 × 5.4E+8 √
实行舍入误差:在这里插入图片描述

  • 16
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值