【高级语言程序设计(一)】第 2 章:C 语言基础知识

目录

一、C语言发展和特点

(1)C 语言的发展 

(2)C 语言的特点

二、C 语言基本语法

(1)字符集

(2)关键字 

(3)标识符

(4)词汇分类

① 注释符 

② 分隔符

③ 常量 

三、C 语言基本语句分类

四、C 程序基本组成

(1)C 程序的组成特点 

(2)C 语言结构特点 

(3)C 语言格式特点

五、C 程序开发环境

(1)C 程序的运行步骤 

(2)C 程序的运行

① 启动 Microsoft Visual C++ 6.0 

② 新建项目 

③ 新建源程序 

④ 编译源程序 

⑤ 链接源程序

⑥ 运行程序

(3)C 程序的调试 

① 设置断点

② 调试界面 

③ 单步调试



一、C语言发展和特点

(1)C 语言的发展 

  • 20 世纪 60 年代初:C 语言源于 ALGOL60 语言,于 20 世纪 60 年代初提出。
  • 1963 年:英国剑桥大学将 ALGOL60 语言发展成为组合程序设计语言(CPL
  • 1970 年:英国剑桥大学的 Martin Richards 对 CPL 进行简化,开发出基本组合程序设计语言(BCPL
  • 1970 年:美国贝尔实验室的 Ken Thompson 以 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)C 语言的特点

①  结构化语言
② 运算能力强大
③ 数据类型丰富
④ 具有预处理能力
⑤ 可移植性好
⑥ 程序执行效率高
⑦ 程序设计自由度


二、C 语言基本语法

(1)字符集

字符是组成语言最基本的元素。

C 语言的字符集由字母、数字、空格、标点和特殊字符组成。

C语言的字符集就是ASCII字符集,主要包括:

  • 阿拉伯数字:0、1、2、…、9  (共 10 个)
  • 大小写英文字母:A~Z、a~z     (共 52 个)
  • 非字母、非数字的可显示字符   (共 33 个)
  • 转义字符:也称为不可显示字符(常用的转义字符有 16 个)

可显示字符: 


(2)关键字 

  • C 语言中具有特殊含义的单词称为 “关键字” ,又称为 “保留字” ,主要用于构成语句。
  • C 语言共有 32个 关键字,所有的关键字均由 小写字母 组成。
  • 由系统定义,不能重作其它定义
关键字含义
auto自动
break中止
case情况
char字符
continue继续
const常量
default默认
do
double
else否则
enum枚举
extern外部
float浮点
for对于
goto转向
if
int如果
long
register寄存器
return返回
short
signed有符号
sizeof计算字节数
static静态
struct结构
switch开关
typedef类型定义
union共用
unsigned无符号
void
volatile可变的
while

(3)标识符

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

注意:

  • 标识符应该见名知意” ,如 total , max
  • 标识符应该不宜混淆” ,如 l 与 1 , o 与 0


(4)词汇分类

C 语言的词汇分为六类,即
常量、标识符、关键字、运算符、注释符和分隔符

① 注释符 

  • C 语言的注释符有两种,一种是以 “/*” 开头,并以 “*/” 结尾的多行注释。
  • 另一种是以 “//” 开头的单行注释。
  • 两者的区别在于,第一种注释可以跨行, 第二种注释不可以跨行。

② 分隔符

  • C语言的分隔符包括 逗号 空格 两种
  • 逗号主要用在类型说明和函数参数表中,分隔各个变量
  • 空格多用于语句各单词之间,作为间隔符

③ 常量 

符号常量 标识符 代表常量
  • 一般用大写字母: PRICE PI
  • 定义格式: #define 符号常量 常量
  • 其值在作用域内不能改变和再赋值。

符号常量示例:
#define PRICE 30
#include <stdio.h>
void main()
{
int num,total;
num=10;
total=num*PRICE;
printf("total=%d\n"
,total);
}


// 运行结果为:total=300


三、C 语言基本语句分类

按照语句功能或构成的不同,可将C语言的语句分为  数据定义语句、赋值语句、 函数调用语句、表达式语句、流程控制语句、复合语句和空语句  等等,C语言的每个语句都以分号 “ ; ” 结束。 


四、C 程序基本组

C 程序是由语句组成的,通常包括一个或多个函数,其中有且只有一个函数称为 主函数,其函数名为 main。

(1)C 程序的组成特点 

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

(2)语言结构特点 

① 函数与主函数

  • 程序由一个或多个函数组成
  • 必须有且只能有一个主函数main(),可以放在程序中任一位置
  • 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。

② 程序语句

  • 程序由语句组成
  • 用 “;” 作为语句终止符

③ 注释

  • /* */ 为注释不能嵌套
  • 不产生编译代码

④ 编译预处理命令


(3)语言格式特点

  • 习惯用小写字母,大小写敏感
  • 不使用行号,无程序行概念
  • 可使用空行和空格
  • 常用锯齿形书写格式

main( )
{
int i , j , sum;
sum=0;
for(i=1; i<10;i++)
{
for(j=1;j<10;j++)
{
sum+=i*j ;
}
}
printf(“%d\n”
,sum);
}


五、C 程序开发环境

(1)C 程序的运行步骤 

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


(2)C 程序的运行

① 启动 Microsoft Visual C++ 6.0 

双击 Microsoft Visual C++ 6.0 的图标,启动 Microsoft Visual C++ 6.0。


② 新建项目 

  1. 在主窗口的主菜单栏中选择 “File” 菜单项,在弹出的子菜单中选择 “New” 命令。
  2. 弹出的 “New” 对话框中,切换到 “Projects” 选项卡,在左侧列表框中选择 “Wine 32 Console Application” 项,然后在右侧的 “Project name” 文本框中输入新建工程的名称,如 HelloWorld,在 “Location” 文本框中输入工程的存储路径。
  3. 在弹出的 “Wine 32 Console Application” 对话框中选中 “An empty project” 单选按钮,单击 “Finish” 按钮。
  4. 在弹出的 “New Project Information” 对话框中单击 “OK” 按钮,项目工作区中显示新建的空工程 “HelloWorld” 。


③ 新建源程序 

  1. 在主窗口的主菜单栏中选择 “File” 菜单项,在弹出的子菜单中选择 “New” 命令。
  2. 在弹出的 “New” 对话框中,切换到 “Files” 选项卡,在左侧的列表框中选择 “C++ Source File” 项,表示新建一个 C/C++ 源程序文件,勾选右侧的 “Add to project” 复选框,并选择刚刚创建的空工程 “HelloWorld” ,在 “File” 文本框中输入 新建源程序文件的名称,如“hello.c” 。
  3. 单击 “OK” 按钮,可以看到程序编辑窗格即可编辑程序。


④ 编译源程序 

  • 在主菜单栏中选择 “Build” 菜单项,在弹出的子菜单中选择 “Compile hello.c” 命令,或者单击工具栏中的 “Compile” 按钮。
  • 在编译过程中,主窗口下方会弹出调试信息窗格,此窗格会输出编译的信息。
  • 如无错误,输出 “0 error(s),0 warning(s)”;
  • 如果有错误,则输出相关的错误信息。

⑤ 链接源程序

  • 编译成功之后进行连接操作。
  • 在主菜单栏中选择 “Build” 菜单项,在弹出的子菜单中选择“Build HelloWorld.exe” 命令,或者单击工具栏中的 “Build” 按钮。

⑥ 运行程序

  • 连接成功之后即可运行程序。
  • 在主菜单栏中选择 “Build” 菜单项,在弹出的子菜单中选择 “Execute HelloWorld.exe” 命令,或者单击工具栏中的 “Execute Program” 按钮。

(3)C 程序的调试 

① 设置断点

  • 调试 C 程序时,首先需要判断程序可能从哪条语句开始出现错误,将光标移动到该语句所在行,然后单击 “Insert/Remove Breakpoint” 按钮或 <F9> 按钮,此时若在语句行左侧出现一个红点,则表示断点设置成功
  • 通过设置断点,检查运行到断点处某些表达式的值,以确定错误的大致位置
  • 通过核对某些表达式的值,以确定错误的原因


② 调试界面 

  • 断点设置成功后,单击 “Go” 按钮,程序开始运行。
  • 运行到断点所在语句时,程序将自动暂停执行,进入调试状态,代码行左侧的黄色箭头指示程序当前的执行位置。
  • 界面下方出现两个窗格,左侧窗格为自动变量框,可以看到各变量的当前值,右侧窗格为观察框,在 “Name” 列输入变量名后, “Value” 列显示该变量的当前值。

③ 单步调试

“Step Over” 和 “Step Into” 都是单步调试程序,二者的区别在于遇到的函数调用时, “Step Into” 进入函数内部逐步执行,而  Step Over” 并不进入函数内部执行。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

顾三殇

觉得不错的话,打赏鼓励一下吧~

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

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

打赏作者

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

抵扣说明:

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

余额充值