C语言课件(非常详细).ppt

上传人:1595****071 文档编号:78706671 上传时间:2023-03-19 格式:PPT 页数:605 大小:3.53MB
返回 下载 相关 举报
C语言课件(非常详细).ppt_第1页
第1页 / 共605页
C语言课件(非常详细).ppt_第2页
第2页 / 共605页
点击查看更多>>
资源描述

《C语言课件(非常详细).ppt》由会员分享,可在线阅读,更多相关《C语言课件(非常详细).ppt(605页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、C C语言程序设计教程语言程序设计教程编写组编写组C C语言程序设计语言程序设计课程介绍课程介绍课程性质:大学计算机公共基础课(必修)课程性质:大学计算机公共基础课(必修)课程内容课程内容C语言语言程序设计的基本方法和技巧程序设计的基本方法和技巧预备知识预备知识计算机基础计算机基础教材教材C语言程序设计教程语言程序设计教程汪同庆汪同庆 张张 华华 杨先娣杨先娣 主编主编 机械工业出版社机械工业出版社C语言程序设计实验教程语言程序设计实验教程汪同庆汪同庆 关焕梅关焕梅 汤汤 洁洁 主编主编 机械工业出版社机械工业出版社C C语言程序设计语言程序设计2授课计划授课计划C C语言程序设计语言程序设计

2、周次周次理论内容理论内容实验内容实验内容1第第1讲讲 C语言概述语言概述与理论课对应与理论课对应2第第2讲讲 C语言快速入门语言快速入门与理论课对应与理论课对应3第第3讲讲 基本数据类型基本数据类型与理论课对应与理论课对应4第第4讲讲 输入输出和库函数输入输出和库函数与理论课对应与理论课对应5第第5讲讲 运算符和表达式运算符和表达式与理论课对应与理论课对应6第第6讲讲 语句和算法语句和算法与理论课对应与理论课对应7第第7讲讲 选择结构选择结构与理论课对应与理论课对应8第第8讲讲 循环结构循环结构与理论课对应与理论课对应9第第9讲讲 函数函数与理论课对应与理论课对应10第第10讲讲 作用范围和存

3、储类别作用范围和存储类别与理论课对应与理论课对应11第第11讲讲 数组数组与理论课对应与理论课对应12第第11讲讲 数组数组与理论课对应与理论课对应13第第12讲讲 指针指针与理论课对应与理论课对应14第第13讲讲 字符串字符串与理论课对应与理论课对应15第第14讲讲 结构体结构体与理论课对应与理论课对应16第第15讲讲 编译预处理编译预处理与理论课对应与理论课对应17第第16讲讲 文件文件与理论课对应与理论课对应18*第第17讲讲 高级数据结构(选讲)高级数据结构(选讲)与理论课对应与理论课对应3考试与考核办法考试与考核办法学分:学分:3 3学分学分学时:学时:7272(讲课(讲课36+36

4、+实验实验3636)总评成绩总评成绩=平时成绩平时成绩#%+#%+期末考试成绩期末考试成绩#%#%平时成绩:(实验,单元测验平时成绩:(实验,单元测验)期末考试成绩期末考试成绩C C语言程序设计语言程序设计4C C语言程序设计教程语言程序设计教程编写组编写组第一讲第一讲 C C语言概述语言概述第一讲第一讲 C语言概述语言概述预备知识预备知识计算机组成和工作原理计算机组成和工作原理计算机语言和程序计算机语言和程序C语言的简史语言的简史为什么学习和使用为什么学习和使用C语言语言C语言程序的开发过程语言程序的开发过程C语言编程环境语言编程环境C语言编程实验环境语言编程实验环境C C语言程序设计语言程

5、序设计6计算机计算机计算机计算机(Computer)能进行计算和逻辑判断的设备能进行计算和逻辑判断的设备在一组指令在一组指令(instructions)程序程序(programs)的控制下的控制下处理数据处理数据硬件硬件(Hardware)组成计算机的各种物理部件组成计算机的各种物理部件键盘、鼠标、显示器、内存、硬盘、光驱等等键盘、鼠标、显示器、内存、硬盘、光驱等等软件软件(Software)计算机中运行的程序和数据计算机中运行的程序和数据C语言概述语言概述7计算机的组成计算机的组成计算机包括六大部件计算机包括六大部件输入单元输入单元(Input unit)从输入设备(键盘、鼠标)获得数据从输

6、入设备(键盘、鼠标)获得数据输出单元输出单元(Output unit)把数据输出到输出设备(显示器、打印机等)把数据输出到输出设备(显示器、打印机等)内存内存(Memory unit)临时存储正在处理的数据和运行的程序临时存储正在处理的数据和运行的程序可以快速地访问可以快速地访问容量不大容量不大C语言概述语言概述8计算机的组成计算机的组成中央处理单元中央处理单元(Central processing unit,CPU)算术逻辑单元算术逻辑单元(Arithmetic and logic unit,ALU)进行算术运算和逻辑判断进行算术运算和逻辑判断控制器控制器(Control unit)管理和协

7、调计算机的其它部件管理和协调计算机的其它部件辅助存储器辅助存储器(Secondary storage unit)保存需长期存储的数据和非活动的程序保存需长期存储的数据和非活动的程序保存时间长保存时间长价格便宜、容量大价格便宜、容量大例如硬盘、光盘、磁带例如硬盘、光盘、磁带C语言概述语言概述9计算机的工作原理计算机的工作原理六大部件紧密协作六大部件紧密协作C语言概述语言概述10计算机的工作原理计算机的工作原理CPU负责执行程序负责执行程序从内存中读取一条指令从内存中读取一条指令执行该指令执行该指令从内存中读取下一条指令并执行从内存中读取下一条指令并执行一个主频为一个主频为1GHz的的CPU可以在

8、一秒钟内进行大约一亿次这可以在一秒钟内进行大约一亿次这样的操作样的操作 CPU有自己的工作区:有自己的工作区:包括若干个寄存器包括若干个寄存器(Registers)CPU只能理解有限的指令只能理解有限的指令(CPU的指令集)的指令集)指令能够完成的任务是具体的指令能够完成的任务是具体的例如,把一个数从内存移动到某一个寄存器例如,把一个数从内存移动到某一个寄存器C语言概述语言概述11计算机程序和语言计算机程序和语言存储在计算机中的一切内容都是二进制的数字形式存储在计算机中的一切内容都是二进制的数字形式数据:数、字符、图片、声音、动画等等数据:数、字符、图片、声音、动画等等指令指令计算机程序计算机

9、程序确切告诉计算机如何完成某项任务的指令序列就是一套确切告诉计算机如何完成某项任务的指令序列就是一套程程序序计算机语言计算机语言用来编写程序用来编写程序C语言概述语言概述#include#include void main()float a,b,c,p,disc,q,x1,x2;scanf(%f%f%f,&a,&b,&c);p=-b/(2*a);disc=b*b-4*a*c;q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=%f,x2=%f,x1,x2);0110001100000110011001011100110000001100000110110110

10、0011000001100110010111001100000011000001101112机器语言机器语言数字形式的指令码就是机器语言数字形式的指令码就是机器语言(Machine language)用机器语言编写的程序能够被计算机直接理解和执行用机器语言编写的程序能够被计算机直接理解和执行但是,编写程序非常费力但是,编写程序非常费力例如,编写程序完成两个数相加的任务需要以下几步例如,编写程序完成两个数相加的任务需要以下几步把地址为把地址为2000的内存单元中的数复制到寄存器的内存单元中的数复制到寄存器1;把地址为把地址为2004的内存单元中的数复制到寄存器的内存单元中的数复制到寄存器2;把寄

11、存器把寄存器2中的数与寄存器中的数与寄存器1中的数相加,结果保留在寄存器中的数相加,结果保留在寄存器1中;中;把寄存器把寄存器1中的数复制到地址为中的数复制到地址为2008的内存单元中。的内存单元中。C语言概述语言概述01100011000001100110010111001100000011000001101113汇编语言汇编语言符号化的指令码就是汇编语言符号化的指令码就是汇编语言(Assembly language)例如,完成两个数相加的汇编语言程序例如,完成两个数相加的汇编语言程序汇编语言程序必须被翻译成机器语言程序才能被执行汇编语言程序必须被翻译成机器语言程序才能被执行汇编程序汇编程序

12、(Assembler)充当充当“翻译翻译”C语言概述语言概述ldreg n1,r1把变量把变量n1的值复制到寄存器的值复制到寄存器1(r1););ldreg n2,r2把变量把变量n2的值复制到寄存器的值复制到寄存器2(r2););add r1,r2把把r2中的数与中的数与r1中的数相加,结果保留在中的数相加,结果保留在r1中;中;store r1,sum把把r1中的数复制到变量中的数复制到变量sum。14高级语言高级语言高级语言高级语言(High-level language)使用数学符号和类似英语使用数学符号和类似英语的单词的单词例如,完成两个数相加的例如,完成两个数相加的C语言程序语言程

