




免费预览已结束,剩余44页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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周(实验课)。三个网站作业网站:00编程练习:0第二周开始CC98答疑:上机地点:计算中心1楼11机房上100网站下载作业说明,照文档做,5,自主学习,掌握知识,领会思想,怎么学、怎么学好用C语言进行程序设计,总之:Practiceagainagainandagain通过不断的编程实践,逐步领会和掌握程序设计的基本思想和方法。最终具备用C的编程能力。,教材和参考书C语言程序设计,何钦铭、颜晖主编,浙江科技出版社,2008TheCProgrammingLanguagem,SecondEdition,BrianW.Kernighan/*变量定义*/intfactorial(intn);/*函数声明*/scanf(%d,1.1一个C语言程序,输入4输出24,C程序由函数组成有且只有一个主函数main(),11,趣味程序,俄罗斯方块五子棋电子琴,12,1.2程序与程序设计语言,什么是程序?人们为解决某种问题用计算机可以识别的代码编排的一系列加工步骤。程序的执行过程实际上是对程序所表达的数据进行处理的过程。什么是程序设计语言?提供了一种表达数据与处理数据的功能要求程序员按照语言的规范编程,13,1.2程序与程序设计语言,程序与指令程序设计语言的功能程序设计语言的语法程序的编译与编程环境,14,计算机,计算机是数据处理机,具有程序能力的数据处理机,是Computer.,能做compute.,计算机是什么?能做什么?,15,计算机的五个组成部分,冯诺依曼结构计算机,16,ForExample:2+3=5,命令:输入2,2,2,命令:输入3,3,3,Write,Write,Read,Read,2,3,5,Out,Computer计算过程,把输入输出计算的每一个步操作写成一个语句,就得到一个程序,17,程序与指令,指令:计算机的一个最基本的功能如实现一次加法运算或实现一次大小的判别计算机的指令系统:计算机所能实现的指令的集合程序:一系列计算机指令的有序组合,18,高级语言程序与机器语言程序,机器语言程序(二进制形式),由机器能直接执行的指令组成;高级语言程序是为用户自己能够理解用自己语言写出的程序,必须要先翻译成机器语言程序编译;C语言能做什么?C是一种语言工具,编写高级语言程序,并可进行编译、连接,生成可被机器直接执行的程序软件;,19,程序与指令,例1-2编写程序,分别求和与乘积虚拟的计算机指令系统(7条指令)指令1:InputX将当前输入数据存储到内存的X单元指令2:OutputX将内存X单元的数据输出。指令3:AddXYZ将内存X单元的数据与Y单元的数据相加并将结果存储到Z单元。指令4:SubXYZ将内存X单元的数据与Y单元的数据相减并将结果存储到Z单元。指令5:BranchEqXYP比较X与Y,若相等则程序跳转到P处执行,否则继续执行下一条指令。指令6:JumpP程序跳转到P处执行。指令7:SetXY将内存Y单元的值设为X。,20,程序与指令,输入3个数A,B和C,求A+B+C的结果InputA;输入第1个数据到存储单元A中InputB;输入第2个数据到存储单元B中InputC;输入第3个数据到存储单元C中AddABD;将A、B相加并将结果存在D中AddCDD;将C、D相加并将结果存在D中OutputD;输出D的内容,21,程序与指令,输入2个数A和B,求A*B的结果1InputA;输入第1个数据到存储单元A中2InputB;输入第2个数据到存储单元B中3Set0X;将X设为0,此处X用以统计A累加的次数4Set0Z;将Z设为0,此处Z用以存放A*B的结果5BranchEqXB9;判别X与B是否相等;若相等说明A已累加了B次,程序跳转到第9条指令,输出结果6AddZAZ;Z=Z+A7Add1XX;X=X+18Jump5;程序跳转到第5条指令,继续循环执行第6条、7条指令9OutputZ;输出Z的值,该值等于A*B,22,程序设计语言的功能,程序设计语言的功能数据表达:表达所要处理的数据流程控制:表达数据处理的流程,23,数据表达,数据表达:一般将数据抽象为若干类型数据类型:对某些具有共同特点的数据集合的总称代表的数据(数据类型的定义域)在这些数据上做些什么(即操作或称运算)例如:整数类型包含的数据:,-2,-1,0,1,2,作用在整数上的运算:+、-、*、/等,24,数据表达,C语言提供的数据类型基本数据类型:程序设计语言事先定义好,供程序员直接使用,如整型、实型(浮点型)、字符型等。构造类型:由程序员构造,如数组、结构、文件、指针等。各种数据类型的常量与变量形式常量(常数)与变量,25,流程控制,结构化程序设计方法将复杂程序划分为若干个相互独立的模块模块:一条语句(Statement)、一段程序或一个函数(子程序)等单入口、单出口,任何程序都可以将模块通过3种基本的控制结构进行组合来实现,顺序结构,循环结构,分支结构,27,流程控制,语句级控制:3种基本的控制结构顺序控制结构:自然顺序执行分支控制结构(选择结构):根据不同的条件来选择所要执行的模块循环控制结构:重复执行某个模块单位级控制:函数的定义与调用处理复杂问题时,将程序分为若干个相对独立的子程序(函数),28,程序设计语言的语法,用程序设计语言所写的程序必须符合相应语言的语法源程序(源代码)是一个字符序列这些字符序列按顺序组成了一系列“单词”“单词”的组合就形成了语言有意义的语法单位一些简单语法单位的组合又形成更复杂的语法单位最后一系列语法单位组合成程序。,29,C语言的常用“单词”名词术语,(1)标识符:C语言的标识符规定由字母、数字以及下划线组成,且第一个字符必须是字母或下划线。(2)保留字(关键字):它们是C语言规定的、赋予它们以特定含义、有专门用途的标识符。(3)自定义标识符:包括在程序中定义的变量名、数据类型名、函数名以及符号常量名。有意义的英文单词(4)常量:常量是有数据类型的,如,123、12.34(5)运算符。代表对各种数据类型实际数据对象的运算。如,+(加)、-(减)、*(乘)、/(除)、%(求余)、(大于),30,C语言的主要语法单位,(1)表达式:运算符与运算对象组合就形成了表达试。如,2+3*4(2)变量定义:变量也有数据类型,所以在定义变量时要说明相应变量的类型。如:inti;(3)语句:语句是程序最基本的执行单位,程序的功能就是通过对一系列语句的执行来实现的。(4)函数定义与调用,其中,(3)语句:表达式语句:表达式加分号“;”分支语句:实现分支控制过程if(ab)x=a;elsex=b;循环语句:实现循环控制的过程sum=0;/*初始化sum和i*/i=1;while(i=100)/*while循环语句*/sum=sum+i;i=i+1;复合语句:用一对“”,将若干语句顺序组合在一起就形成了一个程序段。,其中,(4)函数定义与调用函数是完成特定任务的独立模块,函数的使用最主要涉及到函数的定义与调用。输入输出:C语言没有输入输出语句,用库函数printf()、scanf()等实现。,33,程序的编译与编程环境,程序的编译编译器(源)程序计算机直接能理解的指令序列编译器:对源程序进行词法分析、语法与语义分析,生成可执行的代码。直接指出程序中的语法错误编程环境包括编辑程序(Edit)、编译(Compile)、调试(Debug)等过程。掌握程序设计语言:根据语言的语法,用语言表达数据、实现程序的控制,并会使用编程环境。,34,C语言上机过程,编译,连接,运行,35,1.3C语言的发展历史与特点,历史1972年:贝尔实验室的DennisRitchie在B语言的基础上设计并实现了C语言。1978年:B.W.Kernighan和D.Ritchie(简称K重复累加,用循环语句实现,在循环过程中:(1)判别i是不是偶数:用分支控制语句来实现。(2)对循环次数进行控制:通过i值的变化,39,思路确定算法算法:一组明确的解决问题的步骤,它产生结果并可在有限的时间内终止。算法的描述:自然语言伪代码流程图:算法的图形表示法,sum=0i=1,i=100,i是偶数?,sum=sum+i,i=i+1,输出sum,真,真,假,假,END,2编辑程序,生成程序的源文件,C语言源文件的后缀为.c/.cpp#includevoidmain()inti,sum=0;for(i=1;i=100;i+)if(i%2=0)sum=sum+i;printf(%d,sum);,.c/.cpp,编辑程序后,用该语言的编译程序对其进行编译,以生成二进制代码表示的目标程序(.obj),与编程环境提供的库函数进行连接(Link)形成可执行的程序(.exe)。编译程序指出语法错误,3程序编译连接,43,经过编辑、编译、连接,生成执行文件后,就可以在编程环境或操作系统环境中运行该程序。如果程序运行所产生的结果不是你想要的结果,这是程序的语义错误(逻辑错误)。调试:在程序中查找错误并修改错误的过程。调试的方法设置断点单步跟踪调试是一个需要耐心和经验的工作,也是程序设计最基本的技能之一。,4运行与调试,44,开始,结果,C语言程序的调试、运行步骤,45,补充:C语言上机环境介绍,上机环境:TurboC这是一个集编辑,编译,连接,执行和调试为一体的全屏幕语言工具。优点:系统小缺点:不支持鼠标(MS-dos方式)启动TurboC:MS-dos方式TCWindows
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 餐饮公司合伙人投资风险控制及责任划分协议
- 2025年美容院退款协议
- 人教版三年级语文下册《鹿角和鹿腿》教学课件
- 古诗词鉴赏之画面描绘-2024小升初语文专项复习讲义
- 肾内科护理分级体系
- 高中化学必背知识点
- 《建筑工程施工项目信息化管理技术规范》编制说明
- 港口物流文员岗位技能培训
- 檀香刑课件介绍
- 开塞露治疗肠梗阻
- 全国xx杯说课大赛机械类一等奖作品:钳工车模的制作说课课件(26页PPT)
- 《品牌策划与管理(第4版)》知识点与关键词解释
- MOFs材料介绍(课堂PPT)
- 河道生态环境修复工程施工安全管理体系与措施
- 万里国际南宁汽配城物业管理方案
- 国家开放大学本科《机器人技术及应用》形考期末考试题及答案汇总
- PHC管桩有效预应力
- 出院证(标准模板)
- 深圳市视频门禁报警系统联网数据规范
- 急性上消化道出血课件
- 不饱和聚酯树脂化学品安全技术说明书MSDS
评论
0/150
提交评论