《c语言第1章课件.ppt》由会员分享,可在线阅读,更多相关《c语言第1章课件.ppt(30页珍藏版)》请在人人文库网上搜索。

1、第1章 C语言概述,计算机中心,C 语言程序设计,2020/7/15,2,本章主要内容,计算机语言与程序设计 C语言出现的历史背景 C语言的特点 简单C语言程序介绍 运行C程序的步骤与方法,2020/7/15,3,1.1.1 计算机语言与程序设计,1. 计算机语言 是人与计算机进行交流的工具 计算机语言分为:,2020/7/15,4,机器语言 机器语言是计算机能唯一识别的语言。机器语言是程序是一串串由“0”和“1”组成的指令序列。使用机器语言十分痛苦,特别是在程序有错需要修改时更是如此。而且,由于每台计算机的指令系统往往各不相同,因此,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另。

2、编程序,会造成重复工作。机器语言是第一代计算机语言。,2020/7/15,5,汇编语言 为了减轻使用机器语言编程的痛苦,人们进行了一些简洁的英文字母、符号串来替代一个特定指令的二进制串,比如,用“ADD”代替加法,“MOV”代表数据传递等,这样以来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号得,这就需要一个专门得程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序就被称为汇编程序。,2020/7/15,6,高级语言 从最初与计算机交流得痛苦经历中,人们意识到,应该设计一种这样得语言:这种语言。

3、接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上使用。经过努力,第一个完全脱离机器硬件的高级语言FORTRAN问世了,四十多年来,共有几百种高级语言出现,影响较大、使用较普遍的有FORTRAN、ALGOL、COBOL、BASIC、LISP、PASCAL、C+、VC、VB、JAVA等。,2020/7/15,7,例如:,0 0 1 0 0 0 1 1 1 1 1 0 1 1 0 1 0 1 1 0 0 0 0 1 0 1 1 1 0 1 1 0,机器语言程序,源程序需要 翻译,2020/7/15,8,汇编源程序的翻译:,将汇编源程序翻译为目标程序的过程称为汇编 汇编。

4、过程:,2020/7/15,9,高级语言的翻译:,编译方法,解释方法,2020/7/15,10,2程序设计,用计算机解决一个实际应用问题时的整个处理过程称为程序设计,2020/7/15,11,1.1.2 算法,什么是算法 为解决某一应用问题而采用的解题步骤 算法的描述方式 用自然语言描述算法 用流程图描述算法 用N-S结构图描述算法,例如:输出两个数中的最大数,2020/7/15,12,用自然语言描述算法,第一步:输入x和y的值 第二步:比较x和y的值,如果x大于y,则输出x的值,否则输出y的值。,易于理解,但冗长,不够精确,难于描述复杂算法。,例如当描述“输出10个数中最大数”的算法时,会冗。

5、长、难于理解,2020/7/15,13,图1.5 用流程图描述算法,用流程图描述算法,起止框,输入/输出框,判断框,处理框,流程线,2020/7/15,14,用N-S结构图描述算法,图1.7 用N-S结构图描述的算法,已经证明,任何复杂的问题都可以三种基本算法结构来描述:顺序、选择、循环。因此用计算机语句描述的程序也包含三种基本结构。,2020/7/15,15,1.1.3 结构化程序设计,程序的三种基本结构 顺序结构程序:按照书写顺序依次执行语句 选择结构程序:按照条件判断选择执行语句 循环结构程序:通过条件控制循环执行语句,三种基本结构的共同点: 都是只有一个入口和一个出口; 结构内的每一个。

6、框都有机会被执行; 结构内没有死循环。,2020/7/15,16,结构化程序设计的基本原则:,如果一个程序仅包含这三种基本结构(由这些基本结构顺序组成),则称为结构化程序。 结构化程序设计的基本原则: 采用自顶向下、逐步细化的方法进行设计; 采用模块化原则和方法进行设计。即将大型任务从上向下划分为多个功能模块,每个模块又可以划分为若干子模块,然后分别进行模块程序的编写; 每个模块都是用结构化程序实现,即都只能由三种基本结构组成,并通过计算机语言的结构化语句实现。,2020/7/15,17,1.2 C语言概述,主要内容: C语言的发展 C语言的特点 C程序的基本结构 C程序的执行过程,2020/。

