c语言基本数据类型与表达式-3-4

上传人:tian****1990 文档编号:74508345 上传时间:2019-01-28 格式:PPT 页数:50 大小:3.37MB
返回 下载 相关 举报
c语言基本数据类型与表达式-3-4_第1页
第1页 / 共50页
c语言基本数据类型与表达式-3-4_第2页
第2页 / 共50页
c语言基本数据类型与表达式-3-4_第3页
第3页 / 共50页
c语言基本数据类型与表达式-3-4_第4页
第4页 / 共50页
c语言基本数据类型与表达式-3-4_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《c语言基本数据类型与表达式-3-4》由会员分享,可在线阅读,更多相关《c语言基本数据类型与表达式-3-4(50页珍藏版)》请在金锄头文库上搜索。

1、C语言与程序设计,虚拟地理环境教育部重点实验室(南京师范大学) 2010年2月-6月,主讲教师: 张雪英, TEL:13851493100 +86-25-85891561(O),第1章 数据类型、运算符与表达式,2.1 C语言的语法基础 2.2 C语言的基本数据类型 2.3 常量和变量 2.4 运算符与表达式 2.5 数据类型转换,数据:对数据的描述,即数据结构。 在C语言中,系统提供的数据结构,是以数据类型的形式出现的。 执行操作:对数据处理的描述,即计算机算法。 算法是为解决一个问题而采取的方法和步骤,是程序的灵魂。 著名计算机科学家沃思(Nikiklaus Wirth)提出一个公式: 程

2、序设计方法+语言工具和环境+数据结构 + 算法 = 程序,程序的组成,算法是灵魂,数据结构是加工对象,语言是工具,编程需要采用合适的方法。 算法是解决“做什么”和“怎么做”的问题。程序中的操作语句,实际上就是算法的体现。 算法处理的对象是数据,而数据是以某种特定的形式存在的(例如整数、实数、字符等形式)。 不同的数据之间往往还存在某些联系(例如由若干个整数组成一个整数数组)。 数据结构指的是数据的组织形式。,程序的组成,2.1 语言的语法基础,(4)特殊符号:通常由12个符号组成,主要用 来表示运算符。,2.1.1、C语言字符集 (参见教材P19),C语言的基本符号可分4个类,归纳如下:,(1

3、)英文字母:大小写各26个,共计52个;,(2)阿拉伯数:0、1、2、3、4、5、6、7、8、9 共10个数字;,(3)下划线: _ ;,第二章 2.1 C语言数据类型,例如:,算术运算符:+ - * / % + -,关系运算符: = = = !=,逻辑运算符: & | !,位运算符: & | ,条件运算符: ?: 和赋值运算符:=,其他分隔符: ( ) . , ;,2.1.2 标识符(*),概念:就是用来标识变量名、符号常量名、函数名、类型名、文件名等的有效字符序列。,(1)标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。,定义规则:,如: _1 year mon

4、th student_name sum0 M.D.Jones $123 #a 3b ?c a=b,(2)在C语言中,大小写字母不等效。因此,a和A,I和i,Sum和sum,分别是两个不同的标识符。,(3)用户自定义的标识符不能与保留字(关键字)同名。,保留字,2.1.3 关键字,概念:就是具有特定含义的标识符,用户不能用来作自定义标识符。,C语言中的关键字较少,由ANSI标准推荐的关键字有32个。,(1)与数据类型有关的(14): char int float double signed unsigned short long void struct union typedef enum si

5、zeof,(3) 与程序控制结构有关的(12): do while for if else switch case default goto continue break return,(2)与存储类别有关的: auto extern register static,2.2 基本数据类型,5,整型数据,值为5,算术运算,0.5,实型数据,值为0.5,算术运算,原始数据,相同的特性,同一数据类型,数据分类、处理,12,基本数据类型,数据属于不同类别,Africa,The quick brown fox,TRUE,数据,非数值,数值,整型,非整型,9002.12,999,9/12/2003,2.1

6、75,123,Jackie Chan,char,数据类型,非数值,数值,整型,int,short int,long int,double,float,非整型,2.2.1 数据类型概述,三种表现形式,十进制形式:与数学上的整数表示相同。 例如: 12, -100, 0,八进制形式:在数码前加数字0 。 例如: 012=1*81+2*80=10(十进制),十六进制形式:在数码前加0X(数字0和字母X,大小写均可)。 例如: 0x12=1*161+2*160=18(十进制),2.2.2 整型,十六进制的数码除了数字0-9外, 还使用英文字母a-f (或A-F)表示10-15。 如:0x1e、0Xab

7、cdef、0x1000 但:0X2defg、0x100L都是错误的。,注意事项:,八进制的数码范围为0-7; 则:018、091、0A2 都是错误的数据表示方法。,2.2.3 实型,二种表现形式:,十进制形式:由数字和小数点组成;,指数形式:由“十进制小数” + “ e(或E)” + “十进制数整数” 三部分组成。,例如: 3.4 4. .3,例如: 12.5e-6 表示12.510-6,十进制小数,e(或E),十进制数整数,注意事项:,小数点不能单独出现;,e或E的两边必须有数,且其后面必须为整数;,如:0. = .0 = 0 = 0.0 .,如: 6E0.2 e5 6E,二种表现形式:,用

