Lecture 1 Introduction_to_C(第一章)

上传人:紫** 文档编号:243142044 上传时间:2024-09-16 格式:PPT 页数:38 大小:2.31MB
返回 下载 相关 举报
Lecture 1 Introduction_to_C(第一章)_第1页
第1页 / 共38页
Lecture 1 Introduction_to_C(第一章)_第2页
第2页 / 共38页
Lecture 1 Introduction_to_C(第一章)_第3页
第3页 / 共38页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,Intelligent Information Processing Lab., Dept.of Computer Sci. & Tech.,YBU,*,C,程序设计,教师姓名:赵亚慧,单 位:延边大学 工学院,计算机科学与技术学科,办公地点,: z316,联系电话:,273-2332,转,253,Email:ybuqmks,关于本课程,总学时:,64,学时;,3.5,学分,理论(,48,学时),+,实验(,16,学时),理论课:周一,7-8,节,3412,周三,3-4,节,3412,(双周),实验课:周五,9-10,节,Z225,1-55,(单周),56-105,(双周),考核形式:考勤(,10%,),+,测验(,10%,),+,实验(,20%,),+,期末考试(,60%,),第一章,C,语言概述,C,语言概述,1.1,计算机与程序、程序设计语言,1.3,C,语言的特点,1.4,简单的,C,语言程序,1.5,运行,C,程序,的步骤与方法,1.2,语言出现的历史背景,程序设计语言概述,【,重点,】,程序及程序设计语言的实现,数据及数据存取,C,语言的特点,C,语言概述,C,语言概述,三种计算工具,数值数据的存储,人工运算,数值数据的存储,非程序化运算,数据的存储、加工、处理、传递,程序化运算,C,语言概述,计算机,与计算器,根本区别是什么?,程序控制,人工操作,三个要回答的问题:,程序是什么,程序设计语言是什么,程序如何得以实现(程序如何在计算机中运行),C,语言概述,一个基本概念,:,计算,的本质(什么叫计算),计算就是映射或,基于规则的符号串的变换过程,从一个,已知的符号串,开始,按照,一定的规则,,一步一步地,改变符号串,,经过,有限步骤,,最后,得到,一个满足预先规定的符号串,这种,变换过程,就是计算,完全可以把计算看作是基于规则的物理状态的变换,所谓的,符号,就是特定的,物理状态,,,映射,或符号变换就是,从一种物理状态变换到另外一种物理状态的过程,算术运算、定理证明、文字翻译等都是计算,C,语言概述,更具体的概念:算法与程序,计算过程所依赖的,规则,就是,算法,一个问题是不是可计算的,与该问题是不是具有相应的算法是完全一致的,特定的,自然规律,实际上就是特定的,“,算法,”,,特定的,自然过程,实际上就是执行特定的自然,“,算法,”,的一种,“,计算,”,算法的计算机语言描述就是程序,程序是计算机解决问题的规则的表示形式,这种表示形式能够被计算机转化为计算机的实际动作,程序及程序设计语言,程序,(Program),指示计算机按解决问题的步骤,实现预期目的而进行操作的一系列,语句,或,指令,程序设计语言,(Programming Language),用来定义计算机程序的符号系统(具有语法规则),定义计算机所需要使用的,数据,定义计算机对数据进行的,操作,C,语言概述,程序设计语言的分类,自然语言,e.g.,:汉语、,English,、,、,机器语言,用二进制代码指令表达的计算机语言,指令是用,0,和,1,组成的一串代码,高级语言, 不依赖于机器,远离对硬件的直接操作,汇编语言, 依赖于机器的符号系统,利用计算机所有硬件特性并能直接控制硬件,低级语言,计算机只能识别,0,和,1,,用,0,和,1,表示一切信息和操作,a,b,c,0,1,C,语言概述,程序及程序设计语言的实现,【,重点,】,口译,解释,(Interpretation),#%$&*.,#%$&*.,#%$&*.,态度决定一切,态度决定一切,态度决定一切,1,2,3,C,语言概述,程序及程序设计语言的实现,【,重点,】,笔译,编译,(Compilation),#%$&*.,态度决定一切,1,C,语言概述,我们的程序,编译程序,目标程序,计算机,要说翻译官能听明白的话!,程序及程序设计语言的实现,【,重点,】,编译方式下程序设计语言的实现过程,C,语言概述,人编写的程序,编译,程序,链接,程序,已有的可利用机器语言程序,源程序,目标程序,库函数,编辑,程序,运行结果,机器语言程序,最终机器语言程序,可执行程序,编辑,编译,链接,运行,?,出错,利用计算机解决问题的过程,C,语言概述,问题,符号表达,分析,算法设计,Step 1,:,input S,Step 2,:,calculate t,Step 3: output t,算法,main(),float S;,scanf(“%f”, ,源程序,编程,编译并运行,t=2.34(sec),结果,领域知识,每个环节的主体、输入、输出是什么,C,语言概述,数据和数据的存取,【,重点,】,内存的组织方式,【,难点,】,变量与内存单元,【,难点,】,数据类型,C,语言的特点,存储器,内存,(,主存, main memory),:存放,计算机运行期间,程序和数据,外存,(,辅助存储器, auxiliary memory),:,不依赖于电能,而长期保存信息,外存中的程序和数据在使用时必须调入内存,内存中的数据为了在断电情况下长期保存,必须保存到外存中,数据及数据存取,存储器,数据及数据存取,使用,保存,内存的组织方式,【,重点,】,内存单元,(Unit),:内存中数据存储和读取的基本单位,一般容量为,1byte=8bits,笔记本某页的某一行,每个内存单元具有唯一的地址,(Address),笔记本某页某一行的行序号,地址是标识内存单元的编号,是确定内存单元、读写数据的依据,内存单元地址是连续编号的,C,语言中以,指针,(Pointer),形式表示内存单元的地址,C,的特色之一,数据及数据存取,内存的组织方式,【,重点,】,数据及数据存取,0001,0002,0003,0004,0005,0006,0007,0008,0009,000A,000B,000C,1bit,uint: 1byte,address,1,位,16,进制数,=4,位二进制数,4,位,16,进制数,=16,位二进制数,16,位二进制数可表示,2,16,=65536,个不同单元,=65536B,=64KB,为管理,1MB,内存,需要用几位二进制数表示内存单元地址?,变量,(Variable),与内存单元,【,难点,】,变量,对应于某一确定的内存单元,单元是物理设备,(,物理的,),,变量是程序设计语言的语法成份,(,逻辑的,),,二者之间的对应关系由编译程序确定,变量名,(Name),是内存单元的符号标识,是内存单元的命名,变量的值,(Value),就是对应内存单元中存取着的数据,(,程序中以变量名表示变量的值,),数据及数据存取,变量与内存单元,【,难点,】,数据及数据存取,。,崔 旭,。,315,317,319,系办公室,IIP,研究室,主任室,地址,单元, 变量,变量名,变量的值,计算机系,武松林,姜 浩,王 伟,程 娜,相 林,李明,内存,数据类型,(Data Type),【,难点,】,具有相同性质(属性)的数据集合,规定了数据存取方法、意义、可实施操作,未指定数据类型就无法解释单元内二进制码的意义,0100 0001,表示什么(,65,?,,A,?地址?),数据及数据存取,存储器中的二进制串的语义由数据类型所规定,数据类型,(Data Type),【,难点,】,C,中确定数据类型的途径,:,类型定义,e.g. :,int x,;,表示,x,是整型,x,占,2,个单元,该单元内容,(,二进制,),应解释为整数,(,的补码,),x,可参与算术运算,数据及数据存取,特点,-1,C,是中级语言,汇编语言,把高级语言的基本结构和语句与低级语言的实用性结合起来,对,位,、,字节,和,地址,(计算机最基本的工作单元)进行操作,C,语言的特点,特点,-2,C,是结构式语言,代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立,以函数作为程序单位,具有多种循环、条件语句控制程序流向,从而使程序完全,结构化,可使程序层次清晰,便于使用、维护以及调试,C,语言的特点,特点,-3,C,语言具有丰富的数据类型,提供了用基本数据类型构造出多种复杂的数据结构的功能,特别是,指针,类型,是,C,语言中有特色的和重要作用的数据类型,用户可根据需要定义特殊的数据类型,C,语言的特点,特点,-4,C,语言简洁易读,运算符和库函数丰富,C,语言只有,30,多个,保留字,,,9,种控制语句;书写形式自由,许多功能可以通过函数调用来实现,C,语言提供了,30,多种,运算符,,运算能力十分丰富,C,系统提供了大量的,标准库函数,可直接调用,大大提高了程序设计的效率和质量,C,语言的特点,特点,-5,C,语言可移植性好,程序本身独立于机器硬件,可从一种环境到另一种环境运行,被广泛地移植到各类计算机上,从而形成了多种版本的,C,语言,C,语言的特点,缺点,语法限制不严格,程序设计自由度大,换取高效率的代价,C,语言的特点,C,语言程序结构的典型形态,【,重点,】,最简单的,C,程序:基本结构和简单功能的实现,简单的,C,程序,/* The simplest C program */,#include ,main( ),printf(”,Hello, world,n” );,注释,包含头文件,以便调用,I/O,库函数,主函数,程序由此开始执行,调用库函数显示信息,函数开始与结束标志,简单的,C,程序,/*,求任意数的和,*/,#include ,main( ),int x, y, z;,x=10;,y=20;,z=x+y;,printf(”%d”, z);,定义,x,y,z,是整型变量,把,10,和,20,分别存放到,x,y,对应的内存单元中,x,y,z,计算,x,与,y,的和,并存放到,z,对应的单元中,按指定格式显示,z,的值,: 30,?,?,?,10,20,30,内存,简单的,C,程序,/*,选择两个数中较大的,*/,#include ,main( ),int x, y, z;,scanf(”%d, %d”, ,if (xy) z=x;,else z=y;,printf(”%d”, z);,按指定格式输入,x, y,的值并存放到对应单元中,(,输入,: 10, 20),选择,x, y,中较大者,,并存放到,z,对应单元中,显示结果:,20,x,y,z,?,?,?,10,20,20,x,是变量名,表示变量的,值,&x,是,x,对应内存单元的,地址,内存,C,语言程序结构的典型形态,【,重点,】,函数是,C,程序的基本单位,函数是具有一定独立功能的程序单位,不同函数有不同名字,主函数(,main,)必须有且仅有一个,是程序的入口,C,程序由若干函数,并列,而成,系统库函数,:,已编译好且可以直接使用的函数,但必须包含相应头文件,简单的,C,程序,C,语言程序结构的典型形态,【,重点,】,以,函数为基本单位的优点,C,程序的结构,92,式,9mm,手枪(驻澳门部队装备),生产手枪程序,主函数:调用函数,A-H,生产各部件、组装、测试,函数,A,:生产套筒,函数,B,:生产枪管,函数,C,:生产枪口帽,函数,D,:生产复进簧及导杆,函数,E,:生产连接座,函数,F,:生产击发机构及,函数,G,:生产弹匣,函数,H,:生产挂机扳把,库函数:生产原材料,每个函数都简单:函数的功能相对独立单一,任一个函数不必考虑另一函数的处理过程,函数之间需要少量的通信,降低复杂度:,全体子系统的复杂度之和,b) return a;,else return b;,y,x,z,a,b,10,20,?,?,?,10,20,20,参数传递,释放内存,返回值,缺点:效率(时间或空间)下降,内存,值得!,C,语言程序结构的典型形态,【,重点,】,输入输出操作的实现:使用(调用)库函数实现,注释及其作用:提高程序的易读性,被编译程序过滤掉,C,程序是如何实现的?,【,决定上机步骤,】,C,语言概述,查阅:,C,语言的发展历史,实验作业:,【pp16】4- 5,实验一:,熟悉,C,程序开发环境、进行简单程序的调试,【2,学时,】,课后作业,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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