13、序从多方面提高了编程效率从多方面提高了编程效率不必考虑不必考虑CPU的指令集的指令集不必考虑不必考虑CPU实现特定任务的精确步骤实现特定任务的精确步骤采用接近人类思考问题的方式去书写程序采用接近人类思考问题的方式去书写程序高级语言程序必须被高级语言程序必须被编译程序编译程序(Compiler)翻译成机器语言翻译成机器语言程序才能被执行程序才能被执行C语言概述语言概述sum=n1+n2;15C语言的简史语言的简史C语言的起源语言的起源美国贝尔实验室的美国贝尔实验室的Dennis Ritchie在在1972年开发的年开发的用于设计用于设计UNIX操作系统操作系统其前身是其前身是B语言语言(Ken

14、Thompson于于1970年为第一个年为第一个UNIX系统开系统开发的语言)发的语言)C语言的标准语言的标准美国国家标准化组织(美国国家标准化组织(ANSI)于)于1983年成立了一个委员会年成立了一个委员会(X3J11),以确定),以确定C语言的标准。语言的标准。该标准(该标准(ANSI C)于)于1989年被正式采用,即年被正式采用,即C89。最新的标准是最新的标准是C99标准。标准。目前,大多数目前,大多数C语言编译器没有完全实现语言编译器没有完全实现C99的所有修改。的所有修改。C语言概述语言概述16为什么学习和使用为什么学习和使用C语言语言C语言的特点语言的特点C语言是一种强大而灵

