收藏 分享(赏)

《C语言程序设计》PPT课件.ppt

上传人:精品资料 文档编号:10467051 上传时间:2019-11-19 格式:PPT 页数:48 大小:668.52KB
下载 相关 举报
《C语言程序设计》PPT课件.ppt_第1页
第1页 / 共48页
《C语言程序设计》PPT课件.ppt_第2页
第2页 / 共48页
《C语言程序设计》PPT课件.ppt_第3页
第3页 / 共48页
《C语言程序设计》PPT课件.ppt_第4页
第4页 / 共48页
《C语言程序设计》PPT课件.ppt_第5页
第5页 / 共48页
点击查看更多>>
资源描述

1、1,C语言程序设计,陈建海: 浙江大学计算机学院 2012年2月,2,C语言程序设计,课程简介 大学计算机基础 C是程序设计语言教学目的 掌握程序设计语言的基本知识 常用算法 初步的程序设计能力,3,课程要求,四统一课程 统一大纲,统一要求,统一教材和统一考试 考核要求:平时25%+实验25%+理论50% 平时=课程作业(%7.5)+ 练习系统(%7.5) + 期中测验(5%) 实验=上机实验考试(%25) 理论=期终闭卷考试(%55),4,作业练习,作业要求(本学期完成量120个程序) 编程实践每周超过5题 课程作业电子版提交(23题) 上机练习约4、5道题+课外补充; 期中测验:基础部分,

2、夏季学期第2周(实验课)。 三个网站 作业网站:http:/10.71.45.100 编程练习:http:/10.77.30.30 第二周开始 CC98答疑:http:/www.cc98.org 上机地点:计算中心1楼11机房 上100网站下载作业说明,照文档做,5,自主学习,掌握知识,领会思想,怎么学、怎么学好 用C语言进行程序设计,总之:Practice again again and again 通过不断的编程实践,逐步领会和掌握程序设计的基本思想和方法。最终具备用C的编程能力。,教材和参考书 C语言程序设计,何钦铭、颜晖主编,浙江科技出版社,2008The C Programming

3、Languagem, Second Edition, Brian W.Kernighan & Dennis M.Ritchie, 清华大学出版社,Prentice-Hall International, Inc. ,1997C程序设计(第二版),潭浩强等,清华大学出版社,1999,7,课程内容概览,引言,用C编程,流程控制,基本输入输出scanf,printf 简单条件判断语句:if语句,数据表达,构造类型,循环结构,指针,分支结构,if语句,switch语句,For语句 While语句 Break continue,数据类型和 表达式,数组,结构,文件,链表,函数与程序结构,变量作用域,宏定

4、义 编译预处理,自定义类型,字符串,8,第1章 引 言,一个C语言程序 程序与程序设计语言 C语言的发展历史与特点 实现问题求解的过程,9,本章要点,什么是程序?程序设计语言包含哪些功能? 程序设计语言在语法上包含哪些内容? 结构化程序设计有哪些基本的控制结构? C语言有哪些特点? C语言程序的基本框架如何? 形成一个可运行的C语言程序需要经过哪些步骤? 如何用流程图描述简单的算法?,例1-1求阶乘问题。输入一个正整数n,输出n!。 #include /* 编译预处理命令 */ void main() /* 主函数 */ int n; /* 变量定义 */int factorial(int n