7、7/15,18,C语言出现的历史背景,C语言是国际上广泛流行的计算机高级语言。它适合作为系统描述语言,既可以用来编写系统软件,也可用来编写应用软件。 早期的操作系统软件主要是用汇编语言编写的。由于汇编语言依赖于计算机硬件,程序的可读性和可移植性都比较差,一般的高级语言都难以实现汇编语言的功能,为了提高系统软件的可读性和可移植性,一种兼具有高级语言和低级语言优点的语言C语言应允而生了。,2020/7/15,19,1.2.1 C语言的发展,发展过程 C语言属于高级语言,它的原型是ALGOL 60语言,2020/7/15,20,1963年,剑桥大学将ALGOL60语言发展成为CPL(combined。

8、 Programming Language)语言。 1967年剑桥大学的Matin Richards对CPL语言进行了简化,于是产生了BCPL语言。 1970年美国贝尔实验室的Ken Thompson 将BCPL语言煮干,提炼出它的精华。并且它用B语言写了第一个UNIX操作系统。 1973年,美国贝尔实验室的D.M.RITCHIE在B语言的基础上设计出了C语言(取BCPL的第二个字母)。,2020/7/15,21,1.2.2 C语言的特点,语言简洁,表达能力强,易于理解 只有32个关键字,9种控制语句 数据构造能力强 运算符丰富 程序书写格式自由 可直接访问物理地址,可以直接对硬件进行操作,能。

9、实现汇编语言的大部分功能。因此,既具有高级语言的功能,也有低级语言的功能。 语言生成的代码质量高,程序执行效率高。 与汇编语言相比,可移植性好。基本上不做修改就能用于各种型号的计算机和各种操作系统。,增加学习难度,2020/7/15,22,1.2.3 C程序的基本结构,【例1.1】计算并输出一个数a的平方。 main( ) float a,b; a=5.2; b=a*a; printf(b=%fn,b); ,执行程序的输出结果为: b=27.039997,2020/7/15,23,1.2.3 C程序的基本结构,【例1.2】输入两个数,输出其中的大数。,int max(int x, int y)。

