欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    第12章C语言程序设计概述课件.ppt

    • 资源ID:2163317       资源大小:2.59MB        全文页数:78页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第12章C语言程序设计概述课件.ppt

    第1章 C语言程序设计概述,第1章 C语言程序设计概述,1.1 程序、计算机语言与程序设计1.2 C语言的产生、发展与特点1.3 C语言程序开发过程1.4 常用C语言集成开发环境简介1.5 C语言程序设计初步1.6 函数与模块化程序设计1.7 算法与结构化程序设计,2,问题1:你了解计算机吗?能说出计算机科学领域中的哪些著名人物?,3,问题2:什么是硬件?什么是软件?它们是什么关系?硬件计算机的躯壳和肉体软件计算机的灵魂和思想,4,问题3:什么是计算机程序,它和软件有什么区别?,5,1.1 程序、计算机语言与程序设计,程序,6,所谓程序,就是为实现特定目标或解决特定问题而用计算机语言编写的指令序列的集合,或者说是为实现预期目的而设计的一系列语句和指令。,程序设计,如果需要利用计算机完成某项任务,就必须首先利用计算机语言编写完成该项任务的程序,这就是通常所说的“编程”,术语称为“程序设计”。,问题4:人和计算机是如何交流的?,7,1.1 程序、计算机语言与程序设计,计算机语言,8,所谓计算机语言,也称为程序设计语言,是指一个能完整、准确和规则地表达人们的意图,并用以指挥或控制计算机工作的“符号系统”。,计算机程序设计语言的发展,计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。其发展过程是功能不断完善、描述问题的方法越来越贴近人类思维方式的过程。,1.2 C语言的产生、发展与特点,1C语言的产生及发展过程,9,1.2 C语言的产生、发展与特点,2C语言的特点,10,(1)语言简洁、紧凑,使用方便、灵活。C语言一共只有32个关键字,9种控制语句,程序书写形式自由,主要使用小写字母,压缩了一切不必要的成分。(2)运算符丰富。C语言的运算符包含的范围很广,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理,从而使C语言的运算类型符极为丰富、表达式类型多样化。,1.2 C语言的产生、发展与特点,2C语言的特点(续),11,(3)数据结构丰富,具有现代化语言的各种数据结构。C语言的数据类型有整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等,能用来实现各种复杂的数据结构。尤其是指针类型数据,使用十分灵活和多样化。(4)具有结构化的控制语句。用函数作为程序的模块单位,便于实现程序的模块化。C语言是理想的结构化程序设计语言,符合现代编程风格的要求。,1.2 C语言的产生、发展与特点,2C语言的特点(续),12,(5)语法限制不太严格,程序设计自由度大。例如,对数组下标越界不做检查,整型、字符型数据可以通用,不专设逻辑型数据而以整型来代替等。较少的限制给程序员带来较大的自由,这就要求程序员在编程时应确实明白自己在做什么,而不要把检查错误的工作仅寄托于编译程序。(6)C允许直接访问物理地址,能进行位操作,可以直接对硬件进行操作。因此C语言既具有高级语言的功能,又具有低级语言的许多功能,可用来编写系统软件。有人把C语言称为“高级语言中的低级语言”或“中级语言”,但一般仍将C语言称为高级语言。,1.2 C语言的产生、发展与特点,2C语言的特点(续),13,(7)生成目标代码质量高、程序执行效率高,仅比汇编语言目标代码效率低10%20%。(8)用C语言编写的程序可移植性好。程序基本不做修改就能用于各种计算机和各种操作系统。,1.3 C语言程序开发过程,通常将高级语言编写的程序叫做“源程序”,源程序必须先用一种称为“编译程序”的软件,把它翻译成二进制形式的“目标程序”,然后再将该目标程序与系统的函数库以及其他目标程序连接起来,形成可执行程序。C语言既然是高级语言的一种,其程序开发过程也应该是从“源程序”到“目标程序”,再到“可执行程序”。具体步骤如图1-2所示。,14,15,图1-2 语言程序开发过程,1.4 常用C语言集成开发环境简介,1.4.1 Turbo C 2.0集成开发环境,16,Turbo C 2.0是Borland公司开发的一个C语言集成开发环境。可以在Turbo C中完成C语言程序的编辑、编译、连接、运行、调试。该系统是DOS操作系统支持下的软件,在windows环境下,可以在命令提示符窗口中运行。,1.4.2 Visual C+6.0集成开发环境,Visual C+6.0,简称VC或者VC 6.0,是微软推出的一款C+编译器,将“高级语言”翻译为“机器语言(低级语言)”。Visual C+是一个功能强大的可视化软件开发工具。由于C+是由C语言发展起来的,也支持C语言程序的开发。,1.4 常用C语言集成开发环境简介,采用Visual C+6.0进行C 语言程序开发具体步骤:,17,1启动VC 6.0,进入如图所示的主界面。,1.4 常用C语言集成开发环境简介,采用Visual C+6.0进行C 语言程序开发具体步骤(续):,18,2选择“File”菜单中的“New”命令,新建一个Win 32控制台应用工程,并给新建工程命名,单击“OK”按钮。如图所示。,1.4 常用C语言集成开发环境简介,采用Visual C+6.0进行C 语言程序开发具体步骤(续):,19,3上一步骤结束后会弹出如图所示的对话框窗口,选择创建一个空工程,单击“Finish”按钮。,1.4 常用C语言集成开发环境简介,采用Visual C+6.0进行C 语言程序开发具体步骤(续):,20,4选择“File”菜单中的“New”命令,打开如图所示的新建窗口,新建一个C+Source File,在文件名中输入C语言源文件名,确定名字后即可以开始编辑C程序。注意:一定要加上扩展名“.c”,否则会生成扩展名为“.cpp”的C+源文件。,1.4 常用C语言集成开发环境简介,采用Visual C+6.0进行C 语言程序开发具体步骤(续):,21,5源代码编辑完成后,依次单击工具栏中的“Compile”、“Build”、“Execute Program”按钮编译、连接、运行程序,或直接单击“Execute Program”按钮,编译并调试运行程序。如果出现错误,会在下面的窗口中提示错误内容。如果存在错误,可根据提示的错误信息检查并修改源程序,重复上述步骤,直到程序正确运行。,1.4 常用C语言集成开发环境简介,采用Visual C+6.0进行C 语言程序开发具体步骤(续):,22,1.5 C语言程序设计初步,1.5.1 第一个C语言程序1.5.2 第一个C语言程序剖析1.5.3 C语言程序基本结构,23,1.5 C语言程序设计初步,1.5.1 第一个C语言程序,24,【例1.1】通过屏幕显示“This is my first C program.”。1创建源程序文件(1)在硬盘上创建工作目录。(2)创建工程。(3)创建源程序文件。注意:文件名是1_1.C。,1.5 C语言程序设计初步,1.5.1 第一个C语言程序(续),25,2编辑源程序在程序编辑工作窗口中输入下面的程序源代码,并保存至文件1_1.C中。,26,源程序:/*例1.1:显示“This is my first C program.”。文件名:1_1.C*/#include int main()printf(This is my first C program.n);return 0;,1.5 C语言程序设计初步,1.5.1 第一个C语言程序(续),27,注意:(1)C语言是区分大小写的,也称为大小写敏感,不能随意更换大小写。(2)C语言源程序采用ASCII码英文字符,不能采用全角字符(汉字字符)。(3)尖括号、圆括号()、大括号和方括号在C语言中的应用场合不同,不能随意替换。(4)斜杠(/)与反斜杠()在C语言中的应用场合不同,不能随意替换。,1.5 C语言程序设计初步,1.5.1 第一个C语言程序(续),28,3编译 源代码编辑完成后,单击工具栏中的“Compile”按钮进行编译。如果没有错误,则会生成目标文件1_1.OBJ。4连接 编译完成并生成OBJ文件后,单击工具栏中的“Build”工具按钮进行连接。如果没有错误,则会生成可执行文件1_1.EXE。,1.5 C语言程序设计初步,1.5.1 第一个C语言程序(续),29,5执行(1)在集成开发环境下运行。连接完成并生成EXE文件后,单击工具栏中的“Run”工具按钮运行程序,运行结果为显示“This is my first C program.”。(2)在DOS环境下运行。生成的EXE文件可以不依赖于集成开发环境在操作系统中直接运行。,1.5 C语言程序设计初步,1.5.1 第一个C语言程序(续),30,6处理错误编译器能够指出错误并定位错误出现的位置。双击错误提示,可以定位到源程序中的错误位置。修正错误后重新编译。有时一个很小的错误会显示许多错误提示,一般情况下从第一个错误开始排查,程序调试也是程序设计者必备的一种能力。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析,31,1注释 源程序中:/*例1.1:显示“This is my first C program.”。文件名:1_1.C*/一行为注释。在C语言中,位于/*和*/之间的文本为注释。注释不执行任何操作,也就是说不会影响程序的运行,它只是用来增加程序的可读性,帮助程序员理解程序。注释可以是任意文本(包括汉字文本)。注释不一定单独占一行,无论/*和*/放在源程序的什么位置,其中间的内容都是注释。程序员应养成添加注释的良好习惯。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析(续),32,2预处理命令 源程序中:#include 一行为预处理命令。如果在程序中需要使用C语言标准库中的输入输出函数,例如本例中调用的printf()函数,应该在源程序的开头加上这一行。注意:预处理命令不加分号。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析(续),33,3定义main()函数 源程序中:int main()printf(This is my first C program.n);return 0;5行定义了main()函数。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析(续),34,3定义main()函数C语言程序由函数构成,函数是C程序的基本单位。一个C语言程序必须包含一个且仅有一个main()函数,通常称为主函数。除了main()函数外,还可以包含其他函数,但不是必须的。main()函数是每个程序执行的起始点。一个C语言程序总是从main()函数开始执行,而不论main()函数在源程序中的位置。一个C语言函数由函数首部和函数体两部分组成。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析(续),35,4函数首部 源程序中:int main()一行为main()函数的函数首部。其中main为函数名;()表示这是一个函数;int表示函数返回值类型为整数值,执行完main()函数后,通过return语句将整数0返回给操作系统,表示程序正常终止。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析(续),36,5函数体源程序中:printf(This is my first C program.n);return 0;4行为main()函数的函数体。函数体是在函数首部下用一对 括起来的部分,它包含了实现函数功能的全部语句。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析(续),37,6输出信息调用printf()函数源程序中:printf(This is my first C program.n);一行为函数调用语句,通过调用标准库函数printf()在屏幕上显示字符串This is my first C program.。,1.5 C语言程序设计初步,1.5.2 第一个C 语言程序剖析(续),38,函数之间可以相互调用(main()函数例外,main()函数不可以被其它函数调用)。被调用的函数可以是系统提供的库函数(ANSI C提供100多个库函数),也可以是用户根据需要自己编写设计的函数。C语言本身没有输入输出语句,程序的输入输出工作都是由标准库函数实现。注意:反斜杠引导的字符称为转义字符,其意思是将反斜杠()后面的字符变成另外的意思。在本例代码中的字符n为换行符,在这里输出的是回车换行。,39,1.5.3 C语言程序基本结构,1.5 C语言程序设计初步,1.5.3 C语言程序基本结构(续),40,1C程序由函数构成。C语言是函数式的语言,函数是C程序的基本单位。一个C源程序至少包含一个main()函数,也可以包含一个main()函数和若干个其他函数,但只能有一个main()函数。被调用的函数可以是系统提供的库函数,也可以是用户根据需要自己编写设计的函数。C语言程序的全部工作都是由各个函数完成的。编写C程序就是编写一个个函数。,1.5 C语言程序设计初步,1.5.3 C语言程序基本结构(续),41,2main()函数(主函数)是每个程序执行的起始点。一个C程序总是从main()函数开始执行,而不论main()函数在程序中的位置。可以将main()函数放在整个程序的最前面,也可以放在整个程序的最后,或者放在其他函数之间。,1.5 C语言程序设计初步,1.5.3 C语言程序基本结构(续),42,3一个函数由函数首部和函数体两部分组成。(1)函数首部:包括函数类型、函数名、函数参数类型、函数参数名。例如,在sum()函数的首部为:注意:函数可以没有参数,但是后面的一对()不能省略。,1.5 C语言程序设计初步,1.5.3 C语言程序基本结构(续),43,(2)函数体:函数首部下用一对 括起来的部分。如果函数体内有多个,最外层是函数体的范围。函数体一般包括声明部分、执行部分两部分。声明部分:在这部分定义本函数所使用的变量。执行部分:由若干条语句组成命令序列(可以在其中调用其他函数)。,43,1.5 C语言程序设计初步,1.5.3 C语言程序基本结构(续),44,4C程序书写格式自由。一行可以写几个语句,一个语句也可以写在多行上。5C程序没有行号,每条语句的最后必须有一个分号“;”表示语句的结束。6C语言本身没有输入输出语句。输入和输出的操作是由库函数scanf()和printf()等函数来完成的。7可以用/*/对C程序中的任何部分做注释。一个好的、有使用价值的源程序都应当加上必要的注释,以增强程序的可读性。,1.6 函数与模块化程序设计,所谓模块化程序设计,是以功能模块为单位进行程序设计,实现求解算法的方法。模块化的目的是为了降低程序复杂度,使程序设计、调试和维护等操作简单化。在C 语言程序设计中,这些功能模块称为函数。函数与外界有一个特殊的接口,可以将信息传递进来,也可以将函数产生的结果传递出去。,45,45,例:求两个整数之和。解题思路:设置3个变量a和b用来存放两个整数sum用来存放和数用赋值运算符“=”把结果传送给sum,46,#include int main()int a,b,sum;a=123;b=456;sum=a+b;printf(”sum is%dn”,sum);return 0;,定义整型变量a,b,sum,对变量a,b赋值,将a与b的和赋给sum,47,#include int main()int a,b,sum;a=123;b=456;sum=a+b;printf(”sum is%dn”,sum);return 0;,真正输出时,用sum的值替代,代替要输出的值,48,1.6 函数与模块化程序设计,【例1.2】采用函数实现计算两数之和。,49,50,源程序:#include int sum(int x,int y)/函数实现两数相加return x+y;void output(int a)/函数实现和的输出printf(sum=%dn,a);,50,51,源程序(续):int main()int x,y,z;x=32;y=64;z=sum(x,y);output(z);return 0;运行结果:,sum=96,51,1.7 算法与结构化程序设计,1.7.1 算法举例1.7.2 算法的特性1.7.3 算法的表示,52,1.7 算法与结构化程序设计,一个程序应包括以下两方面内容:(1)对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构(Data Structure)。(2)对操作的描述。即操作步骤,也就是算法(Algorithm)。著名计算机科学家沃思(Nikiklaus Wirth)提出了一个公式:程序=数据结构+算法所谓算法就是为解决一个问题而采取的方法和步骤。,53,53,1.7.1 算法举例,【例1.3】求5!(12345)。求5的阶乘的最原始的算法如下:步骤1:先求12,得到结果2。步骤2:将步骤1得到的乘积2再乘以3,得到结果6。步骤3:将6再乘以4,得24。步骤4:将24再乘以5,得120。这就是最后的结果。问题:如果要求121000?,54,54,1.7.1 算法举例,改进的算法:今设t为被乘数,i为乘数。用循环算法来求结果。可以将算法改写如下:步骤1:使t=1。步骤2:使i=2。步骤3:使ti,乘积仍放在变量t中,可表示为ti=t。步骤4:使i的值加1,即i+1=i。步骤5:如果i不大于5,返回到步骤3;否则,算法结束。算法结束后,t中的就是最后的结果。,55,55,1.7.1 算法举例,问题:题目改为求1357911?算法:步骤1:使t=1。步骤2:使i=3。步骤3:使ti,乘积仍放在变量t中,可表示为ti=t。步骤4:使i的值加2,即i+2=i。步骤5:如果i不大于11,返回到步骤3;否则,算法结束。,56,56,1.7.1 算法举例,可以看出,改进的算法具有通用性、灵活性。由于计算机是高速进行运算的自动机器,实现循环是轻而易举的。因此,循环算法更容易在计算机上实现。,57,57,1.7.2 算法的特性,一个算法应该具有以下特性:1有穷性2确定性3有零个或多个输入4有一个或多个输出(即算法必须得到结果)5有效性会使用和设计常用的算法,根据算法编写程序。,58,58,1.7.3 算法的表示,1.7.3 算法的表示用自然语言表示算法流程图表示算法用N-S流程图表示算法用计算机语言表示算法,59,59,1.7.3 算法的表示,1用自然语言表示算法自然语言就是人们日常使用的语言,可以是汉语、英语或其他语言。用自然语言表示通俗易懂,但文字冗长,容易出现“歧义性”。用自然语言描述包含分支和循环的算法,不是很方便。,60,60,1.7.3 算法的表示,2流程图表示算法 流程图是一种使用很广的方法,它使用一些约定的几何图形来描述算法,直观形象,易于理解。美国标准化协会ANSI规定了一些常用的流程图符号,已为世界各国程序工作者普遍采用。,61,61,62,图1-12 流程图符号,1.7.3 算法的表示,(1)起止框:表示算法的开始和结束。(2)输入输出框:表示算法请求输入输出需要的数据或算法将某些结果输出。(3)菱形框(判断框):主要是对一个给定条件进行判断,根据给定的条件是否成立来决定如何执行其后的操作。它有一个入口,两个出口。(4)处理框:表示算法的某个处理步骤,一般内部常常填写赋值操作。(5)连接点:用于将画在不同地方的流程线连接起来。同一个编号的点是相互连接在一起的,实际上同一编号的点是同一个点,只是画不下才分开画。,63,63,64,65,1.7.3 算法的表示,3结构化程序设计结构化程序设计由顺序结构、选择结构和循环结构三种基本结构构成。C语言是结构化程序设计语言。1966年,Bohra和Jacopini提出了用这三种基本结构作为表示一个良好算法的基本单元。由三种基本结构顺序组成的算法结构,可以解决任何复杂的问题。,66,66,67,图1-15 顺序结构 图1-16 选择结构,注:A框或B框可以有一个是空的。,68,(a)While型(b)Until型图1-17 循环结构,1.7.3 算法的表示,以上三种基本结构有一些共同特点:(1)只有一个入口。(2)只有一个出口。(3)结构内的每一部分都有机会被执行到。(4)结构内不存在“死循环”(无限循环,指程序的控制流程一直在重复运行某一段代码,无法退出的情形)。,69,69,1.7.3 算法的表示,4用N-S流程图表示算法 基本结构的顺序组合可以表示任何复杂的算法结构,那么,基本结构之间的流程线就属于多余的了。美国学者I.Nasii和B.shneiderman 于1973年提出了一种新的流程图形式。在这种流程图中,完全去掉了带箭头的流程线。全部算法写在一个矩形框内,在该框内还可以包括其他的从属于它的框,或者说,由一些基本的框组成一个大的框。这种流程图称为N-S结构化流程图。,70,70,71,图1-18 顺序结构 图1-19 选择结构,(a)While型(b)Until型图1-20 循环结构,72,图1-13 5!的算法用流程图表示 图1-21 5!的算法用N-S图表示,1.7.3 算法的表示,5用计算机语言表示算法 用计算机语言表示算法必须严格遵循所用语言的语法规则。,73,73,1.7.3 算法的表示,【例1.5】求12345,用C语言表示。#include int main()int i,t;t=1;i=2;while(i=5)t=t*i;i=i+1;printf(%dn,t);return 0;,74,74,计算机程序设计最主要的工作就是算法设计,算法设计不当,就不能编写出良好的程序。养成处理问题先设计算法的好习惯,往往能够事半功倍。,小结,75,读程序练习1,#includeint main()int m,n;printf(请输入1-10中一个数字:);scanf(%d,76,读程序练习2,#includeint main()int sum,i;sum=0;for(i=1;i101;i+)sum=sum+i;printf(sum=%dn,sum);,77,读程序练习3,#includevoidmain()intx,y,t;x=7;y=9;if(xy)t=x;x=y;y=t;printf(%d,%dn,x,y);,78,

    注意事项

    本文(第12章C语言程序设计概述课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开