5、); /* 函数声明 */scanf(“%d“, ,1.1 一个C语言程序,输入 4 输出 24,C程序由函数组成 有且只有一个主函数main(),11,趣味程序,俄罗斯方块 五子棋 电子琴,12,1.2 程序与程序设计语言,什么是程序? 人们为解决某种问题用计算机可以识别的代码编排的一系列加工步骤。 程序的执行过程实际上是对程序所表达的数据进行处理的过程。 什么是程序设计语言? 提供了一种表达数据与处理数据的功能 要求程序员按照语言的规范编程,13,1.2 程序与程序设计语言,程序与指令程序设计语言的功能程序设计语言的语法程序的编译与编程环境,14,计算机,计算机是数据处理机,具有程序能力的

6、数据处理机,是Computer.,能做compute.,计算机是什么?能做什么?,15,计算机的五个组成部分,冯诺依曼结构计算机,16,For Example:2+3=5,命令:输入2,2,2,命令:输入3,3,3,Write,Write,Read,Read,2,3,5,Out,Computer计算过程,把输入输出计算的每一个步操作写成一个语句, 就得到一个程序,17,程序与指令,指令:计算机的一个最基本的功能 如实现一次加法运算或实现一次大小的判别计算机的指令系统:计算机所能实现的指令的集合 程序:一系列计算机指令的有序组合,18,高级语言程序与机器语言程序,机器语言程序(二进制形式),由机

7、器能直接执行的指令组成; 高级语言程序是为用户自己能够理解用自己语言写出的程序,必须要先翻译成机器语言程序编译;C语言能做什么?C是一种语言工具,编写高级语言程序,并可进行编译、连接,生成可被机器直接执行的程序软件;,19,程序与指令,例1-2 编写程序,分别求和与乘积 虚拟的计算机指令系统(7条指令 ) 指令1:Input X 将当前输入数据存储到内存的X单元 指令2:Output X 将内存X单元的数据输出。 指令3:Add X Y Z 将内存X单元的数据与Y单元的数据相加并将结果存储到Z单元。 指令4:Sub X Y Z 将内存X单元的数据与Y单元的数据相减并将结果存储到Z单元。 指令5

8、:BranchEq X Y P 比较X与Y,若相等则程序跳转到P处执行,否则继续执行下一条指令。 指令6:Jump P 程序跳转到P处执行。 指令7:Set X Y 将内存Y单元的值设为X。,20,程序与指令,输入3个数A, B和C,求A+B+C的结果Input A; 输入第1个数据到存储单元A中 Input B; 输入第2个数据到存储单元B中 Input C; 输入第3个数据到存储单元C中 Add A B D; 将A、B相加并将结果存在D中 Add C D D; 将C、D相加并将结果存在D中 Output D; 输出D的内容,21,程序与指令,输入2个数A和B,求A*B的结果1Input A

9、; 输入第1个数据到存储单元A中 2Input B; 输入第2个数据到存储单元B中 3Set 0 X; 将X设为0,此处X用以统计A累加的次数 4Set 0 Z; 将Z设为0,此处Z用以存放A*B的结果 5BranchEq X B 9; 判别X与B是否相等;若相等说明A已累加了B次,程序跳转到第9条指令,输出结果 6Add Z A Z; Z = Z + A 7Add 1 X X; X = X + 1 8Jump 5; 程序跳转到第5条指令,继续循环执行第6条、7条指令 9Output Z; 输出Z的值,该值等于A*B,22,程序设计语言的功能,程序设计语言的功能 数据表达:表达所要处理的数据流

10、程控制:表达数据处理的流程,23,数据表达,数据表达:一般将数据抽象为若干类型 数据类型: 对某些具有共同特点的数据集合的总称 代表的数据(数据类型的定义域) 在这些数据上做些什么(即操作或称运算) 例如:整数类型 包含的数据:,-2,-1,0,1,2, 作用在整数上的运算:+ 、 - 、 * 、 /等,24,数据表达,C语言提供的数据类型 基本数据类型:程序设计语言事先定义好,供程序员直接使用,如整型、实型(浮点型)、字符型等。 构造类型:由程序员构造,如数组、结构、文件、指针等。 各种数据类型的常量与变量形式 常量(常数)与变量,25,流程控制,结构化程序设计方法 将复杂程序划分为若干个相

11、互独立的模块 模块:一条语句(Statement)、一段程序或一个函数(子程序)等 单入口、单出口,任何程序都可以将模块通过3种基本的控制结构进行组合来实现,顺序结构,循环结构,分支结构,27,流程控制,语句级控制:3种基本的控制结构 顺序控制结构:自然顺序执行 分支控制结构(选择结构):根据不同的条件来选择所要执行的模块 循环控制结构:重复执行某个模块单位级控制:函数的定义与调用 处理复杂问题时, 将程序分为若干个相对独立的子程序(函数),28,程序设计语言的语法,用程序设计语言所写的程序必须符合相应语言的语法源程序(源代码)是一个字符序列 这些字符序列按顺序组成了一系列“单词” “单词”的

12、组合就形成了语言有意义的语法单位 一些简单语法单位的组合又形成更复杂的语法单位 最后一系列语法单位组合成程序。,29,C语言的常用“单词”名词术语,(1)标识符: C语言的标识符规定由字母、数字以及下划线组成,且第一个字符必须是字母或下划线。 (2)保留字(关键字): 它们是C语言规定的、赋予它们以特定含义、有专门用途的标识符。 (3)自定义标识符: 包括在程序中定义的变量名、数据类型名、函数名以及符号常量名。有意义的英文单词 (4)常量: 常量是有数据类型的,如,123、12.34 (5)运算符。代表对各种数据类型实际数据对象的运算。如,+(加)、-(减)、*(乘)、/(除)、%(求余)、(

13、大于),30,C语言的主要语法单位,(1)表达式: 运算符与运算对象组合就形成了表达试。如,2 + 3 * 4 (2)变量定义: 变量也有数据类型,所以在定义变量时要说明相应变量的类型。如: int i; (3)语句: 语句是程序最基本的执行单位,程序的功能就是通过对一系列语句的执行来实现的。 (4)函数定义与调用,其中,(3)语句: 表达式语句:表达式加分号“;” 分支语句:实现分支控制过程 if (a b) x = a; else x = b; 循环语句:实现循环控制的过程 sum = 0; /* 初始化sum和i */ i = 1; while (i = 100) /* while循环语

14、句 */sum = sum + i;i = i + 1; 复合语句:用一对“ ”,将若干语句顺序组合在一起就形成了一个程序段。,其中,(4)函数定义与调用函数是完成特定任务的独立模块,函数的使用最主要涉及到函数的定义与调用。输入输出: C语言没有输入输出语句,用库函数printf()、scanf()等实现。,33,程序的编译与编程环境,程序的编译编译器(源)程序 计算机直接能理解的指令序列 编译器:对源程序进行词法分析、语法与语义分析,生成可执行的代码。 直接指出程序中的语法错误 编程环境 包括编辑程序(Edit)、编译(Compile)、调试(Debug)等过程。 掌握程序设计语言:根据语言

15、的语法,用语言表达数据、实现程序的控制,并会使用编程环境。,34,C 语言上机过程,编译,连接,运行,35,1.3 C语言的发展历史与特点,历史 1972年:贝尔实验室的Dennis Ritchie在B语言的基础上设计并实现了C语言。 1978年:B.W.Kernighan和D.Ritchie(简称K & R)合著的The C Programming Language是各种C语言版本的基础,称之为旧标准C语言。 1983年:美国国家标准化协会(ANSI)制定了新的C语言标准,称ANSI C。,36,C语言的特点,1C语言是一种结构化语言 2C语言语句简洁、紧凑,使用方便、灵活 32个关键字,9

16、种控制语句,程序书写形式自由。 3C语言程序易于移植 C语言将与硬件有关的因素从语言主体中分离出来,通过库函数或其他实用程序实现它们。 4C语言有强大的处理能力 5生成的目标代码质量高,运行效率高,6数据类型检查不严格,表达式出现二义性,不具备数据越界自动检查功能,运算符的优先级与结合性对初学者难于掌握。C 语言中大小写字母代表不同含义,38,1.4 实现问题求解的过程,问题:求1100间所有偶数的和。 1问题分析与算法设计 求在一定范围内(1100)、满足一定条件(偶数)的若干整数的和,求累加和。 思路:设置一个变量(sum),其初值为0,然后在1100的数中(i)寻找偶数,将它们一个一个累

17、加到sum中。 一步累加:sum = sum + i; 重复累加,用循环语句实现,在循环过程中: (1) 判别 i 是不是偶数:用分支控制语句来实现。 (2) 对循环次数进行控制:通过 i 值的变化,39,思路 确定算法算法:一组明确的解决问题的步骤,它产生结果并可在有限的时间内终止。算法的描述: 自然语言 伪代码 流程图:算法的图形表示法,sum = 0 i = 1,i = 100,i 是偶数?,sum=sum+i,i=i+1,输出sum,真,真,假,假,END,2编辑程序,生成程序的源文件,C语言源文件的后缀为.c/.cpp #include void main( ) int i, sum

18、 = 0; for(i = 1; i = 100; i+) if (i%2 = 0) sum = sum + i; printf(“%d“, sum); ,.c/.cpp,编辑程序后,用该语言的编译程序对其进行编译,以生成二进制代码表示的目标程序(.obj),与编程环境提供的库函数进行连接(Link)形成可执行的程序(.exe)。编译程序指出语法错误,3程序编译连接,43,经过编辑、编译、连接,生成执行文件后,就可以在编程环境或操作系统环境中运行该程序。 如果程序运行所产生的结果不是你想要的结果,这是程序的语义错误(逻辑错误)。调试:在程序中查找错误并修改错误的过程。 调试的方法 设置断点 单

19、步跟踪调试是一个需要耐心和经验的工作,也是程序设计最基本的技能之一。,4运行与调试,44,开始,结果,C语言程序的调试、运行步骤,45,补充:C语言上机环境介绍,上机环境:Turbo C这是一个集编辑,编译,连接,执行和调试为一体的全屏幕语言工具。优点:系统小缺点:不支持鼠标(MS-dos方式) 启动Turbo C : MS-dos方式 TC Windows 98 双击相应文件夹下 tc应用程序。,46,C语言上机环境-TC,使用TC 编辑 输入、修改程序 调入程序 F3 保存文件 F2 编译+连接+执行 ctrl+ F9 (可能要修改错误) 查看运行结果 Alt + F5 中断程序执行 ctrl+ Break 或 ctrl+ C 菜单 Alt + 字母 或 F10 再 选择 退出 Alt + X,47,C语言上机环境-VC+,48,作业,熟悉作业的提交 习题1-3,练习2-1,练习2-3。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报