C语言教学课件之第1章C语言概述
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
每个语句和数据 声明的最后必须 有一个分号。
本程序的输出结果是:
sum is 579
1.4 C程序的上机步骤
开始 编辑 编译 有 有错? 无 可执行 目标程序 连接 执行 库函数和其他 目标程序 目标程序 .obj
源程序 .c
也可以在记 事本里面敲 入程序代码 啊!
查看结果的命令 是Run→User Screen 1.快捷键是Alt+F5
嘉应学院杨久红制作于2010年末
1.3 简单的C程序介绍
例 1.1
1.函数首部,其中main是函数名,表 示“主函数”,有且仅有一个。 2.C 程序总是从main函数开始执行, 从main函数结束。 从哪里来, 回哪里去!
大括弧{ }括起来 的是函数体
main ( ) { printf ("This is a C program.\n"); }
BCPL(1967年)
B语言(1970年)
1.美.贝尔实验室Ken Thompson 2. 很接近硬件,过于简单,功能有 限 3. 用 B 语言写了第一个 UNIX 操作系 统 1. 贝尔实验室的D.M.Ritchie 2. 1983 年,美国国家标准化协会 (ANSI)制定了新的 标准,称为ANSI C。 3. 在 微 型 机 上 使 用 的 有 Microsoft C 、 Turbo C 、 Quick C、BORLAND C等,它们的不同版本又略有 差异。
(5) 语法限制不太严格,程序设计自由度大。
例如:1.对数组下标越界不做检查; 2.整型与字符型, 逻辑型可以通 用 “限制”与“灵活”的矛盾 3.C语言放宽了语法检查。
(6)C语言允许访问物理地址,能进行位(bit)操作, 能实现汇编语言的大部分功能,可以直接对硬件进 行操作。 双重性
“高级语言中的低级语言” “中级语言”
嘉应学院杨久红制作于2010年末
1.1 C语言出现的历史背景
ALGOL60(1960年)
1.面向问题的语言 2. 离 硬 件远 , 不宜 编 写系统软件程序 1.离硬件近些,规模大, 难实现 2. combined programming language
CPL(1963年)
1.英国剑桥Martin Richards 2.basic combined programming language
模仿是一种最好的学习方法
不正确
结果正确?
正确 结束
执行程序的命令 是Run,快捷键 是Ctrl+F9
第一次作业
要独立完成哦! 良好的开始是成功的一半!
1.5 请参照本章例题,编写一个C程序,输出以下信 息: ****************************** Very good! ******************************
了解
补充介绍:程序设计语言的分类
人有人言, 兽有兽语, 计算机也有自己的语言!
1.计算机语言分类:
高级: BASIC,FORTRAN,COBOL,PASCAL,Ada,Modula-2; 中级: C,FORTH,宏汇编; 低级: 汇编语言
嘉应学院杨久红制作于2010年末
机器语言
一个机器语言程序段:
第1章 C语言概述
1.1 1.2 1.3 1.4 C语言出现的历史背景 C语言的特点 简单的C程序介绍 C程序的上机步骤
嘉应学院杨久红制作于2010年末
成功=艰苦劳动+正确方法+少说空话
-爱因斯坦
嘉应学院杨久红制作于2010年末
本章大纲
C语言概述(1学时) 教学内容: 1. C的发展历史 2. C语言的特点 3. 简单的C程序介绍 4. C程序的上机步骤 基本要求: 1. 了解C语言的发展及特点; 2. 掌握C程序的基本结构; 3. 掌握VC的使用方法; 4. 掌握C程序的编译、连接和运行步骤。 重点:C语言的特点与编程环境 难点:C语言的编程环境
(3) 数据结构丰富
1.数据类型:整型、实型、字符 型、数组类型、指针类型、结 构体类型、共用体类型等。 2.实现各种复杂的数据结构(如 链表、树、栈等)的运算。
(4) 具有结构化的控制语句
1.if…else语句、while语句、 do…while语句、switch语句、 for语句 2.用函数作为程序的模块单位, 便于实现程序的模块化。
C语言(1972年)
经典之作
强力推荐
《The C Programming Language》
Brian W.Kernighan和Dennis M.Ritchie (合称K&R) 以1978年发表的UNIX第7版中的C编译程序为基础 成为后来广泛使用的C语言版本的基础,被称为标准C。
பைடு நூலகம்
K & R在1988年按照 ANSI C 标准进行了重新修改
嘉应学院杨久红制作于2010年末
(7) 生成目标代码质量高,程序执行效率高。
1.汇编程序生成目标代码效率执行 效率高 2.C语言比汇编程序生成目标代码 效率低10%-20%
(8)C程序可移植性好。
可移植性是软件质量要素之一 可移植性主要是指把同一软件放置到不同系统平台(如不同的硬件 平台和操作系统)并使之正常运行的难易程度。可移植性有时候被 表述为跨平台性。
嘉应学院杨久红制作于2010年末
高级语言
一个高级语言程序段:
优点: 1.与人类自然语言和数学式子 相当接近,编程较为方便 2. 不依赖于机器,通用性好。 缺点: 1.生成代码的效率低,执行 效率低2.需要“翻译”
LET A=26+36 PRINT A END
1.编译方式:是将整个源程序全部翻译成目标程序,在将目标程序和有 关的函数库相连接,生成一个可行程序。产生的可执行程序可独立运行。 2.解释方式:是将源程序逐句翻译解释,译出一句就立即执行一句。 执行后不保留解释的代码。
1.2 C语言的特点
(1)语言简洁、紧凑,使用方便、灵活。
1.只有32个关键字(采用小写) (P365) 2.9种控制语句(P370)
(2) 运算符丰富。
1.共34种运算符。 2.把括号、赋值、强制类型转换等作为运算符 3.运算类型极其丰富,表达式类型多样化。 4.可以实现其他高级语言难以实现的运算。
这么多语言我怎 么选择啊?
常用的高级语言
1. 2. 3.
4.
5. 6.
BASIC:初学者入门的较好的语言; 适合的就是最好 FORTRAN或PL/Ⅰ:科学计算; 的! COBOL:商业和管理等数据处理领域; C语言:对操作系统和系统实用程序以及需要对硬件进行操 作的场合; C++:面向对象的语言,适合编写大型软件; JAVA:面向对象的语言,适合网络和多媒体应用编程
printf是C语言 中的输出函数
本程序的作用是输出信息:
This is a C program.
嘉应学院杨久红制作于2010年末 /*……*/之间的内 容是注释,不参加 编译。
例 1.2
main ( )/*求两数之和*/ { int a,b,sum; /*声明部分,定义3个变量*/ a=123; b=456; /* 以下3行为C语句 */ sum=a+b; 分号 printf ("sum is %d/n", sum); 丢了就出错! } 记住啊!
嘉应学院杨久红制作于2010年末
汇编语言
一个汇编语言程序段:
优点: 1.编程较为方便 2.生成代码的效率高, 执行效率高, 3.适合编写驱动
LD A,26 ADD A,36 OUT(48),A HALT
鱼与熊掌 不可兼得!
缺点: 1.脱离不开具体机器的指 令系统 2.编程效率不高,因此一 般人很难使用
00111110 00011010 11111110 00100100 11010011 00101111 01110110
我是唯一能和计 算机直接对话的, 他们都需要翻译 的。
优点: 能被计算机直接识别和 执行,执行速度快
缺点: 通篇是0和1,可读性太差, 编程不方便,指令难记, 容易出错且不易修改