高级语言程序设计(C语言)----第二章 C语言基础知识

本文回顾了C语言的发展历程,从ALGOL60到CPL、BCPL,再到B语言和最终的C语言。介绍了C语言的关键特点,如结构化、运算能力强、数据类型丰富等,并详细解析了基本词法如字符集、关键字和标识符规则。同时概述了C程序的基本组成、语法分类以及开发环境的编译运行和调试过程。

2.1. C语言发展和特点

2.1.1. 发展

❖ C语言源于ALGOL60语言,于20世纪60年代初提出。
⚫ 1963年,英国剑桥大学将ALGOL60语言发展成为组合程序设计语言(CPL)。
⚫ 1970年英国剑桥大学的Martin Richards对CPL进行简化,开发出基本组合程序设计语言(BCPL)。
⚫ 1970年,美国贝尔实验室的 Ken Thompson以BCPL语言(Basic Combined Programming Language(BCPL))为基础,设计出很简单且很接近硬件的B语言(取BCPL的首字母)。
⚫ 1972年,美国贝尔实验室的 D.M.Ritchie 在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,即C语言。
⚫ 1975年UNIX第六版发布后,C语言终于获得了计算机专业人士的广泛支持。
⚫ 1978年,美国贝尔实验室正式推出了C语言
⚫ 1983年美国国家标准协会(ANSI)根据C语言问世以来的的各种版本,对C语言发展和扩充制定了第一个C语言标准草案,称为83ANSIC。
⚫ 1989年ANSI发布了一个完整的C语言标准ANSI X3.159-1989,称为ANSIC或C89。
⚫ 1990年,国际标准化组织(ISO)接受C89为ISO国际标准,也称为C90。
⚫ 1999 年 , ISO 对 C 语 言 标 准 进 行 修 订 , 发 布 了 新 的 C 语言国际标准 -ISO/IEC9899:1999,简称C99。

2.1.2. 特点

(1)结构化语言
(2)运算能力强大
(3)数据类型丰富
(4)具有预处理能力
(5)可移植性好
(6)程序执行效率高
(7)程序设计自由度

2.2. C语言基本词法

2.2.1. 字符集

❖ 定义:字符是组成语言最基本的元素。
C语言的字符集由字母、数字、空格、标点和特殊字符组成。
C语言的字符集就是ASCII字符集,主要包括:
1、阿拉伯数字:0、1、2、…、9(共10个)。
2、大小写英文字母:AZ、az(共52个)。
3、非字母、非数字的可显示字符(33个)。
10进制ASCII码表

2.2.2. 关键字

C语言中具有特殊含义的单词称为“关键字”,又称为“保留字”,主要用于构成语句。
C语言共有32个关键字,所有的关键字均由小写字母组成。其由系统定义,不能重作其它定义。比如auto是C语言关键字,Auto则不是。

C语言关键字的含义

2.2.3. 标识符

标识符是字符的序列,除了库函数的函数名等由系统定义外,其余均由用户自行定义。
用户根据需要对C程序中用到的变量、符号常量、自定义函数等进行命名,形成用户标识符。
需要注意的是:C语言中的命名规则是区分大小写的。
C语言规定,用户标识符仅由大小写英文字母、数字和下划线组成,且第一个字符不能是数字。
用户自定义的标识符既不能是C语言的关键字,也不能与用户已编写的函数或C语言的库函数重名

❖定义:标识变量名、符号常量名、函数名、数组名、文件名的字符串序列——名字。
❖命名规则:
⚫只能由字母、数字、下划线组成,且第一个字符必须是不能是数字
⚫大小写字母含义不同,一般用小写
⚫不能使用关键字
❖使用:先定义、后使用
命名规则示例

2.2.4. 词汇分类(6类)

❖ C语言的词汇分为六类,即常量、标识符、关键字、运算符、注释符和分隔符,
其中:
1. 注释符
C语言的注释符有2种,一种是以“/”开头,并以“/”结尾的多行注释
另一种是以“//”开头的单行注释
两者的区别在于,第一种注释可以跨行,第二种注释不可以跨行。
2. 分隔符
C语言的分隔符包括逗号空格两种。
逗号主要用在类型说明和函数参数表中,分隔各个变量;
空格多用于语句各单词之间,作为间隔符。
⚫ 符号常量:用标识符代表常量
◆ 一般用大写字母: PRICE 、 PI
◆ 定义格式: #define 符号常量 常量 例如: #define PI 3.14
◆ 其值在作用域内不能改变和再赋值。
⚫ 符号常量的优点是:见名知意、一改全改