15、活的语言,可以用来语言是一种强大而灵活的语言,可以用来编写任意复杂的编写任意复杂的程序程序。C语言简洁、紧凑,使用方便、灵活。语言简洁、紧凑,使用方便、灵活。C语言语言程序效率高程序效率高、运行速度快。、运行速度快。C语言是语言是可移植的可移植的。C语言很语言很适合结构化程序设计适合结构化程序设计,因而要求用户以功能模块的,因而要求用户以功能模块的方式来思考问题。方式来思考问题。C语言语言具有自我扩展能力具有自我扩展能力。C语言概述语言概述17为什么学习和使用为什么学习和使用C语言语言C与与C+(C加加,加加,see-plus-plus)贝尔实验室于二十世纪八十年代在贝尔实验室于二十世纪八十年

16、代在C语言的基础上开发的。语言的基础上开发的。C+是是C语言的超集,包含了语言的超集,包含了C语言的所有内容,同时增加语言的所有内容,同时增加了面向对象编程方面的内容。了面向对象编程方面的内容。C与与Java(爪哇)(爪哇)Sun公司于公司于1995年发布的面向对象编程语言。年发布的面向对象编程语言。Java也是基于也是基于C语言的。语言的。C与与C#(see-sharp)微软在微软在2000年年6月与月与.NET平台一同推出。平台一同推出。C#也是从也是从C语言派生的一种面向对象语言。语言派生的一种面向对象语言。C语言概述语言概述18C语言程序的开发过程语言程序的开发过程一般分成五个步骤一般

17、分成五个步骤定义程序目标定义程序目标设计程序设计程序编写代码编写代码编译编译运行、测试和调试程序运行、测试和调试程序C语言概述语言概述19C语言程序的开发过程语言程序的开发过程定义程序目标定义程序目标在开始解决问题之前,程序的开发人员必须彻底了解问题在开始解决问题之前,程序的开发人员必须彻底了解问题的是什么,对即将要创建的程序要做的事情有个清晰的想的是什么,对即将要创建的程序要做的事情有个清晰的想法。法。这需要仔细考虑以下问题这需要仔细考虑以下问题程序需要什么信息程序需要什么信息程序需要执行哪些计算和操作程序需要执行哪些计算和操作程序应该报告什么信息程序应该报告什么信息例如,计算任意一个圆环的