10、 /* max函数 */ int z ; if (xy) z = x; else z = y; return(z); main( ) /* 主函数 */ int a,b,c; scanf(%d, %d, ,2020/7/15,24,C程序结构,C程序 由函数构成,函数是C程序的基本单位。 必须有,且只能有一个main(主函数) 总是从main函数(表示主函数)开始执行,不论main函数的位置如何。 C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上,C程序没有行号。 每个语句和数据声明的最后必须有一个分号 C语言本身没有输入输出语句。其操作是由库函数sacnf和printf等函。

11、数来完成的。实行函数化。 /*/对C程序中的任何部分做注释。一个好的、有使用价值的源程序都应加上必要的注释,以增加程序的可读性。,2020/7/15,25,函数 由函数首部和函数体组成 函数首部指定函数名、函数参数、类型 函数体从 开始,到 结束。函数体包含两部分:声明部分和执行部分。 函数内有语句 C的函数相当于其它语言中的子程序。用函数来实现特定的功能。程序全部工作都是由各个函数分别完成的。编写C程序就是编写一个个的函数。,2020/7/15,26,C程序结构(续),语句 包括说明性语句、可执行语句 以 ;表示语句结束 注释 可以出现在程序的任何位置 用 /* 和 */ 括起来,必须成对出。

12、现 书写格式 C语言没有行的概念,书写格式自由。 习惯小写字母,缩进格式。,2020/7/15,27,1.2.4 C程序的执行过程,1源程序文件的建立和编辑 编写源程序,形成 .C文件 需用编辑工具:tc.exe、记事本 2编译 编译源程序,compile,将高级语言程序换成二进制形式的目标程序(object),形成目标程序 . Obj文件 需用编译工具 :tcc.exe 3连接 Link,将目标程序按指定的操作系统的要求组合形成可执行程序(execute)。连接OBJ文件和调用的库函数,形成运行程序 .exe 文件 需用连接工具 :tlink.exe 4运行 .exe 文件,运行jc1_2,。

13、Turbo C提供 集成化开发环境,2020/7/15,28,1.3 C程序的符号系统,主要内容: 基本字符 标识符,2020/7/15,29,1.3.1 基本字符,大写英文字母:A B C X Y Z 小写英文字母:a b c x y z 数字:0 1 2 9 空白符:空格符、换行符、制表符 特殊字符:+ - * / ( ) _ = ! # % . , ; : “ | & ? $ ,2020/7/15,30,正确区分标识符,正确区分哪些是合法标识符,哪些是不合法标识符。其中合法标识符中哪些是关键字,哪些是预定义标识符,哪些是用户定义标识符。 Abc define 2x double student m+y a# b-4 _1 While int let x%y name do wtm Ctrl swicth include。

c语言第1章ppt,c语言第1章课件.ppt相关推荐

  1. c语言我国有13亿人口,计算机二级循环结构课件.ppt

    计算机二级循环结构课件.ppt 第三章 c语言程序的控制结构 3.4 循环结构 3.4 循环结构 循环算法研究: 迭代和穷举是两类具有代表性的基本循环算法 1.迭代 迭代是一个不断用新值取代变量的旧值 ...

  2. html网页制作教程课件,第2章 HTML入门(网页制作案例教程课件).ppt

    第2章 HTML入门 认识HTML语言的作用,了解HTML代码的编写特点 掌握查看网页代码.修改网页代码的方法 掌握HTML常用标记及其属性的用法 掌握运用HTML编写网页表格.列表.框架和实现超级链 ...

  3. 计算机编程免费ppt,计算机编程与C概述课件.ppt

    <计算机编程与C概述课件.ppt>由会员分享,提供在线免费全文阅读可下载,此文档格式为ppt,更多相关<计算机编程与C概述课件.ppt>文档请在天天文库搜索. 1.第1章 计算 ...

  4. 微型计算机原理与接口技术ppt,单片机原理与接口技术课件ppt

    PPT内容 这是单片机原理与接口技术课件ppt,包括了微型计算机基础,MCS-51单片机结构与时序,习题课,MCS-51与存储器连接示例,汇编语言程序设计,半导体存储器,中断系统,并行I/O接口,MC ...

  5. 计算机中的数制转换ppt,计算机基础知识数制转换课件.ppt

    <计算机基础知识数制转换课件.ppt>由会员分享,提供在线免费全文阅读可下载,此文档格式为ppt,更多相关<计算机基础知识数制转换课件.ppt>文档请在天天文库搜索. 1.第一 ...

  6. andy the android ppt,剑桥国际少儿英语KB1Unit课件.ppt

    <剑桥国际少儿英语KB1Unit课件.ppt>由会员分享,可在线阅读,更多相关<剑桥国际少儿英语KB1Unit课件.ppt(58页珍藏版)>请在装配图网上搜索. 1.Unit ...

  7. 计算机硬件设备ppt教案,计算机的硬件组成课件.ppt

    计算机的硬件组成课件 课堂练习 1.一台计算机的地址总线为32位,它的寻址空间是( ) A.16MB B.64MB C.2GB D.4GB 2.1GB容量等于( ) A.1024KB B.1000KB ...

  8. 梦游天姥吟留别课件PPT模板

    模板介绍 精美PPT模板设计,梦游天姥吟留别课件PPT模板.一套说课PPT幻灯片模板,内含灰色多种配色,精美风格设计,动态播放效果,精美实用. 一份设计精美的PPT模板,可以让你在汇报演讲时脱颖而出. ...

  9. 将相和课件PPT模板

    模板介绍 精美PPT模板设计,将相和课件PPT模板.一套说课PPT幻灯片模板,内含灰色多种配色,精美风格设计,动态播放效果,精美实用. 一份设计精美的PPT模板,可以让你在汇报演讲时脱颖而出. 希望下 ...

  10. 朝花夕拾教学课件PPT模板

    模板介绍 精美PPT模板设计,朝花夕拾教学课件PPT模板.一套说课PPT幻灯片模板,内含灰色多种配色,精美风格设计,动态播放效果,精美实用. 一份设计精美的PPT模板,可以让你在汇报演讲时脱颖而出. ...

最新文章

  1. List去重复——多个复杂字段判断去重
  2. javascript 制作的美化select,利用cookie保存选择
  3. ubuntu18.04安装mysql
  4. php下载七牛整个文件夹,七牛云存储文件批量下载工具 - 行客工作室
  5. VTK修炼之道68:体绘制讨论_梯度不透明度传输函数
  6. 那些离开工业界,回归学术界的AI科学家们!
  7. 你试过这样写C程序吗
  8. 分治算法-01连续子序列的最大和问题
  9. UIButton return(textField textView)
  10. kali使用笔记本自带无线网卡_无线网卡?那是什么?
  11. 浮动的清除 -- 四种方法
  12. Matplotlib从文件绘图时Y轴坐标不正确
  13. 离子量子计算机 寻址,量子计算机的硬件进展
  14. Java - 初探贪心算法(纸币找零,背包问题)
  15. java 获取类的注解_Java 自定义注解通过反射获取类、方法、属性上的注解
  16. 山东大学软件学院计算机组成原理课程设计实验四
  17. Python 文本处理的几个库
  18. 关于扫雷的c语言程序设计,C语言程序设计扫雷游戏实验报告
  19. 公众号和知乎排版神器 - mdnice.com
  20. 2018年搞笑诺贝尔奖揭晓:坐过山车能甩出肾结石

热门文章

  1. 神经网络收敛标准与准确率之间的数学关系
  2. java args包_Java Args.positive方法代码示例
  3. php cros跨域处理,php接口设置cors实现ajax跨域
  4. 【STM32】FreeRTOS 调度器开启和任务相关函数详解
  5. cin,getline用法和不同
  6. HTML标签和CSS个人总结
  7. 老师,我来帮你推问卷
  8. Unity UGUI —— 无限循环List(转载)
  9. mysql中的时间函数---运维常用
  10. mybatis association表关联与rowbounds共同使用时的异常及其解决方案