8、单引号括起来的一个字符;,用单引号括起来的由反斜杠()引导的转义字符。,如:A、 1、? 等。,如: n 101 x41,在统计字符个数时,只能记为一个字符,只能是英文的单引号,2.2.3 字符型,转义字符表,字符形式,功能,n,换行,t 、V,横向跳格、,b 、r,竖向跳格,退格、,f,回车,、“,8进制数表示的ASCII码对应的字符,反斜杠、单引号、双引号,ddd,换页,xhh,16进制数表示的ASCII码对应的字符,一个字符的多种表示方法:,65D(十进制)=41H(十六进制)=101Q(八进制) 字符A可以表示为A、x41、101、65、0x41、0101。,要避免的错误:,表示单引号

9、: 表示双引号:“ 表示斜线: ,例2-1:,main( ),printf(”abc tde rf tg n“);,printf(“h ti b bjk“);,/* 注代表空格*/,设一个输出区占8列,试分析输出结果。,字符的值域:,即字符的取值范围。,0-127或0-255,ASCII字符表中的所有字符, 每个字符型数据在内存中占一个字节, 包括可显示字符和非显示字符。,2.3 常量与变量,2.3.1 常量与符号常量,1.直接常量:是在程序中直接引用的数据。,分为:整型、实型、字符型、字符串,以数据的原形出现!,26,程序,编写程序时,常常需要将数据存储在内存中,方便后面使用这个数据或者修改

10、这个数据的值。,通常使用变量来存储数据。使用变量可以引用存储在内存中的数据,并随时根据需要显示数据或执行数据操纵。,存储 Rate,Rate * 5%,将值存储为DiscAmt,Rate-DiscAmt,10,0.5,将值存储为Result,9.5,变量与常量,在 C 语言中,变量命名需要遵循一定的规则,有效名称,principal,cost_price,marks_3,lastname,city,无效名称,123rate,currency$,discount%,zip code,变量的命名规则: 变量名可以由字母、数字和 _(下划线)组合而成 变量名不能包含除 _ 以外的任何特殊字符,如:%

11、、# 、逗号、空格等 变量名必须以字母或 _(下划线)开头 变量名不能包含空白字符(换行符、空格和制表符称为空白字符) C 语言中的某些词(例如 int 和 float 等)称为保留字,具有特殊意义,不能用作变量名 C 语言区分大小写,因此变量 price 与变量 PRICE 是两个不同的变量,2字符串常量,字符串常量在机器内存储时,系统会自动在字符串的未尾加一个“字符串结束标志”,它是转义字符0。该结束标志在内存中占用一个字节,但不记入字符串长度 。,在C语言中,用一对双引号括起来的零个或多个字符序列称为字符串。例如:”LiMing”、”Hello”。,字符串的长度是指该字符串的字符个数,不

12、包括双引号。例如以上两个字符串的长度分别为6和5。,3.符号常量:,特点:在程序中不能给它赋值。,概念:是用标识符来表示一个数据。,定义形式:,#define 标识符 常量数据,例如: #define PI 3.14159,在程序预处理时,凡是出现标识符PI的地方都将用数据3.14159来替换。,如:2*2.3*PI 就等价于 2*2.3*3.14159。,2.3.2 变量,变量是指在程序运行中, 其值可以被改变的量。,基本概念:,变量代表计算机内存中的某一存储空间,该存储空间中存 放的数据就是变量的值。,在同一程序块中,每个变量都有唯一的名字,不能被重复定义。,使用变量时必须“先定义,后使用

13、”。,int a,b,c ; float x,y; char c1,c2; 或 int c1,c2;,自己设定,满足标识符的规定。,如:int, float,char,;不可省,1.定义形式:,类型标识符 变量名1 ,变量名2,变量名3,.;,例如:,2.整型变量,(1)整型变量的分类,基本型,以int表示。,短整型,以short int表示,或以short表示。,长整型,以long int表示,或以long表示。,无符号型,其中无符号型又分为无符号整型,无符号短整型和无符号长整型,分别以 unsigned int unsigned short unsigned long表示。,int x;

14、long y;,2000,2001,2002,2005,x,y,内存,内存地址,2003,2004,(2)整型常量的类型 在将一个整型常量赋给一个整型变量时如何进行类型匹配?,其值在-32768 - +32767范围内,认为它是 int型,它可以赋值给 int 型和 long int 型变量。,其值在-2147483648 - +2147483647范围内,则认为它是long int型,可以将它赋值给一个long int 型变量。,短整型常量:,长整型常量:,.如果某一计算机系统的C版本确定的short int 与 int型数据在内存中占据的长度相同,,.常量中无unsigned 型.,则它的

15、表示范围与int 型相同。,因此一个int 型的常量也同时是一个short int型常量,可以赋值给int 型或 short int 型变量。,但一个非负值的整常量可以赋值给 unsigned 型整常量,只要它的范围不超过变量的表示范围即可。,数据后加一个字母1 或 L,则认为是long int型常量.,.长整型常量的表示:,例如:1231 , 432L, 0L等等。,这往往用于函数调用中,如果函数的形参为long int型,则要求实参也为 long int 型,此时用123作实参不行,而要用123L作实参。,main() int x; x =10*9*8*7*6*5*4*3*2*1; printf(“%d“,x); ,例2-2,看看下面程序的输出是什么?,long int x;,%Ld,%ld 输出的字节要长点 %d 的要短点。比如,一个数大于32767 用%d 就要溢出。假如你想输出32768.用%d 就会输出-1.这就是溢出。但是用%ld 就不会。 输出-3276832767以内的数都一样!,3、实型变量的分类,(1)整型

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

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号