C语言全套学习_第1页
C语言全套学习_第2页
C语言全套学习_第3页
C语言全套学习_第4页
C语言全套学习_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1主讲:景雪琴2教材、参考书与课时安排 教材丁海军等编著,程序设计基础(C语言),北京航空航天大学出版社 参考书谭浩强,C语言程序设计教程,高等教育出版社吴文虎,计算机语言与程序设计,清华大学出版社3课程要求 课前请做好预习课前请做好预习 保持课堂安静,头脑清醒,思维活跃保持课堂安静,头脑清醒,思维活跃 认真、独立、按时完成并提交作业认真、独立、按时完成并提交作业 重视上机实践,有效利用宝贵的上机时间重视上机实践,有效利用宝贵的上机时间4学习方法 多上机实践多上机实践 程序是调试出来的调试工具的使用程序是调试出来的调试工具的使用 读别人的程序读别人的程序,掌握一些常用算法,积累基本功掌握一些常

2、用算法,积累基本功 不要相信自已的记忆,随时带上语言参考书不要相信自已的记忆,随时带上语言参考书 准备一本简明英语小词典。以便于编程时读懂每准备一本简明英语小词典。以便于编程时读懂每一个错误信息一个错误信息 尽量培养自己具有优秀程序员的素质尽量培养自己具有优秀程序员的素质: 编写的程序要层次分明编写的程序要层次分明 缩进缩进 对齐对齐 有足够的注释有足够的注释 有合适的空行有合适的空行5本节课的重点:1了解程序设计语言的发展史2了解简单的程序理解算法的概念熟练用文字法描述一个数学问题的解题步骤6程序设计语言的发展机器语言汇编语言高级语言面向过程面向对象CPU指令系统,由0、1序列构成的指令码组

3、成如:10000000 加 10010000 减用助记符号描述的指令系统如 ADD A, B面向机器的语言程序设计是数据被加工的过程客观世界可以分类,对象是类的实例对象是数据和方法的封装对象间通过发送和接受消息发生联系程序设计关键是定义类,并由类派生对象由于汇编语言依赖于硬件体系,且助记符量大难记,于是人们又发明了更加易用的所谓高级语言。在这种语言下,其语法和结构更类似普通英文,它有更强的表达能力,可方便地表示数据的运算和程序的控制结构,能更好的描述各种算法,而且容易学习掌握。但高级语言编译生成的程序代码一般比用汇编程序语言设计的程序代码要长,执行的速度也慢。所以汇编语言适合编写一些对速度和代

4、码长度要求高的程序和直接控制硬件的程序。7 第四代语言第四代语言: 第四代语言(FourthGeneration Language, 以下简称4GL)的出现是出于商业需要,由于商业应用中需要处理大量的数据,如何提高使用的速度?4GL这个词最早是在80年代初期出现在软件厂商的广告和产品介绍中的。这一类语言由于具有“面向问题”(用户只需告知系统做什么,而无需说明怎么做) 、“非过程化程度高”等特点,可以成数量级地提高软件生产率,缩短软件开发周期,因此赢得了很多用户。 目前4GL主要面向基于数据库应用的商务领域,不宜于科学计算、高速的实时系统和系统软件开发。例如:SQL ,FOXPRO, Power

5、 Builder 程序设计语言的发展8表表 1.1. 一个语句的三种表示一个语句的三种表示9高级语言的特点由于汇编语言依赖于硬件体系,移植性差,且助记符量大难记,于是人们又发明了更加易用的所谓高级语言。程序设计语言从机器语言到高级语言的抽象,带来程序设计语言从机器语言到高级语言的抽象,带来的主要好处是:的主要好处是:1.高级语言接近数学语言或人的自然语言 ,易学、易掌握2.高级语言为程序员提供了结构化程序设计的环境和工具,使得设计出来的程序可读性好,可维护性强,可靠性高; 3.高级语言远离机器语言,与具体的计算机硬件关系不大,因而所写出来的程序可移植性好,重用率高; 10高级语言种类:从1 9

6、 5 4年,第一个完全脱离机器硬件的高级语言F O RT R A N问世以来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有F O RT R A N、A L G O L、C O B O L、B A S I C、L I S P、S N O B O L、P L / 1、P a s c a l、C、P R O L O G、C + +、V C、V B、D e l p h i、J AVA 等。 高级语言的发展高级语言发展高级语言的发展也经历了从早期语言到结构化程序设计语言,从面向过程语言到面向对象程序语言的过程。相应地,软件的开发也由最初的个体手工作坊式的封闭式生产,发展为产业化

