C语言程序设计课件第3章.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C语言程序设计课件第3章.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 课件
- 资源描述:
-
1、第3章 C语言程序设计基础返回主目录返回主目录第3章 C语言程序设计基础 本章主要介绍本章主要介绍C C语言的数据类型、语言的数据类型、常用运算符及其表达式和数据的输入常用运算符及其表达式和数据的输入(输出)。(输出)。1.C1.C语言的数据类型语言的数据类型2.2.变量和常量变量和常量3.C3.C语言的基本数据类型语言的基本数据类型4.4.常用运算符及其表达式常用运算符及其表达式5.5.数据的输入与输出数据的输入与输出第3章 C语言程序设计基础一、一、C C语言的数据类型语言的数据类型基本整型基本整型(有符号、没有符号)(有符号、没有符号)短整型短整型 (有符号、没有符号)有符号、没有符号)
2、长整型长整型 (有符号、没有符号)(有符号、没有符号)C C语言的数据类型如下:语言的数据类型如下:数据类型数据类型基本类型基本类型构造类型构造类型指针类型指针类型空类型空类型数组类型数组类型结构体类型结构体类型共用体类型共用体类型整型整型实型实型字符型字符型枚举型枚举型 单精度实型单精度实型 双精度实型双精度实型第3章 C语言程序设计基础一、变量一、变量在程序运行过程中,其值有可能发生改变的量,称之为变量。在程序运行过程中,其值有可能发生改变的量,称之为变量。变量的概念含义如下:变量的概念含义如下:1.1.变量代表内存中的某个存储空间,是存放数据的变量代表内存中的某个存储空间,是存放数据的“
3、容器容器”。2.2.变量中存放的数据称为变量的值,在不同的时刻,变量的变量中存放的数据称为变量的值,在不同的时刻,变量的 值可能不同值可能不同 。3.3.一个变量只能存放某一类型的数据。一个变量只能存放某一类型的数据。4.4.每一个变量必须有一个名称,称为变量名每一个变量必须有一个名称,称为变量名 ,在程序执行过,在程序执行过 程中,变量名是不变的。程中,变量名是不变的。5.5.变量名与计算机的存储单元相对应的变量名与计算机的存储单元相对应的 。6.6.从变量中取值,实际上是通过该变量名找到相应的内存地从变量中取值,实际上是通过该变量名找到相应的内存地 址,从其存储单元中读取数据址,从其存储单
4、元中读取数据 。第3章 C语言程序设计基础二、变量的定义二、变量的定义1.1.在使用变量前必须先指明变量的类型和名称。在使用变量前必须先指明变量的类型和名称。2.2.2.2.标识符的命名规则如下:标识符的命名规则如下:由英文字母、数字和下划线构成,且不能以数字开头。由英文字母、数字和下划线构成,且不能以数字开头。最长不能超过最长不能超过3131个字符。个字符。不能与关键字同名。不能与关键字同名。变量名一般用小写字母表示。变量名一般用小写字母表示。第3章 C语言程序设计基础三、常量三、常量 在程序运行过程中,其在程序运行过程中,其值不可能发生改变值不可能发生改变的量,称之为常量。的量,称之为常量
5、。在程序中出现的具体数值和内存单元的地址都是常量。在程序中出现的具体数值和内存单元的地址都是常量。在在C C语言程序中,还可以用一个符号或名字来代替一个常量,语言程序中,还可以用一个符号或名字来代替一个常量,称为符号常量。符号常量定义的方式主要有如下两种:称为符号常量。符号常量定义的方式主要有如下两种:1.1.用用constconst限定符来定义符号常量限定符来定义符号常量(将一个变量定义为(将一个变量定义为“只读只读”常量常量 )。如:如:const float PI=3.14159;const float PI=3.14159;2.2.用编译预处理命令用编译预处理命令#define#def
6、ine来定义符号常量来定义符号常量(指定一个标识符来(指定一个标识符来 代替一个字符串代替一个字符串 )如:如:#define PI 3.14159#define PI 3.14159第3章 C语言程序设计基础一、整型数据一、整型数据1 1、整型常量、整型常量整型常量有三种表示方法:整型常量有三种表示方法:十进制:十进制:由由0 0,1 1,2 2,3 3,4 4,5 5,6 6,7 7,8 8,9 9等数字构成。等数字构成。八进制:由八进制:由0 0,1 1,2 2,3 3,4 4,5 5,6 6,7 7等数字构成等数字构成 ,八进,八进 制数是以制数是以0 0开头的。如:开头的。如:012
7、30123,0505,03450345等。等。(08020802,09050905,0908 0908 等是错误的)等是错误的)十六进制十六进制 :由:由0 0,1 1,2 2,3 3,4 4,5 5,6 6,7 7,8 8,9 9,A A,B B,C C,D D,E E,F F等数字构成,十六进制数是以等数字构成,十六进制数是以0 x0 x开开 头的。例如:头的。例如:0 x1230 x123,0 x50 x5,0 xab0 xab,0 x97640 x9764等。等。第3章 C语言程序设计基础2 2、整型变量、整型变量 整型变量在使用前必须先定义。整型变量在使用前必须先定义。整型数据在内存
8、中存储形式整型数据在内存中存储形式 :整数在内存中是以:整数在内存中是以二进制二进制 补码补码形式存放的,其中,形式存放的,其中,最高位表示符号,最高位表示符号,0 0为正,为正,1 1为负为负。正数的原码和补码是相同的,负数的原码和补码不相同,正数的原码和补码是相同的,负数的原码和补码不相同,负数的补码是其反码加负数的补码是其反码加1 1。负数的反码是在原码的基础上。负数的反码是在原码的基础上 按位取反,最高位保不变。按位取反,最高位保不变。第3章 C语言程序设计基础3.3.整型变量的具体分类整型变量的具体分类 基本整型基本整型 unsigned unsigned intint 无符号无符号
9、 短整型短整型 unsigned unsigned shortshort 长整型长整型 unsigned longunsigned long整型整型 基本整型基本整型 intint 有符号有符号 短整型短整型 shortshort 长整型长整型 long long 类类 型型 说明方式说明方式 字节字节 数数 值值 范范 围围基本整型基本整型 intint 2 -32768 2 -3276832767 32767 即即-2-215152 21515-1-1无符号基本整型无符号基本整型 unsigned unsigned intint 2 2 0 065535 65535 即即0 02 2161
10、6-1-1短整型短整型 shortshort 2 2 -32768 -3276832767 32767 即即-2-215152 21515-1-1无符号短整型无符号短整型 unsigned short 2unsigned short 2 0 065535 65535 即即0 02 21616-1-1长整型长整型 longlong 4 -2147483648 4 -21474836482147483647 2147483647 即即-2-231312 23131-1-1无符号长整型无符号长整型 unsigned long 4 0unsigned long 4 04294967295 429496
11、7295 即即0 02 23232-1-1 第3章 C语言程序设计基础注意:注意:如果在一个整数的后面加上如果在一个整数的后面加上L L或或l l,系统认为该整数系统认为该整数是长整型。如果一个整数没有其它特殊说明,系统默是长整型。如果一个整数没有其它特殊说明,系统默认为基本整型。认为基本整型。不同整数类型的变量都有确定的数值范围,在程序不同整数类型的变量都有确定的数值范围,在程序种使用某种整数类型数据时,必须先估计数据的大小,种使用某种整数类型数据时,必须先估计数据的大小,要保证数据的值在规定范围内,如果计算的数据超出要保证数据的值在规定范围内,如果计算的数据超出范围,将发生范围,将发生“溢
12、出溢出”。例如:一个例如:一个int型变量的最大允许值为型变量的最大允许值为32767,如果加,如果加1,就会发生,就会发生“溢出溢出”,计算结果不再是,计算结果不再是32768。第3章 C语言程序设计基础例例3-1 整型数据的溢出。整型数据的溢出。#include stdio.hmain()int x,y,z;x=32767;y=x+1;printf(%dn,y);第3章 C语言程序设计基础二、实型数据二、实型数据1 1、实型常量、实型常量实型常量有两种表示方法:实型常量有两种表示方法:十进制小数形式:十进制小数形式:由数字和小数点构成。由数字和小数点构成。例如:例如:123.456,0.5
13、,3.0123.456,0.5,3.0等等。3.03.0可简写为可简写为3.3.,0.50.5可简写为可简写为 .5.5。指数形式:由数字、小数点和字母指数形式:由数字、小数点和字母E E(或(或e e)构成。构成。例如:例如:1.23e41.23e4,0.6e5,345e-40.6e5,345e-4等等。注意:用指数形式来表示实数时,注意:用指数形式来表示实数时,E E(或(或e e)之前必须有数之前必须有数字,并且字,并且E E(或(或e e)后面的指数必须为整数。例如后面的指数必须为整数。例如1.2E5.41.2E5.4是非法的。当以指数形式输出实数时,在是非法的。当以指数形式输出实数时
14、,在E E(或(或e e)前面的前面的数中,小数点左边只能有一位非零的数字。例如:数中,小数点左边只能有一位非零的数字。例如:1.28E41.28E4。第3章 C语言程序设计基础2 2、实型变量、实型变量实型数据是按照指数的形式存储的。实型数据是按照指数的形式存储的。实型变量有三种类型:实型变量有三种类型:类类 型型 说说 明明 方方 式式 字节字节 精精 确确 度度 数数 值值 范范 围围单单 精精 度度 floatfloat 4 4 小数点后小数点后6 6位位 1010-37-3710103838双双 精精 度度 double double 8 8 小数点后小数点后1515位位 1010-
15、307-3071010308308长双精度长双精度 long double 10 long double 10 小数点后小数点后1818位位 1010-4931-4931101049324932注意:注意:如果一个实数没有其它特殊说明,系统默认为双精度型,如果如果一个实数没有其它特殊说明,系统默认为双精度型,如果在其后面加字母在其后面加字母F F(或(或f f),),系统将按单精度型进行处理。系统将按单精度型进行处理。例如:例如:3.14F3.14F是单精度型数据,是单精度型数据,3.143.14是双精度型数据,是双精度型数据,3.14L3.14L是长双精度型数据。是长双精度型数据。第3章 C
16、语言程序设计基础 实型数据是按照指数的形式存储的。系统将实型数据分实型数据是按照指数的形式存储的。系统将实型数据分成小数部分和指数部分,分别存放。成小数部分和指数部分,分别存放。例如,实数例如,实数314.159314.159的存储形式如下的存储形式如下:第3章 C语言程序设计基础三、字符型数据三、字符型数据1 1、字符是构成源程序的基本元素,、字符是构成源程序的基本元素,C C语言语言字符常量字符常量用单引号用单引号 标注,字母、标点符号都属于字符常量。如:标注,字母、标点符号都属于字符常量。如:A A,等。等。2 2、字符在计算机中是以其、字符在计算机中是以其ASCIIASCII码值来存储
17、的。码值来存储的。3 3、C C语言中还有一种特殊形式的语言中还有一种特殊形式的字符常量字符常量,就是以一个,就是以一个 开开 头的字符序列,称为转义字符。头的字符序列,称为转义字符。第3章 C语言程序设计基础字符形式字符形式 含含 义义 ASCIIASCII码码nn 换行,将当前位置移到下一行的开头换行,将当前位置移到下一行的开头 1010tt 水平制表(跳到下一个水平制表(跳到下一个tabtab位置)位置)9 9bb 退格,将当前位置移到前一列退格,将当前位置移到前一列 8 8rr 回车,将当前位置移到本行开头回车,将当前位置移到本行开头 1313ff 换页,将当前位置移到下页开头换页,将
18、当前位置移到下页开头 1212 反斜杠字符反斜杠字符 92 92 单引号字符单引号字符 3939 双引号字符双引号字符 3434 dddddd 1 1到到3 3位位8 8进制数所代表的字符进制数所代表的字符 xhhxhh 1 1到到2 2 位位1616进制数所代表的字符进制数所代表的字符C语言的转义字符如下语言的转义字符如下:第3章 C语言程序设计基础4 4、字符型变量、字符型变量字符变量用来存放单个字符,一个字符变量在某一时刻只能字符变量用来存放单个字符,一个字符变量在某一时刻只能存放一个具体字符,占一个字节。存放一个具体字符,占一个字节。字符变量定义的一般形式如下:字符变量定义的一般形式如
19、下:char char 变量名变量名;例如:例如:char ch1;char ch1;第3章 C语言程序设计基础例例3-2 3-2 大小写英文字母的转换。大小写英文字母的转换。main()main()char c1,c2;char c1,c2;c1=a;c2=98;c1=a;c2=98;printf(%cprintf(%c%d,%c%dn,c1,c1,c2,c2);%d,%c%dn,c1,c1,c2,c2);c1=c1-32;c2=c2-32;c1=c1-32;c2=c2-32;printf(%cprintf(%c%d,%c%dn,c1,c1,c2,c2);%d,%c%dn,c1,c1,c2,
20、c2);第3章 C语言程序设计基础5 5、字符串常量、字符串常量字符串常量是用双引号括起来的一组字符。字符串常量是用双引号括起来的一组字符。例如:例如:how are you how are you 字符常量和字符串常量是两个不同的概念,不能混淆,字符常量和字符串常量是两个不同的概念,不能混淆,C C语言语言系统自动在字符串的结尾加一个结束标志符系统自动在字符串的结尾加一个结束标志符00,来表示该字,来表示该字符串已经结束符串已经结束 a a 是字符常量,占一个字节。是字符常量,占一个字节。a a 是字符串常量,占两个字节是字符串常量,占两个字节(后接一个结束标志符)。(后接一个结束标志符)。
21、第3章 C语言程序设计基础注意注意:只能将一个字符常量赋给一个字符变量,绝对不能只能将一个字符常量赋给一个字符变量,绝对不能将一个字符串常量赋给一个字符变量。将一个字符串常量赋给一个字符变量。在字符串中,结束标志符是字符串的一部分,在字符串中,结束标志符是字符串的一部分,输出时,结束标志符不输出。输出时,结束标志符不输出。1 1占占2 2个字节个字节 1L1L占占4 4个字节个字节 1 1 占占1 1个字节个字节 11占占2 2个字节个字节第3章 C语言程序设计基础三、枚举型数据三、枚举型数据1 1、“枚举型枚举型”数据就是将变量的可能值一一列举出来,变量的值数据就是将变量的可能值一一列举出来
22、,变量的值 是列举范围中的任意一个值。是列举范围中的任意一个值。2 2、定义枚举类型的一般形式如下、定义枚举类型的一般形式如下 enumenum 枚举类型名枚举类型名 成员表列成员表列;例如:例如:enumenum weeksun,mon,tue,wed,thu,fri,satweeksun,mon,tue,wed,thu,fri,sat;其中其中sun,monsun,mon,,satsat等称为枚举元素。等称为枚举元素。枚举元素在编译时被当作常量处理,不能对其赋值。枚举元素在编译时被当作常量处理,不能对其赋值。第3章 C语言程序设计基础3 3、定义枚举型变量的一般形式如下:、定义枚举型变量的
23、一般形式如下:enumenum 枚举类型名枚举类型名 变量名;变量名;例如:例如:enumenum week x,y;week x,y;x x与与y y的值是枚举元素的值是枚举元素sunsun,monmon,tuetue,wedwed,thuthu,frifri,satsat中的一个。中的一个。第3章 C语言程序设计基础四、数据类型长度测试四、数据类型长度测试C C语言中,不同的数据类型在存储时所占的存储空间语言中,不同的数据类型在存储时所占的存储空间和数值范围是不同的,即使是同一个数据类型在不和数值范围是不同的,即使是同一个数据类型在不同类型的计算机上存储时,所占的存储空间和数值同类型的计算
24、机上存储时,所占的存储空间和数值范围也有所不同,通常使用字节运算符范围也有所不同,通常使用字节运算符sizeofsizeof()()来求来求各类型数据存储时所占的字节数。各类型数据存储时所占的字节数。sizeofsizeof()()的一般格式为:的一般格式为:sizeofsizeof(类型名或变量名类型名或变量名 )第3章 C语言程序设计基础例例3-33-3#include#include stdio.hstdio.h main()main()intint x,y,z;x,y,z;x=x=sizeof(intsizeof(int););y=y=sizeof(longsizeof(long do
25、uble);double);z=z=sizeof(charsizeof(char););printf(%d,%d,%d,x,y,zprintf(%d,%d,%d,x,y,z););第3章 C语言程序设计基础五、不同数据类型间的转换和运算C C语言系统中,整型、实型、字符型等数据可以混合运算。语言系统中,整型、实型、字符型等数据可以混合运算。doubledoublelonglongunsignedunsignedintintfloatfloatchar,shortchar,short高高低低当表达式中出现不当表达式中出现不同类型数据时,系同类型数据时,系统将自动按照右图统将自动按照右图中的高低顺
展开阅读全文