9月19日-高级语言程序设计-课程内容(3)

9月19日第三次上课记录

主要内容:
1,程序设计语言
2,程序设计的基本过程
3,C语言程序的组成和结构
4,C语言程序的开发
5,C语言的基本语法单位
6,数据与数据类型


1,程序设计语言

程序设计语言是人与机器交流的语言,大致可以分为三类:
1,机器语言:由二进制代码按照一定规则组成的命令合集,也叫指令合集。机器可以直接识别,执行效率也高,但是人类很难读懂,并且由于每个电脑指令集不同,机器语言编写的程序是无法移植的。
2,汇编语言:一种机器语言的改进版本,有更好的可读性,但是程序编写复杂,抑制性依旧很差,需要翻译成计算机可以识别的机器指令后才能在计算机上执行。
3,高级语言:拥有更强的表达能力,更容易掌握,有较强的移植能力。所有高级语言都包含四种基本能力和三种控制结构。
高级语言的四种基本能力:
(1)数据表达能力:
(2)数据运算能力
(3)数据的输入和输出能力
(4)数据处理的流控制能力
高级语言的三种控制结构:
(1)顺序结构
(2)选择结构
(3)循环结构

2,程序设计的基本过程

1,分析问题:(1)分析问题性质。(2)考虑对数据的表示和输入输出。(3)确定使用数学模型或处理方法。
2,设计算法
3,编写程序
4,编译程序:编译和解释都属于翻译成机器语言的过程,但是两者是不同的。编译是将程序转换成机器语言然后直接执行机器码,速度较快。解释是用解释器把代码一行一行执行,比较慢。但是编译的移植性没有解释好,因为编译是将代码转换成当前CPU和操作系统认识的机器码,移植的时候无法保证目标设备认识。
5,调试程序:发现和排查程序中的错误。
6,编写程序文档:类似于写说明书。

文件:文件是存放在外存储介质中的,它一定有一个以基本名和扩展名组合而成的文件名,老式系统中可能要求基本名不能超过8个字符,但是现在设备都大大拓展,达到255个字符。编译就是把源代码文件转换成可执行文件的过程。

设计算法过程中,我们需要用一种通俗易懂的办法理清思路,算法常用的描述方法有:
(1)自然语言
(2)流程图
(3)伪代码
流程图符号

3,C语言程序的组成和结构

1,注释
(1)段注释:/“星号"这里是注释内容"星号”/(两个*打不出来…)。
(2)行注释://这里是注释内容
注释是不会被翻译成机器语言的。
2,编译预处理
以#开头,在程序编译之前发挥作用,指示编译器怎么编译,预处理不属于程序。
3,函数
每个C程序有必须要有且只有一个主函数main(void),它是程序的入口,C99中规定他的类型要是int(整型)。每个函数都由函数说明部分和函数体部分组成,其中函数体又由变量定义和语句部分组成,C以及大部分高级语言对大小写都是敏感的。函数的源代码以源代码文件形式保存,扩展名为".c"。C语言的主要函数有:(1)主函数main。(2)库函数。(3)用户自定义函数。
4,声明:标识符就是给变量起的名字,标识符规定不能和关键字一样。标识符可以由下划线,字母和数字组成,但是只能由下划线和字母开头。建议不要用预定义的标示作为标识符。
5,赋值

一个C程序可以有多个源程序文件,一个源程序文件可以有多个函数,但是一定要有预编译处理和main函数,可以有全局变量声明,每个函数都要有函数头和函数体,函数体包括生命部分和执行语句部分。

4,C语言程序的开发

开发大致分为一下几个步骤:
(1)编辑源程序,保存为扩展名为".c"的文件。
(2)编译源程序生成目标文件。把C语言的程序转换成机器语言的过程叫编译源程序,C语言编译器以源程序文件为单位进行编译,生成扩展名为".obj"的文件。编译过程中可能出现两种错误:1,语法错误(error),必须修改源程序后重新编译。2,警告(warning),出现不合理现象或者轻微错误,仍可以编译成目标文件。
(3)连接目标文件生成可执行文件。编译器中的链接器将中间代码(源代码转换)和其他代码(启动代码,库函数)合并成可执行文件。
(4)运行并测试可执行程序。对程序的实际运行结果和预期正确结果进行比较分析。

集成开发环境(Integrated Development Environment,简称IDE)
IDE是集成了代码编写功能,分析功能,编译功能,调试功能等为一体的开发软件,一般包括代码编辑器,编译器,调试器,图形用户界面工具等。现在常用的IDE有Visual studio,Xcode,CodeBlocks等。

5,C语言的基本语法单位

按照C99的规定,C语言的基本符号集包括:

  • 26个大写字母
  • 26个小写字母
  • 10个数字字符
  • 29个图形字符
    关键字:特定语法含义单词或单词缩写,用来说明某一固定语法概念。程序中关键字只能使用不能修改。关键字对大小写是敏感的。
    标识符:由基本字符集中的字符构成的字符序列。要求:
    (1)第一个字符必须是字母或者下划线。
    (2)标识符中的其他字符可以是字母,数字和下划线。
    (3)不能用关键字作为标识符。
    (4)标识符对大小写敏感。

6,数据与数据类型

数据类型
基本类型 整型 有符号整型(signed),无符号整型(unsigned)
实型 单精度型(float),多精度型(double)
字符型(char)
构造类型 数组([])
结构体(struct)
共用体(vnion)
枚举类型(enum)
指针类型(*)
空类型(void)

常量:程序运行过程中不能被改变的值。可用宏定义命令来定义:
#define+标识符+常量(写的时候’+'由空格替代)
变量:程序运行过程中可以被改变的值。变量是一个存储数据的容器,它由数据类型,变量名,变量值3个属性确定。它通过数据类型来获得一定长度的存储单元,把变量值存储在其中,通过变量名来修改或获取这个值。给变量一个值叫做赋值,使用变量中的值叫做取值。使用变量时,一定要先定义,再赋值,再使用。

有符号的整型类型:

名称 完整写法 省略写法 字节数 位数 数值范围
短整型 short int short 2 16 -215~215-1
基本整型 int 4(2) 32(16) -231~231-1(16位15次方)
长整型 long int long 4 32 -231~231-1

无符号的整型类型:

名称 完整写法 省略写法 字节数 位数 取值范围
短整型 unsigned short int unsigned short 2 16 0~216-1
基本整型 unsigned int unsigned 4(2) 32(16) 0~232-1(16位16次方)
长整型 unsigned long int unsigned long 4 32 0~232-1

实型数据:

类型名称 类型关键字 字节 有效数字 取值范围
单精度 float 4 6~7 0,1.2x10-38-3.4x1038
双精度 double 8 15~16 0,2.3x10-308-1.7x10308
长双精度 long double 16 17~18 0,3.4x10-4932-3.4x104932

字符常量转义字符:

表示形式 含义说明 ASCII码
\0 空字符 0
\a 响铃 7
\b 退格 8
\t 水平制表 9
\n 换行 10
\v 垂直制表 11
\f 换页 12
\r 回车(回到当前行的开头) 13
" 双引号 34
单引号 39
\ 反斜线字符 92
\ddd 1~4位八进制ASCII码对应的字符(最大为377)
\xhh 1~2位十六进制ASCII码对应的字符(最大为FF)

猜你喜欢

转载自blog.csdn.net/weixin_43008400/article/details/82769201