2.3. C语言基本语法分类

❖ 按照语句功能或构成的不同,可将C语言的语句分为 数据定义语句、赋值语句、函数调用语句、表达式语句、流程控制语句、复合语句和空语句等等,C语言的每个语句都以分号“;”结束。
⚫ 数据定义语句:声明变量,向内存申请空间
⚫赋值语句:一般声明变量后,会给一个初始值。
⚫ 函数调用语句:函数也叫方法,调用已定义的方法/函数
⚫函数表达式语句:比如正则表达式
⚫流程控制语句:比如if-else语句,或者循环语句
⚫复合语句:简称为语句块,它使用大括号把许多语句和声明组合到一起,形成单条语句。一般格式如下:{ [声明和语句的列表] }
⚫空语句: 就是说没有执行代码,只有一个分号的语句 ,起到占位符的作用。
大多是为后期程序升级扩展所用。
空语句不产生任何操作运算,只是出于语法上的需要,在某些必需的场合占据一个语句的位置,在程序中空语句可用来作空循环体。
在这里插入图片描述

2.4. C程序基本组成

2.4.1. C程序的概念及组成特点

❖ C程序是由语句组成的,通常包括一个或多个函数,其中有且只有一个函数称为主函数,其函数名为main。
❖ C程序的组成特点:
⚫ 1、每个C程序由一个或多个函数组成。每个C程序有且仅有一个主函数,除主函数外,可以没有其他函数,也可以有一个或多个其他函数。
⚫ 2、函数是C程序的基本单位。每个函数是由函数首部和函数体两部分组成。
⚫ 3、C程序中每一语句后面都以分号“;”作为语句的结束,但预处理命令、函数首部和右花括号“}”之间不能加分号
⚫ 4、C语言本身没有输入/输出语句,而是通过调用库函数scanf()、printf()、getchar()和putchar()实现的。
⚫ 5、C程序的任意位置都可以加注释//,注释可以多行,但不可嵌套。
⚫ 6、C程序的书写格式灵活,一行内可书写多条语句,一条语句也可以写在多行
上,可以任意插入空格和回车。
⚫ 7、C程序的执行总是从主函数开始,并在主函数结束。主函数和其他函数的位置是任意的,其他函数总是通过函数调用语句被执行。
⚫ 8、C程序中可以有预处理命令,通常预处理命令应放在程序的最前面。
⚫ 9、主函数可以调用任何其他函数,任何其他函数之间可以互相调用,但不能调用主函数。

2.4.2. C语言结构特点

函数与主函数
⚫程序由一个或多个函数组成
⚫必须有且只能有一个主函数main(),可以放在程序中任一位置
⚫程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。
程序语句
⚫ C程序由语句组成
⚫用“;”作为语句终止符
注释
⚫ /* */为注释,不能嵌套
⚫不产生编译代码
非法的注释使用方式

❖编译预处理命令

在这里插入图片描述

2.5. C程序开发环境

2.5.1. C程序的运行步骤:

1、编辑:进入C语言编译系统,建立源程序文件,扩展名为“c”或“cpp”,编辑并修改、保存源程序。
2、编译:计算机不能识别和执行高级语言编写的源程序,必须经过编译程序对源程序进行编译。
3、连接:经过编译生成的目标程序还无法在计算机上直接运行,因为源程序中输入、输出以及常用的函数运算是直接调用函数库中的库函数,因此必须把库函数的处理过程链接到经编译生成的目标程序中,生成可执行文件,其扩展名为“exe”。
4、运行:一个C源程序经过编译、链接后生成可执行文件,可在编译系统或操作中运行。

C语言运行步骤
C程序运行流程图
C程序编译过程

2.5.2. C程序的运行

(一)启动开发工具
(二)新建项目
(三)新建源程序
(四)编译源程序
(五)链接源程序
(六)运行程序

2.5.3. C程序的调试

(一)设置断点
(二)调试界面
(三)单步调试

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

川月向南

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值