18、面积例如,计算任意一个圆环的面积提出问题,明确目标提出问题,明确目标圆环是什么?如何计算?计算精度?圆环是什么?如何计算?计算精度?C语言概述语言概述20C语言程序的开发过程语言程序的开发过程设计程序设计程序决定程序如何去解决问题。决定程序如何去解决问题。需要考虑需要考虑如何给程序提供必要的数据如何给程序提供必要的数据程序中如何表示数据程序中如何表示数据用什么方法来处理数据用什么方法来处理数据程序如何组织程序如何组织程序怎样报告结果程序怎样报告结果完成这个程序需要多长时间完成这个程序需要多长时间应该用一般的概念考虑设计中的问题,而不是考虑具体的应该用一般的概念考虑设计中的问题,而不是考虑具体的

19、代码。代码。C语言概述语言概述21C语言程序的开发过程语言程序的开发过程编写代码编写代码编写代码来实现前面的设计,即用某一门语言来表示程序编写代码来实现前面的设计,即用某一门语言来表示程序设计。设计。需要开发人员熟练掌握该语言的知识。需要开发人员熟练掌握该语言的知识。可以在草稿纸上勾画自己的想法或书写代码,但最终必须可以在草稿纸上勾画自己的想法或书写代码,但最终必须将代码输入计算机。将代码输入计算机。输入代码所采用的机制则取决于具体的编程环境。输入代码所采用的机制则取决于具体的编程环境。一般来说,需要使用文本编辑器(例如一般来说,需要使用文本编辑器(例如Windows的记事本程序)的记事本程序

20、)来创建一种文件,称为来创建一种文件,称为源文件源文件源文件包含程序设计的源文件包含程序设计的C语言表示形式(称为语言表示形式(称为源程序源程序或或源代码源代码)C语言概述语言概述22C语言程序的开发过程语言程序的开发过程编译编译把把C语言源程序转换成机器语言表示的程序。语言源程序转换成机器语言表示的程序。这种程序可以直接被计算机理解和执行,所以称之为这种程序可以直接被计算机理解和执行,所以称之为可执行程序可执行程序,放在放在可执行文件可执行文件中。中。编译的具体细节取决于使用的编程环境。编译的具体细节取决于使用的编程环境。C语言分两步完成这一工作:语言分两步完成这一工作:编译编译和和链接链接

21、。编译器将源代码转换为编译器将源代码转换为目标代码目标代码,并存在,并存在目标文件目标文件中。中。链接器将目标代码与其他代码结合起来生成可执行文件。链接器将目标代码与其他代码结合起来生成可执行文件。这种把编译和链接分开来做的方法便于程序的模块化。这种把编译和链接分开来做的方法便于程序的模块化。可以分别编译程序的各个模块,然后用链接器把编译过的模块结合起可以分别编译程序的各个模块,然后用链接器把编译过的模块结合起来。来。这样,如果需要改变一个模块,则不需要重新编译所有其他模块。这样,如果需要改变一个模块,则不需要重新编译所有其他模块。C语言概述语言概述23C语言程序的开发过程语言程序的开发过程运

22、行、测试和调试程序运行、测试和调试程序运行包含可执行程序的文件,观察运行的结果。运行包含可执行程序的文件,观察运行的结果。在不同的系统中运行程序的方式可能不同。在不同的系统中运行程序的方式可能不同。例如,例如,Windows的控制台和资源管理器。的控制台和资源管理器。应该对程序进行仔细的检查,看程序是否在做该做的事。应该对程序进行仔细的检查,看程序是否在做该做的事。比较好的做法是为验证程序的正确性设计一个测试计划。比较好的做法是为验证程序的正确性设计一个测试计划。越早做越好,因为它有助于理清程序员的思路。越早做越好,因为它有助于理清程序员的思路。程序中的错误被称为程序中的错误被称为bug,调试

23、(,调试(Debug)就是要发现并)就是要发现并修正错误。修正错误。C语言概述语言概述24C语言的编程环境语言的编程环境开发程序的具体操作取决于使用的编程环境开发程序的具体操作取决于使用的编程环境因为因为C语言是可移植的,所以它在许多环境中都是可用的。语言是可移植的,所以它在许多环境中都是可用的。例如例如UNIX、Linux、Windows和和MS-DOS。C语言编程环境包括一系列程序。语言编程环境包括一系列程序。编辑器编辑器编译器编译器链接器链接器运行和调试环境运行和调试环境C语言概述语言概述Hello.cHello.objHello.exe编辑器编辑器源代码源代码编译器编译器目标代码目标代

24、码链接器链接器可执行代码可执行代码启动代码启动代码库代码库代码执行执行如果有错如果有错如果有错如果有错如果有错如果有错25C语言的编程环境语言的编程环境编辑器编辑器使用一个文本编辑器程序输入源代码,并将代码保存在源使用一个文本编辑器程序输入源代码,并将代码保存在源文件中。文件中。一般,一般,C程序的源文件名称的扩展名是程序的源文件名称的扩展名是.c例如例如welcometoyou.c和和Hello.c。该名称应该遵循特定的操作系统的命名规则。该名称应该遵循特定的操作系统的命名规则。例如,例如,MS-DOS要求基本名包含的字符数不能大于要求基本名包含的字符数不能大于8,所以,所以welcomet

25、oyou.c不是合法的不是合法的DOS文件名。文件名。Windows允许长文件名,所以允许长文件名,所以welcometoyou.c是合法的是合法的Windows文件名。文件名。C语言概述语言概述Hello.c编辑器编辑器源代码源代码26C语言的编程环境语言的编程环境编译器编译器编译器接收源文件,生成目标文件,扩展名为编译器接收源文件,生成目标文件,扩展名为.obj或或.o。编译器还会检查输入的程序是否是有效的编译器还会检查输入的程序是否是有效的C语言程序。语言程序。如果编译器发现错误,就会报告出错,且不能生成可执行程序。如果编译器发现错误,就会报告出错,且不能生成可执行程序。这时就必须修改错

26、误,然后再编译。这时就必须修改错误,然后再编译。显然,为了能迅速找到错误,理解特定编译器的报错信息显然,为了能迅速找到错误,理解特定编译器的报错信息是一项有用的技能。是一项有用的技能。C语言概述语言概述Hello.cHello.obj编辑器编辑器源代码源代码编译器编译器目标代码目标代码如果有错如果有错27C语言的编程环境语言的编程环境链接器链接器目标代码虽然已经是机器代码,但还不能被执行。目标代码虽然已经是机器代码,但还不能被执行。缺少下面两个东西缺少下面两个东西启动代码启动代码:相当于程序和操作系统之间的接口。:相当于程序和操作系统之间的接口。库函数的代码库函数的代码:库文件中包含许多函数的

27、目标代码。:库文件中包含许多函数的目标代码。链接器的作用就是将这三个元素(目标代码、启动代码和链接器的作用就是将这三个元素(目标代码、启动代码和库代码)结合起来,并将它们放在一个文件中,即可执行库代码)结合起来,并将它们放在一个文件中,即可执行文件,扩展名为文件,扩展名为.exe或或.out。C语言概述语言概述Hello.objHello.exe目标代码目标代码链接器链接器可执行代码可执行代码启动代码启动代码库代码库代码如果有错如果有错28Windows的的C语言编程环境语言编程环境Windows的的C语言编程环境语言编程环境Windows并不包含并不包含C编译器,所以需要获得并安装一个编译器

28、,所以需要获得并安装一个C编译器。编译器。许多现代的编译器都是许多现代的编译器都是集成开发环境集成开发环境(或叫(或叫IDE)的一部分。)的一部分。包括一个编辑器、编译器、链接器和包括一个符号调试程序在内的包括一个编辑器、编译器、链接器和包括一个符号调试程序在内的运行支持系统。运行支持系统。许多软件厂商都提供了基于许多软件厂商都提供了基于Windows的集成开发环境的集成开发环境Microsoft公司的公司的Visual C/C+Borland公司的公司的C/C+BuilderMetrowerks公司的公司的Code Warrior目前,大多数目前,大多数IDE把把C和和C+编译器结合在一起。

29、编译器结合在一起。C语言概述语言概述29DOS的的C语言编程环境语言编程环境DOS的的C语言编程环境语言编程环境基于基于DOS的的IDE Borland公司的公司的Turbo CBorland公司的公司的Borland C+许多许多Windows上的上的IDE也提供了在也提供了在DOS命令行环境中编程命令行环境中编程的命令行工具。的命令行工具。C语言概述语言概述30C语言编程实验环境简介语言编程实验环境简介上机实验环境简介上机实验环境简介举例演示举例演示Visual C+6.0的基本操作的基本操作启动启动创建源文件创建源文件构建工程(编译、链接)构建工程(编译、链接)运行程序运行程序C语言概述

30、语言概述31小结小结C是一种通用的程序设计语言,具有许多突出的优点。是一种通用的程序设计语言,具有许多突出的优点。程序设计的初学者应该严格按照程序设计的初学者应该严格按照C语言程序的开发过语言程序的开发过程进行训练,以便尽快掌握程序设计的基本原则。程进行训练,以便尽快掌握程序设计的基本原则。C是一种需要编译的高级语言。是一种需要编译的高级语言。进行进行C语言编程的具体操作依赖于所使用的编程环境。语言编程的具体操作依赖于所使用的编程环境。程序设计是一门实践性很强的课程,在学习过程中必程序设计是一门实践性很强的课程,在学习过程中必须十分重视实验环节。须十分重视实验环节。C语言概述语言概述32C C

31、语言程序设计教程语言程序设计教程编写组编写组20072007年年1 1月月第二讲第二讲 C C语言快速入门语言快速入门第二讲第二讲 C语言快速入门语言快速入门C语言程序的基本结构语言程序的基本结构C语言的字符集和关键字语言的字符集和关键字Visual C+6.0编程环境编程环境C C语言程序设计语言程序设计34C语言程序的基本结构语言程序的基本结构一个简单的一个简单的C语言程序语言程序问题:在屏幕上显示一行文字:问题:在屏幕上显示一行文字:“Hello World!”源程序源程序运行结果运行结果C语言快速入门语言快速入门/*在屏幕上显示在屏幕上显示Hello World!*/#include

32、void main()/*定义主函数定义主函数*/printf(Hello World!n);Hello World!35C语言程序的基本结构语言程序的基本结构一个简单的一个简单的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门/*在屏幕上显示在屏幕上显示Hello World!*/#include void main()/*定义主函数定义主函数*/printf(Hello World!n);注释部分注释部分以增加程序的可读性。以增加程序的可读性。不被执行。不被执行。36C语言程序的基本结构语言程序的基本结构一个简单的一个简单的C语言程序语言程序程序结构分析程序结构分析C语

33、言快速入门语言快速入门/*在屏幕上显示在屏幕上显示Hello World!*/#include void main()/*定义主函数定义主函数*/printf(Hello World!n);预处理命令预处理命令 程序中包含某一文件内容。程序中包含某一文件内容。“stdio.h”为标准输入输出函数头为标准输入输出函数头文件名。文件名。37C语言程序的基本结构语言程序的基本结构一个简单的一个简单的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门/*在屏幕上显示在屏幕上显示Hello World!*/#include void main()/*定义主函数定义主函数*/printf

34、(Hello World!n);函数函数 C程序由函数组成。程序由函数组成。一个一个C程序有且仅有一个主函数程序有且仅有一个主函数(main函数)。函数)。38C语言程序的基本结构语言程序的基本结构一个简单的一个简单的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门/*在屏幕上显示在屏幕上显示Hello World!*/#include void main()/*定义主函数定义主函数*/printf(Hello World!n);函数说明函数说明 说明函数类型、函数名和函数参数。说明函数类型、函数名和函数参数。39C语言程序的基本结构语言程序的基本结构一个简单的一个简单的C

