程序设计语言初步副本.pptx
《程序设计语言初步副本.pptx》由会员分享,可在线阅读,更多相关《程序设计语言初步副本.pptx(116页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1程序设计语言:用于书写计算机程序的语言,用于表达和描述要加工的数据以及求解问题的步骤和过程。是根据预先定义的规则(语法)、由一个有限字母表上的字符构成的字符串的总体。程序设计语言的基本成分:数据成分。用以描述程 序中所涉及的数据。运算成分。用以描述程序中所包含的运算。控制成分。用以表达程序中的控制构造。传输成分。用以表达程序中数据的传输。第1页/共116页2提纲标识符标识符 数据类型数据类型变量变量常量常量输入和输出输入和输出表达式表达式语句语句函数函数本章结合本章结合C语言语言向大家介绍结构向大家介绍结构化程序设计语言化程序设计语言的基本概念的基本概念 数据成分数据成分传输成分传输成分运算
2、成分运算成分控制成分控制成分第2页/共116页3先聊点C语言第3页/共116页4第4页/共116页5数据总线 控制总线 输入设备输入设备输出设备输出设备存储器存储器中央处理器(中央处理器(CPU)运算部件运算部件控制部件控制部件地址总线 实例:编一个程序,从键盘读入两个整数,要求在屏幕上输出相乘运算结果。处理步骤:处理步骤:1.控制部件发命令从键盘读控制部件发命令从键盘读取数据并存储到内存储器中取数据并存储到内存储器中(输入输入)。)。2.控制部件发命令从内存储控制部件发命令从内存储器中取出这两个数置入运算器中取出这两个数置入运算部件的寄存器中,让运算器部件的寄存器中,让运算器执行乘法运算,运
3、算结果写执行乘法运算,运算结果写回存储器中(回存储器中(处理处理)。)。3.控制部件发命令将存储在控制部件发命令将存储在内存储器中的结果输出到显内存储器中的结果输出到显示器上(示器上(输出输出)。)。需要考虑的问题:需要考虑的问题:1.输入输入:如何从键盘读取这两个数并将其存放:如何从键盘读取这两个数并将其存放到内存中?程序如何约束输入的必须是整数?到内存中?程序如何约束输入的必须是整数?2.处理处理:计算时如何读取内存中的这两个数?:计算时如何读取内存中的这两个数?如何实现计算?计算结果如何写回内存?如何实现计算?计算结果如何写回内存?3.输出输出:如何将内存中的计算结果输出到显示:如何将内
4、存中的计算结果输出到显示器?器?第5页/共116页6数据总线 控制总线 输入设备输入设备输出设备输出设备存储器存储器中央处理器(中央处理器(CPU)运算部件运算部件控制部件控制部件内存中数据的存取:变量、常量、数据类型输入:输入语句输出:输出语句地址总线 计算的实现:运算符表达式语句函数第6页/共116页7标识符标识符是由程序员定义的单词,用来给程序是由程序员定义的单词,用来给程序中的数据、函数和其他用户自定义对象命名。中的数据、函数和其他用户自定义对象命名。程序设计语言本身会定义一些专用名称,称程序设计语言本身会定义一些专用名称,称之为之为保留字保留字或或关键字关键字,它们,它们具有特定含义
5、,具有特定含义,程序员不能另做他用。如:程序员不能另做他用。如:C C语言规定了语言规定了3232个关键字。个关键字。3.1 标识符第7页/共116页8C语言规定的32个关键字:auto double int struct break else long switch case enum register typedefchar extern return union const float short unsigned continue for signed void default goto sizeof volatiledo if static while第8页/共116页9#inclu
6、de main()int number1;/*变量声明*/int number2;int result;printf(“please input the two numbers:n”);/*显示提示信息*/scanf(“%d%d”,&number1,&number2);/*从键盘读取2个整数*/result=number1*number2;/*赋值运算*/printf(“the result is:%dn”,result);/*输出结果*/return 0;用户自定义标识符C语言关键字3.1 标识符第9页/共116页10u 不同的程序设计语言标识符格式可能不同。不同的程序设计语言标识符格式可能
7、不同。u C C语言规定:语言规定:标识符由大写字母标识符由大写字母A A到到Z Z、小写字小写字母母a a到到z z、数字数字0 0到到9 9和下划线组成,且第一个字符和下划线组成,且第一个字符必须是字母或下划线,随后的字符必须是字母、必须是字母或下划线,随后的字符必须是字母、数字或下划线。且大小写敏感数字或下划线。且大小写敏感,如,如ageage和和AgeAge是两是两个不同的标识符。个不同的标识符。u PASCAL语言规定:和语言规定:和C语言类似,只是要求第语言类似,只是要求第一个字符只能是字母(比一个字符只能是字母(比C语言约束更强)。语言约束更强)。3.1 标识符思考:以下哪些是合
8、法的思考:以下哪些是合法的C语言标识符语言标识符age,_class_no,name1,name1,2name,#age第10页/共116页11数据数据是计算机处理的对象。是计算机处理的对象。数据依据其本身的特点可以归为不同的类:数据依据其本身的特点可以归为不同的类:整数、整数、小数、字符、字符串小数、字符、字符串等。等。(高级程序语言特点:按照人对于数据的表达方式)(高级程序语言特点:按照人对于数据的表达方式)程序设计语言应该具备区分各种类型数据的能力,程序设计语言应该具备区分各种类型数据的能力,于是引入了数据类型的概念。于是引入了数据类型的概念。数据类型包括两层含义:定义了一系列的值数据类
9、型包括两层含义:定义了一系列的值(属于属于该类型的数据能够取值的范围该类型的数据能够取值的范围)以及能应用于这)以及能应用于这些值上的一系列操作(些值上的一系列操作(数据操作数据操作)。)。3.2 数据类型第11页/共116页12u整数是由符号和一个或多个数字组成的正数、0 0或负数,又称为带符号的自然数,如+12,-38+12,-38。u注意:在数学中,整数是一个无限集合,但对于计算机来说,只能表示它的一个有限子集(取决于存储空间的大小)。整型整型3.2 数据类型程序设计语言一般包含四种程序设计语言一般包含四种标准数据类型标准数据类型:整型、字符型、浮点型和布尔型整型、字符型、浮点型和布尔型
10、(补充)(补充)。第12页/共116页133.2 数据类型整型整型数据占用的内存单元数:uC语言中整型数据细分为四类:short int、int、long int和long long int。(和教材不同)uC语言标准没有规定每一种整数类型占用的内存空间大小(即数的范围),只是约束到:short int和int至少要占据16位(2字节),而long数据至少要有32位(4字节);且数据长度上,short int=int=long int=long long int。u每一种整数类型占用的内存字节数由编译器根据所用机器的硬件情况来决定。第13页/共116页14整型数据所允许的运算包括:二目算术运算
11、:+、-、*、/、(取余);注意:两个整数进行二目运算后结果还是整数 如:125/10=12(余数5被舍弃),125%10=5 单目算术运算:取负值等;关系运算:,=,=(相等),!=(不相等)C语言中关系运算结果为1(真)或0(假)3.2 数据类型整型第14页/共116页15字符型字符型u字符数据包括26*2个字母(大小写)+10个数字+其它显示符号,总共95种;还有33种控制符号,总共128种符号;u字符型数据在内存中的存储:实际存放的是一个整数值。多数计算机系统采用ASCII(American Standard Code for Information Interchange)标准编码模
12、式来对字符进行编码。每个字符占用8位内存(1个字节);3.2 数据类型第15页/共116页16ASCII表表L H 000000010010001101000101011001110000NULDLE SP0Pp 0001SOHDC1!1AQaq 0010STXDC2“2BRbr 0011ETXDC3#3CScs 0100EOTDC4$4DTdt 0101ENQNAK%5EUeu 0110ACKSYN&6FVfv 0111BELETB,7GWgw 1000BSCAN)8HXhx 1001HTEM(9IYiy 1010LFSUB*:JZjz 1011VTESC+;Kk 1100FFFSNn 11
13、11SIUS/?O_oDEL2000H2002H2004H2003H2001H01000001存储空间存储空间该存储区存放字符A思考:若从键盘上输入字符存储到内存,字符思考:若从键盘上输入字符存储到内存,字符到二进制编码的转换是由什么部件来实现的?到二进制编码的转换是由什么部件来实现的?第16页/共116页17ASCII(A)=65 A的ASCII值是65ASCII(a)=97 规律:大写字母的ASCII编码32小写字母的ASCII编码 3.2 数据类型字符型第17页/共116页183.2 数据类型字符型关系运算(按照ASCII大小):,=,=,!=例如:A a 结果为真,因为A的ASCII是
14、65,a的ASCII是97,6597字符型所允许的运算包括(字符型所允许的运算包括(将字符型数据当作整型将字符型数据当作整型数据对待数据对待):):算术运算算术运算:ch2=ch1-32(ch2=ch1-32(若若ch1ch1值为值为b b,则则ch2ch2为为B B)ch2=ch1-1(ch2=ch1-1(若若ch1ch1值为值为b b,则则ch2ch2为为a a)ch2=ch1ch2=ch11(1(若若ch1ch1值为值为b b,则则ch2ch2为为c c)第18页/共116页19浮点型浮点型u 浮点型是带小数部分的数字类型浮点型是带小数部分的数字类型,如,如3.14,1.575E5(科学
15、计数法,即(科学计数法,即 1.575*)。u抽象地讲,浮点型数据的值域是全体实数,但是由抽象地讲,浮点型数据的值域是全体实数,但是由于计算机表示方面的原因,计算机只能表示它的一个于计算机表示方面的原因,计算机只能表示它的一个有限子集。有限子集。u 同样由于计算机表示方面的原因,实数在计算机同样由于计算机表示方面的原因,实数在计算机内部的表示有时是不准确的。例如,存储圆周率时,内部的表示有时是不准确的。例如,存储圆周率时,只能表示成近似的值。只能表示成近似的值。3.2 数据类型第19页/共116页203.2 数据类型uC语言支持三种不同长度的浮点数据类型:float、double和long d
16、ouble。其中float一般占32位(字节);double一般占64位(8字节),long double占96位(12字节)。u三者区别:越后面的类型运算精度越高,值域越大,但占用的内存单元越多。第20页/共116页21浮点型所允许的运算包括:二目算术运算:+、-、*、/;浮点型数据进行二目运算结果还是浮点型。如:12.0/5.0=2.4 单目算术运算:取负值 关系运算:,=,=,!=3.2 数据类型浮点型注意:要避免做两个实数相等或不相等的比较。由于计算注意:要避免做两个实数相等或不相等的比较。由于计算机表示方面的近似性,会使得本来应该相等的两个数不等。机表示方面的近似性,会使得本来应该相
17、等的两个数不等。建议在比较两个浮点数建议在比较两个浮点数X和和Y是否相等时使用是否相等时使用|X-Y|,其中其中是一个绝对值较小的正浮点数。是一个绝对值较小的正浮点数。第21页/共116页223.2 数据类型布尔型(补充)布尔类型数据:取值只有两种,真(True)或者假(False)。允许的运算包括:与、或、非。绝大多数程序设计语言中有布尔类型这种数据类型,如Pascal语言。但是C语言没有定义这种数据类型。布尔型布尔型第22页/共116页23标准类型是原子的、不可再分的。程序员可标准类型是原子的、不可再分的。程序员可以以标准类型为基本构件,构造出以以标准类型为基本构件,构造出复杂复杂的数的数
18、据类型。如据类型。如C C语言有:结构、数组、联合、语言有:结构、数组、联合、文件等复杂数据类型;文件等复杂数据类型;PASCALPASCAL语言有:结构、语言有:结构、数组、集合、文件等复杂数据类型。数组、集合、文件等复杂数据类型。3.2 数据类型复杂数据类型第23页/共116页243.3 变量数据总线 控制总线 输入设备输入设备输出设备输出设备存储器存储器中央处理器(中央处理器(CPU)运算部件运算部件控制部件控制部件输入数据、中间运算结果、最终结果程序需要将输入程序需要将输入数据、中间运算数据、中间运算结果以及最终结结果以及最终结果暂时保存在内果暂时保存在内存单元中。存单元中。地址总线
19、程序如何实现程序如何实现从内存单元存从内存单元存取数据?取数据?第24页/共116页253.3 变量程序运行时,通过内存地址对内存数据进行读写;程序员写源程序时,如果也是直接使用内存地址来读写内存数据,会很麻烦!如果用名字来代替地址,在程序中出现的是代表内存空间的名字,让编译器来跟踪数据实际存放的物理内存地址,就可以简化编程变量;第25页/共116页26变量用来代表内存存储空间,该存储空间用来存变量用来代表内存存储空间,该存储空间用来存放被加工的数据或处理的结果。源程序中对变量放被加工的数据或处理的结果。源程序中对变量的操作(读和赋值)实际上是对存储空间的读写的操作(读和赋值)实际上是对存储空
20、间的读写操作。操作。变量具有三个重要属性:名称、值和数据类型。变量具有三个重要属性:名称、值和数据类型。2000H2002H2004H2005H2007H2006H2003H2001Hgenderagescore内存内存用用gender代表地址为代表地址为2001H的内的内存单元,存单元,score代表地址为代表地址为2004H2007H的一片内存空间。用变的一片内存空间。用变量来实现对这些内存空间数据的量来实现对这些内存空间数据的存取。存取。3.3 变量第26页/共116页27一、变量定义 u 使使用用变变量量来来对对内内存存数数据据进进行行存存取取前前,必必须须先先定定义变量,义变量,目的
21、是目的是建立变量和存储空间的对应关系建立变量和存储空间的对应关系。u 变变量量定定义义指指明明变变量量的的名名称称和和数数据据类类型型(变变量量代代表表的的存存储储空空间间存存放放的的数数据据的的类类型型)。变变量量的的名名称称要要遵遵循循标标识识符符命命名名原原则则,虽虽然然可可以以为为任任意意长长度度,但但C编编译译器器只只认认为为前前31个个字字符符有有效效。变变量量类类型型可可以以告告诉诉编译器留出适量的用于保存数据的内存。编译器留出适量的用于保存数据的内存。u 不同语言中变量定义的写法不一样,不同语言中变量定义的写法不一样,C语言格式:语言格式:数据类型数据类型 变量名变量名1,变量
22、名变量名2,;3.3 变量思考:变量定义时要指明哪些内容?思考:变量定义时要指明哪些内容?char gender;int age1,age2;float score;数据类型变量名分号必须多个同类型变量用逗号分割第27页/共116页28注意,变量定义仅引起内存存储注意,变量定义仅引起内存存储空间分配,但此时变量中存储的空间分配,但此时变量中存储的值一般是无意义的!值一般是无意义的!变变量量定定义义将将引引起起内内存存空空间间的的分分配配。定定义义后后,变变量量就就用用来来代代表表内内存存中中的的一一片片存存储储单单元元(存存储储单单元元个个数数取取决于变量类型)。决于变量类型)。3.3 变量2
23、000H2002H2004H2005H2007H2006H2003H2001Hgenderagescore存储空间存储空间char gender;int age;float score;第28页/共116页29二、变量赋值3.3 变量C语言示例:语言示例:char gender;int age;float score;变量赋值:把一个值写入变量代表的存储空间。变量赋值:把一个值写入变量代表的存储空间。C语言变量赋值格式:语言变量赋值格式:变量名变量名=表达式表达式gender=F;age=18;score=89.5;2000H2002H2004H2005H2007H2006H2003H2001
24、Hgenderagescore存储空间存储空间ASCII(F)=70701889.5变量的值第29页/共116页303.3 变量变量使用特点先定义,后使用。int age;定义一个变量为整数类型。如未定义,则在编译时被查出,认为非法。变量未被赋值前,值一般是无意义的。对变量赋值过程是“覆盖”过程,用新值去替换旧值。读取变量代表的存储空间数据(又称读取变量的值):age=age+1;读取变量的值时,该变量保持不变。第30页/共116页31C C语语言言允允许许变变量量在在定定义义时时进进行行初初始始化化。初初始始化语句用来给变量赋初始值。例如:化语句用来给变量赋初始值。例如:char gende
25、r;int age=16;float score;3.3 变量2000H2002H2004H2005H2007H2006H2003H2001H16存储空间存储空间genderagescore第31页/共116页323.3 变量试解释下列操作的含义读取变量的值写入变量给变量赋值修改变量的值第32页/共116页33#include#includemain()int number1;/*变量声明*/int number2;int result;printf(“please input the two numbers:n”);/*显示提示信息*/scanf(“%d%d”,&number1,&numbe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计语言 初步 副本
限制150内