7、、流水线式的工业化生产。 111 9 6 9年,提出了结构化程序设计方法,1 9 7 0年,第一个结构化程序设计语言P a s c a l语言出现,标志着结构化程序设计时期的开始。 高级语言的发展-结构化程序设计方法结构化程序设计方法主要包括:只采用三种基本的程序控制结构来编制程序,从而使程序具有良好的结构;程序设计自顶而下;用结构化程序设计流程图表示算法。 12程序设计的基本目标是用算法对问题的原始数据进行处理,从而获得所期望的效果。要全面提高程序的质量,提高编程效率,使程序具有良好的可读性、可靠性、可维护性以及良好的结构,编制出好的程序来,应当是每位程序设计工作者追求的目标。必须掌握正确的

8、程序设计方法和技术。 程序设计工作者追求的目标13 C语言的发展- 时间时间:1972-1973:1972-1973- 地点地点: :美国贝尔实验室美国贝尔实验室- 目的目的:UNIX:UNIX操作系统操作系统- 设计人设计人: : Ken.ThompsonKen.Thompson和和Dennis.M.RitchieDennis.M.Ritchie C+语言的发展- 产生背景产生背景: :克服克服C C语言的不足语言的不足- 时间时间:1980:1980- 地点地点: :美国贝尔实验室美国贝尔实验室- 目的目的:UNIX:UNIX操作系统操作系统- 设计人设计人: : Bjarne Bjarn

9、e StroustrupStroustrup,“带类的带类的C C”14 C语言程序设计 第一章第一章 C C语言概述语言概述C语言的用途:科学计算、编写系统软件、控制软件、图形、图象处理软件、数据库软件、游戏软件等15语言简洁、紧凑、灵活运算符和数据类型丰富 程序设计结构化、模块化 生成目标代码质量高 可移植性好中级语言 C语言程序设计 第一章第一章 C C语言概述语言概述NextC语言特点1632个关键字:(auto break case char constcontinue default do double elseenum extern float for gotoif int lo

10、ng register returnshort signed sizeof static structswitch typedef unsigned union voidvolatile while C语言程序设计 第一章第一章 C C语言概述语言概述179种控制语句:if( )elseswitchfor( )while( )dowhile( )continuebreakgotoreturn C语言程序设计 第一章第一章 C C语言概述语言概述1834种运算符:算术运算符:+ - * / % + -关系运算符: = !=逻辑运算符:! & |位运算符 : | &赋值运算符:=

11、及其扩展条件运算符:?:逗号运算符:,指针运算符:* &求字节数 :sizeof强制类型转换:(类型)分量运算符:. -下标运算符:其它 :( ) - 还有很多常用数学函数等 C语言程序设计 第一章第一章 C C语言概述语言概述使用运算符构成各种表达式:pow(x,3)+sin(78.96/6)+y%419C数据类型基本类型构造类型指针类型空类型void定义类型struct数值类型字符类型char枚举类型enum整 型浮点型单精度型float双精度型double短整型short长整型long整型int数组结构体struct共用体union C语言程序设计 第一章第一章 C C语言概述语

12、言概述201. C程序概念例1-1 第一个程序 Hello,World!/ example1.1 The first C Program#include main() printf(“Hello,World!n”);注释编译预处理函数语句输出:Hello,World!第一章 C语言程序设计概念21/ 例1.1-2:求三个数的平方根的和#include#includedouble sqrtsum(int a,int b,int c);void main() int a,b,c; float sumn; printf(请输入三个整数:); scanf(%d%d%d,&a,&b,&a

13、mp;c); sumn=sqrtsum(a,b,c); printf(三个数的平方根和=%fn,sumn);double sqrtsum(int x,int y,int z) double t; t=sqrt(x)+sqrt(y)+sqrt(z); return t;例1-2预处理命令函数原型说明22 格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式main( ) . . . . . . .#includemain( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+

14、=i*j ; coutsum;优秀程序员的素质之一: 使用TAB缩进 对齐 有足够的注释 有合适的空行23 结构特点 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,不能嵌套,多行注释 /单行注释 不产生编译代码 编译预处理命令24/ 例1.1-2:求三个数的平方根的和#include#includedouble sqrtsum(int a,int b,int c);void main() int a,b,c; fl

15、oat sumn; printf(请输入三个整数:); scanf(%d%d%d,&a,&b,&c); sumn=sqrtsum(a,b,c); printf(三个数的平方根和=%fn,sumn);double sqrtsum(int x,int y,int z) double t; t=sqrt(x)+sqrt(y)+sqrt(z); return t;组成要素 组成要素 程序主要目的是处理数据 数据的输入 数据处理 数据输出 数据必须先定义后使用 对 数据的处理是通过流程控制语句进行的251.2 算法与程序设计方法学 程序=算法+数据结构 算法是解决某个问题的思想和方法,由若干个步骤组成。 程序是算法的具体实现。 数据结构:数据的组织方式 261.2.1 算法与程序例1-3:(求三个数的最大值)设计一个算法对任意给定的三个整数x,y,z,求出其最大值。定义三个变量x,y,z存放三个整数,变量max存放最大值输入变量x,y,z的值;比较x和y,如果xy,则max=x;否则max=y比较max与z,如果max0 x1= x2= 2-2-2:if d=0 x1=x2=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论