35、语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门/*在屏幕上显示在屏幕上显示Hello World!*/#include void main()/*定义主函数定义主函数*/printf(Hello World!n);函数体函数体 包括变量说明和语句执行部分。包括变量说明和语句执行部分。40C语言程序的基本结构语言程序的基本结构一个简单的一个简单的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门/*在屏幕上显示在屏幕上显示Hello World!*/#include void main()/*定义主函数定义主函数*/printf(Hello World!n)

36、;函数调用语句函数调用语句 格式输出函数格式输出函数printf()。输出输出“Hello world!”。Hello World!41C语言程序的基本结构语言程序的基本结构含有算术运算的含有算术运算的C语言程序语言程序问题:问题:求方程求方程 的根(设的根(设 )。源程序源程序C语言快速入门语言快速入门#include#include void main()float a,b,c,p,disc,q,x1,x2;scanf(%f%f%f,&a,&b,&c);p=-b/(2*a);disc=b*b-4*a*c;q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=

37、%f,x2=%f,x1,x2);42C语言程序的基本结构语言程序的基本结构含有算术运算的含有算术运算的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门#include#include void main()float a,b,c,p,disc,q,x1,x2;scanf(%f%f%f,&a,&b,&c);p=-b/(2*a);disc=b*b-4*a*c;q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=%f,x2=%f,x1,x2);预处理命令预处理命令43C语言程序的基本结构语言程序的基本结构含有算术运算的含有算术运算的C语言程序语言

38、程序程序结构分析程序结构分析C语言快速入门语言快速入门#include#include void main()float a,b,c,p,disc,q,x1,x2;scanf(%f%f%f,&a,&b,&c);p=-b/(2*a);disc=b*b-4*a*c;q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=%f,x2=%f,x1,x2);函数函数 一个主函数(一个主函数(main函数)。函数)。44C语言程序的基本结构语言程序的基本结构含有算术运算的含有算术运算的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门#include#inc

39、lude void main()float a,b,c,p,disc,q,x1,x2;scanf(%f%f%f,&a,&b,&c);p=-b/(2*a);disc=b*b-4*a*c;q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=%f,x2=%f,x1,x2);函数说明部分函数说明部分45C语言程序的基本结构语言程序的基本结构含有算术运算的含有算术运算的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门#include#include void main()float a,b,c,p,disc,q,x1,x2;scanf(%f%f%f,

40、&a,&b,&c);p=-b/(2*a);disc=b*b-4*a*c;q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=%f,x2=%f,x1,x2);函数体函数体 变量说明部分变量说明部分 执行部分执行部分46C语言程序的基本结构语言程序的基本结构含有算术运算的含有算术运算的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门#include#include void main()float a,b,c,p,disc,q,x1,x2;scanf(%f%f%f,&a,&b,&c);p=-b/(2*a);disc=b*b-4*a*c;q=sq

41、rt(disc)/(2*a);x1=p+q;x2=p-q;printf(x1=%f,x2=%f,x1,x2);运行程序运行程序 键盘输入键盘输入a、b、c的值;的值;屏幕显示屏幕显示x1和和x2的值。的值。1 0-4x1=2.000000,x2=-2.00000047C语言程序的基本结构语言程序的基本结构包含多个函数的包含多个函数的C语言程序语言程序问题:问题:求求|a|+|b|的值的值。源程序源程序C语言快速入门语言快速入门#includefloat absv(float x)float y;y=x=0?x:-x;return y;void main()float a,b,c;printf(

42、input a,b:n);scanf(%f%f,&a,&b);c=absv(a)+absv(b);printf(|a|+|b|=%fn,c);48C语言程序的基本结构语言程序的基本结构包含多个函数的包含多个函数的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门#includefloat absv(float x)float y;y=x=0?x:-x;return y;void main()float a,b,c;printf(input a,b:n);scanf(%f%f,&a,&b);c=absv(a)+absv(b);printf(|a|+|b|=%fn,c);程序由两

43、个函数组成:程序由两个函数组成:absv函数函数 main函数函数49C语言程序的基本结构语言程序的基本结构包含多个函数的包含多个函数的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门#includefloat absv(float x)float y;y=x=0?x:-x;return y;void main()float a,b,c;printf(input a,b:n);scanf(%f%f,&a,&b);c=absv(a)+absv(b);printf(|a|+|b|=%fn,c);调用调用absv函数求绝对值。函数求绝对值。50C语言程序的基本结构语言程序的基本结

44、构包含多个函数的包含多个函数的C语言程序语言程序程序结构分析程序结构分析C语言快速入门语言快速入门#includefloat absv(float x)float y;y=x=0?x:-x;return y;void main()float a,b,c;printf(input a,b:n);scanf(%f%f,&a,&b);c=absv(a)+absv(b);printf(|a|+|b|=%fn,c);运行程序运行程序 屏幕显示提示信息;屏幕显示提示信息;键盘输入键盘输入a、b的值;的值;屏幕显示屏幕显示a、b绝对值之和。绝对值之和。input a,b:-5 13|a|+|b|=18.00

45、000051C语言程序的基本结构语言程序的基本结构C语言程序的基本结构小结语言程序的基本结构小结C语言快速入门语言快速入门一一个个C C程程序序由由一一个个或或多多个个函函数数组组成成,但但有有且且仅仅有有一一个个主主函函数数(mainmain函数);函数);mainmain函数是程序执行的入口,可置于程序的任何位置。函数是程序执行的入口,可置于程序的任何位置。程程序序中中可可以以有有预预处处理理命命令令(如如:include include 命命令令)。预预处处理理命命令令通通常常放放在程序的最前面。在程序的最前面。每个语句以分号结尾;预处理命令、函数头和花括号每个语句以分号结尾;预处理命令

46、、函数头和花括号“”之后不之后不能加分号。能加分号。函数包括函数的说明部分和函数体;函数体包括变量说明部分和函数包括函数的说明部分和函数体;函数体包括变量说明部分和执行部分;函数体由一对花括号执行部分;函数体由一对花括号“”括起来。括起来。括在括在/*/*/*/内的文本为注释。内的文本为注释。一行可以写几个语句,一个语句也可以写在多行上。一行可以写几个语句,一个语句也可以写在多行上。程序区分大小写字母。一般变量、语句等用小写字母书写;符号常程序区分大小写字母。一般变量、语句等用小写字母书写;符号常量、宏名等用大写字母书写。量、宏名等用大写字母书写。标识符和保留字之间须加空格以示分隔。标识符和保

47、留字之间须加空格以示分隔。52C语言的字符集语言的字符集C语言源程序中使用的字符来自语言源程序中使用的字符来自C语言的字符集。语言的字符集。字符集字符集(Character set)来自来自ASCII表表52个大小写字母个大小写字母(Letters)A B C D E F G H I J K L M N O P Q R S T U V W X Y Za b c d e f g h i j k l m n o p q r s t u v w x y z10个数字个数字(Digits)0 1 2 3 4 5 6 7 8 9空白符空白符(Blanks)空格符、制表符、回车符、换行符空格符、制表符、回

48、车符、换行符图形符号图形符号(Graphic characters)!#%&*(_)-+=|;:,./?C语言快速入门语言快速入门53C语言的关键字语言的关键字关键字关键字(Keywords)是是C语言中的词汇。语言中的词汇。也称为保留字也称为保留字(Reserved words)类型说明类型说明int、long、short、float、double、char、unsigned、signed、const、void、volatile、enum、struct、union语句定义语句定义if、else、goto、switch、case、do、while、for、continue、break、retu

49、rn、default、typedef存储类别说明存储类别说明auto、register、extern、static长度运算符长度运算符sizeofC语言快速入门语言快速入门54C语言的标识符语言的标识符标识符标识符(Identifiers)是程序中引用对象的名称。是程序中引用对象的名称。用来标识变量、符号常量、数组、函数、结构体、共用体、用来标识变量、符号常量、数组、函数、结构体、共用体、自定义类型等。自定义类型等。命名规则命名规则只能包括大小写字母、数字和下划线;只能包括大小写字母、数字和下划线;首字符必须是字母或下划线;首字符必须是字母或下划线;一般内部标识符的前一般内部标识符的前31个字

50、符有效,而外部标识符的前个字符有效,而外部标识符的前6个字符有个字符有效;效;(视具体编译器的规定)(视具体编译器的规定)不能与关键字相同。不能与关键字相同。C语言快速入门语言快速入门countcount,student_namestudent_name,sumsum,test13test13,_number_number,Sum Sum M.JohnM.John,$123$123,hi!hi!,12xyz12xyz,voidvoid55Visual C+6.0编程环境编程环境举例演示举例演示Visual C+6.0的基本操作的基本操作创建工作区创建工作区创建工程(程序)并添加到工作区创建工程

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com