《C语言数据描述和C程序设计初步.ppt》由会员分享,可在线阅读,更多相关《C语言数据描述和C程序设计初步.ppt(63页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、程序设计技术程序设计技术主讲教师:陈恒鑫主讲教师:陈恒鑫主讲教师:陈恒鑫主讲教师:陈恒鑫工作单位:重庆大学计算机学院工作单位:重庆大学计算机学院工作单位:重庆大学计算机学院工作单位:重庆大学计算机学院电子邮件:电子邮件:电子邮件:电子邮件:课程介绍课程介绍课时:课时:理论理论理论理论 40 40 40 40学时学时学时学时 实验实验实验实验 32 32 32 32学时学时学时学时考试:考试:笔试笔试笔试笔试 70 70 70 70 实验实验实验实验 25 25 25 25(5 5 5 5个实验)个实验)个实验)个实验)出勤出勤出勤出勤 5 5 5 5课程介绍课程介绍为什么要学习程序设计技术?为
2、什么要学习程序设计技术?计算机的应用已经渗透到各行各业,要发挥计算计算机的应用已经渗透到各行各业,要发挥计算计算机的应用已经渗透到各行各业,要发挥计算计算机的应用已经渗透到各行各业,要发挥计算机的强大功能,离不开程序设计技术。机的强大功能,离不开程序设计技术。机的强大功能,离不开程序设计技术。机的强大功能,离不开程序设计技术。怎样才能学好程序设计技术?怎样才能学好程序设计技术?勤动手,多上机。勤动手,多上机。勤动手,多上机。勤动手,多上机。程序设计技术程序设计技术n nC C C C语言数据描述和语言数据描述和语言数据描述和语言数据描述和C C C C程序设计初步程序设计初步程序设计初步程序设
3、计初步 n n结构化程序设计基础和结构化程序设计基础和结构化程序设计基础和结构化程序设计基础和C C C C语言的控制结构语言的控制结构语言的控制结构语言的控制结构 n n数组及其应用数组及其应用数组及其应用数组及其应用 n n函数与函数与函数与函数与C C C C程序结构程序结构程序结构程序结构 n n指针与函数指针与函数指针与函数指针与函数 n n指针与数组指针与数组指针与数组指针与数组 n n字符串及其应用字符串及其应用字符串及其应用字符串及其应用 n n结构体类型和联合体类型结构体类型和联合体类型结构体类型和联合体类型结构体类型和联合体类型 n nC C C C语言的文件处理及其应用语
4、言的文件处理及其应用语言的文件处理及其应用语言的文件处理及其应用 n n位运算与枚举类型位运算与枚举类型位运算与枚举类型位运算与枚举类型第一章第一章第一章第一章 C C C C语言数据描述和语言数据描述和语言数据描述和语言数据描述和C C C C程序设计初步程序设计初步程序设计初步程序设计初步n nC C C C程序的基本结构程序的基本结构程序的基本结构程序的基本结构n nC C C C语言的基本数据类型语言的基本数据类型语言的基本数据类型语言的基本数据类型n n基本运算符和表达式基本运算符和表达式基本运算符和表达式基本运算符和表达式n n不同类型数据混合运算及数据转换不同类型数据混合运算及数
5、据转换不同类型数据混合运算及数据转换不同类型数据混合运算及数据转换n nC C C C程序设计初步程序设计初步程序设计初步程序设计初步1.1.1 C1.1.1 C源程序的组成成分源程序的组成成分#include#include#include#include /*/*/*/*头文件声明头文件声明头文件声明头文件声明*函数头函数头函数头函数头*/*/*/*/void main()void main()void main()void main()/*/*/*/*定义主函数且无返回值定义主函数且无返回值定义主函数且无返回值定义主函数且无返回值*/*/*/*/float ave,x,y,z;/*flo
6、at ave,x,y,z;/*float ave,x,y,z;/*float ave,x,y,z;/*定义变量定义变量定义变量定义变量*/*/*/*/scanf(“%f,%f,%f”,&x,&y,&z);/scanf(“%f,%f,%f”,&x,&y,&z);/scanf(“%f,%f,%f”,&x,&y,&z);/scanf(“%f,%f,%f”,&x,&y,&z);/*调用调用调用调用scanfscanfscanfscanf函数接受数据函数接受数据函数接受数据函数接受数据*/*/*/*/ave=(x+y+z)/3;/*ave=(x+y+z)/3;/*ave=(x+y+z)/3;/*ave=
7、(x+y+z)/3;/*计算平均值计算平均值计算平均值计算平均值*/*/*/*/printf(“%f”,ave);/*printf(“%f”,ave);/*printf(“%f”,ave);/*printf(“%f”,ave);/*调用调用调用调用printfprintfprintfprintf函数输出结果函数输出结果函数输出结果函数输出结果*/*/*/*/说明:说明:说明:说明:1.1.1.1.程程程程序序序序由由由由预预预预处处处处理理理理命命命命令令令令和和和和至至至至少少少少一一一一个个个个函函函函数数数数组组组组成成成成,但但但但必必必必须须须须而而而而且且且且只只只只有有有有一一一
8、一个个个个主主主主函函函函数数数数,函数名必须是函数名必须是函数名必须是函数名必须是mainmainmainmain。2.2.2.2.函函函函数数数数由由由由函函函函数数数数头头头头和和和和函函函函数数数数体体体体组组组组成成成成。函函函函数数数数体体体体总总总总是是是是从从从从花花花花括括括括号号号号“”“”“”“”开开开开始始始始。以以以以反反反反花花花花括号括号括号括号“”“”“”“”结束。结束。结束。结束。3 3 函数体由语句组成。函数体由语句组成。函数体由语句组成。函数体由语句组成。每一个分号每一个分号每一个分号每一个分号“;”就代表一条语句的结就代表一条语句的结就代表一条语句的结就
9、代表一条语句的结束。束。束。束。4 4 以以以以/*/*开头到开头到开头到开头到*/*/结束的部分叫注释行。即注解。不是语句,可结束的部分叫注释行。即注解。不是语句,可结束的部分叫注释行。即注解。不是语句,可结束的部分叫注释行。即注解。不是语句,可以在程序中的任何位置,结尾不要分号以在程序中的任何位置,结尾不要分号以在程序中的任何位置,结尾不要分号以在程序中的任何位置,结尾不要分号“;”,不引起计算,不引起计算,不引起计算,不引起计算机任何动作。机任何动作。机任何动作。机任何动作。5 5 语句由语句由语句由语句由C C语言规定的符号组成,结尾一定是分号语言规定的符号组成,结尾一定是分号语言规定
10、的符号组成,结尾一定是分号语言规定的符号组成,结尾一定是分号“;”不同的语句引起不同的计算机动作,是计算机执行程序的最不同的语句引起不同的计算机动作,是计算机执行程序的最不同的语句引起不同的计算机动作,是计算机执行程序的最不同的语句引起不同的计算机动作,是计算机执行程序的最小单位。小单位。小单位。小单位。6 6 当程序由多个函数组成时,除主函数当程序由多个函数组成时,除主函数当程序由多个函数组成时,除主函数当程序由多个函数组成时,除主函数mainmain外,其他的函数叫外,其他的函数叫外,其他的函数叫外,其他的函数叫子函数。子函数。子函数。子函数。例例例例1-1 C1-1 C1-1 C1-1
11、C语言源程序的组成成分和基本结构语言源程序的组成成分和基本结构语言源程序的组成成分和基本结构语言源程序的组成成分和基本结构 1.1.1 C1.1.1 C源程序的组成成分源程序的组成成分 n n用用用用C C C C言符号书写的程序称为源程序言符号书写的程序称为源程序言符号书写的程序称为源程序言符号书写的程序称为源程序 ,高级语言,高级语言,高级语言,高级语言源程源程源程源程序必须被转为机器语言程序才能被执行。序必须被转为机器语言程序才能被执行。序必须被转为机器语言程序才能被执行。序必须被转为机器语言程序才能被执行。1.1.1 C1.1.1 C源程序的组成成分源程序的组成成分 源文件。目标文件。
12、执行文件。其它目标文件/库。连接程序编译程序图1.1 C程序的处理过程1.1.2 C1.1.2 C语言的基本元素语言的基本元素 1 1 1 1C C C C语言的字符集语言的字符集语言的字符集语言的字符集 小写英文字母小写英文字母小写英文字母小写英文字母a b c za b c za b c za b c z 大写英文字母大写英文字母大写英文字母大写英文字母A B C ZA B C ZA B C ZA B C Z 数字数字数字数字0 1 2 3 90 1 2 3 90 1 2 3 90 1 2 3 9 特殊字符特殊字符特殊字符特殊字符+=-_ _ _ _()*&%$!|.,;:“/?$!|.,
13、;:“/?$!|.,;:“/?$!|.,;:“/?不可印出字符不可印出字符不可印出字符不可印出字符空格空格空格空格、换行、制表符等、换行、制表符等、换行、制表符等、换行、制表符等2 2 2 2标识符标识符标识符标识符 标识符是给程序中处理的数据对象(如变量、常量、标识符是给程序中处理的数据对象(如变量、常量、标识符是给程序中处理的数据对象(如变量、常量、标识符是给程序中处理的数据对象(如变量、常量、函数、数据类型等)取的函数、数据类型等)取的函数、数据类型等)取的函数、数据类型等)取的名字名字名字名字 .1.1.2 C1.1.2 C语言的基本元素语言的基本元素标识标识标识标识符符符符取名规则取
14、名规则取名规则取名规则组成标识符的字符为字母、数字和下划线组成标识符的字符为字母、数字和下划线组成标识符的字符为字母、数字和下划线组成标识符的字符为字母、数字和下划线 标识符中第一个字符必须是字母或下划线标识符中第一个字符必须是字母或下划线标识符中第一个字符必须是字母或下划线标识符中第一个字符必须是字母或下划线 多多多多数数数数C C C C编编编编译译译译系系系系统统统统在在在在构构构构成成成成标标标标识识识识符符符符时时时时都都都都要要要要区区区区分分分分字字字字母母母母的的的的大大大大小小小小写写写写,即即即即abcabcabcabc和和和和AbcAbcAbcAbc是不相同的标识符是不相
15、同的标识符是不相同的标识符是不相同的标识符构成构成构成构成标识标识标识标识符的字符个数(符的字符个数(符的字符个数(符的字符个数(标识标识标识标识符符符符长长长长度)与所使用的度)与所使用的度)与所使用的度)与所使用的环环环环境相关境相关境相关境相关保留字保留字保留字保留字操作系统或编译系统或其他系统已经用了的名字操作系统或编译系统或其他系统已经用了的名字操作系统或编译系统或其他系统已经用了的名字操作系统或编译系统或其他系统已经用了的名字例如例如例如例如 double else enum extern float for double else enum extern float for do
16、uble else enum extern float for double else enum extern float forgotogotogotogotoifififif_Imaginary_Imaginary_Imaginary_Imaginary*inlineinlineinlineinline*intintintintlonglonglonglong register register register registerrestrictrestrictrestrictrestrict*用用用用户标识户标识户标识户标识符符符符 用户自己取的名字用户自己取的名字用户自己取的名字用户自
17、己取的名字1.1.2 C1.1.2 C语言的基本元素语言的基本元素n n程序员(用户)在程序中自定义标识符时,除了避免使用保程序员(用户)在程序中自定义标识符时,除了避免使用保程序员(用户)在程序中自定义标识符时,除了避免使用保程序员(用户)在程序中自定义标识符时,除了避免使用保留字和必须遵守标识符的命名规则外,还需要注意以下两个留字和必须遵守标识符的命名规则外,还需要注意以下两个留字和必须遵守标识符的命名规则外,还需要注意以下两个留字和必须遵守标识符的命名规则外,还需要注意以下两个方面:一是要将标识符取得既有意义,又便于阅读;二是要方面:一是要将标识符取得既有意义,又便于阅读;二是要方面:一
18、是要将标识符取得既有意义,又便于阅读;二是要方面:一是要将标识符取得既有意义,又便于阅读;二是要注意避免含义上或书写时引起混淆。例如注意避免含义上或书写时引起混淆。例如注意避免含义上或书写时引起混淆。例如注意避免含义上或书写时引起混淆。例如下面是一些合法用户自定义标识符的例子:下面是一些合法用户自定义标识符的例子:下面是一些合法用户自定义标识符的例子:下面是一些合法用户自定义标识符的例子:a a a a b1b1b1b1file_namefile_namefile_namefile_name_buf_buf_buf_buf下面是不合法的用户自定义标识符例子及错误原因:下面是不合法的用户自定义标
19、识符例子及错误原因:下面是不合法的用户自定义标识符例子及错误原因:下面是不合法的用户自定义标识符例子及错误原因:123abc123abc123abc123abc/*/*/*/*不能以数字开头不能以数字开头不能以数字开头不能以数字开头*/*/*/*/float float float float/*/*/*/*与系统保留字同名与系统保留字同名与系统保留字同名与系统保留字同名*/*/*/*/up.toup.toup.toup.to/*/*/*/*标识符中出现了非法字符标识符中出现了非法字符标识符中出现了非法字符标识符中出现了非法字符“.”*/“.”*/“.”*/“.”*/zhang sanzhan
20、g sanzhang sanzhang san/*/*/*/*标识符中间出现了非法字符空格标识符中间出现了非法字符空格标识符中间出现了非法字符空格标识符中间出现了非法字符空格*/*/*/*/1.1.2 C1.1.2 C语言的基本元素语言的基本元素 3 3 3 3函数函数函数函数 n n函数是构成程序的基本模块,每个函数具有相对独立的功能函数是构成程序的基本模块,每个函数具有相对独立的功能函数是构成程序的基本模块,每个函数具有相对独立的功能函数是构成程序的基本模块,每个函数具有相对独立的功能n n函数有三种:主函数(即函数有三种:主函数(即函数有三种:主函数(即函数有三种:主函数(即main()
21、main()main()main()函数)、函数)、函数)、函数)、C C C C语言编译系统提供语言编译系统提供语言编译系统提供语言编译系统提供的标准库函数和用户自定义的函数的标准库函数和用户自定义的函数的标准库函数和用户自定义的函数的标准库函数和用户自定义的函数 n n主函数是主函数是主函数是主函数是C C C C程序执行的程序执行的程序执行的程序执行的入口入口入口入口,即程序总是从主函数中的第一条,即程序总是从主函数中的第一条,即程序总是从主函数中的第一条,即程序总是从主函数中的第一条可执行的语句开始执行;一般情况下也是程序执行的可执行的语句开始执行;一般情况下也是程序执行的可执行的语句
22、开始执行;一般情况下也是程序执行的可执行的语句开始执行;一般情况下也是程序执行的出口出口出口出口 n n标准库函数是语言处理系统提供的常用功能的处理程序代码,标准库函数是语言处理系统提供的常用功能的处理程序代码,标准库函数是语言处理系统提供的常用功能的处理程序代码,标准库函数是语言处理系统提供的常用功能的处理程序代码,需要时使用预处理语句将其包含到程序中。需要时使用预处理语句将其包含到程序中。需要时使用预处理语句将其包含到程序中。需要时使用预处理语句将其包含到程序中。n n用户自定义函数即程序员根据所设计应用程序的功能自己编用户自定义函数即程序员根据所设计应用程序的功能自己编用户自定义函数即程
23、序员根据所设计应用程序的功能自己编用户自定义函数即程序员根据所设计应用程序的功能自己编写的函数写的函数写的函数写的函数。1.1.2 C1.1.2 C语言的基本元素语言的基本元素 4 4 4 4C C C C程序书写的基本要点程序书写的基本要点程序书写的基本要点程序书写的基本要点 n n C C C C程程程程序序序序习习习习惯惯惯惯上上上上使使使使用用用用小小小小写写写写英英英英文文文文字字字字母母母母。为为为为了了了了清清清清晰晰晰晰起起起起见见见见,在在在在C C C C程程程程序序序序中中中中往往往往往往往往使使使使用用用用大大大大写写写写英英英英文文文文母母母母来来来来表表表表示示示示
24、宏宏宏宏定定定定义义义义或或或或其其其其它它它它具有特殊意义的标识符。具有特殊意义的标识符。具有特殊意义的标识符。具有特殊意义的标识符。n n C C C C程程程程序序序序中中中中不不不不强强强强调调调调程程程程序序序序行行行行的的的的概概概概念念念念。一一一一行行行行中中中中可可可可以以以以有有有有多多多多条条条条语语语语句句句句,一一一一个个个个语语语语句句句句也也也也可可可可以以以以写写写写在在在在多多多多行行行行上上上上,但但但但语语语语句句句句与与与与语语语语句之间要用分号(;)分隔。句之间要用分号(;)分隔。句之间要用分号(;)分隔。句之间要用分号(;)分隔。n n C C C
25、C程程程程序序序序为为为为了了了了增增增增强强强强程程程程序序序序的的的的可可可可读读读读性性性性,可可可可以以以以使使使使用用用用适适适适量量量量的的的的空格、空行和适当的行间缩进结构。空格、空行和适当的行间缩进结构。空格、空行和适当的行间缩进结构。空格、空行和适当的行间缩进结构。第一章第一章第一章第一章 C C C C语言数据描述和语言数据描述和语言数据描述和语言数据描述和C C C C程序设计初步程序设计初步程序设计初步程序设计初步n nC C C C程序的基本结构程序的基本结构程序的基本结构程序的基本结构n nC C C C语言的基本数据类型语言的基本数据类型语言的基本数据类型语言的基
26、本数据类型n n基本运算符和表达式基本运算符和表达式基本运算符和表达式基本运算符和表达式n n不同类型数据混合运算及数据转换不同类型数据混合运算及数据转换不同类型数据混合运算及数据转换不同类型数据混合运算及数据转换n nC C C C程序设计初步程序设计初步程序设计初步程序设计初步1.2 C1.2 C语言的基本数据类型语言的基本数据类型 数据和数据类型数据和数据类型数据和数据类型数据和数据类型n n在在在在C C C C语语语语言言言言源源源源程程程程序序序序中中中中能能能能直直直直接接接接书书书书写写写写的的的的、需需需需要要要要被被被被处处处处理理理理的的的的符符符符号号号号只有数和字符两
27、种,这种符号称为只有数和字符两种,这种符号称为只有数和字符两种,这种符号称为只有数和字符两种,这种符号称为C C C C语言的语言的语言的语言的数据数据数据数据。n n计计计计算算算算机机机机程程程程序序序序只只只只能能能能处处处处理理理理已已已已经经经经存存存存入入入入计计计计算算算算机机机机系系系系统统统统内内内内存存存存的的的的数数数数据据据据,任任任任何何何何需需需需要要要要用用用用计计计计算算算算机机机机程程程程序序序序处处处处理理理理的的的的信信信信息息息息都都都都需需需需要要要要被被被被转转转转换为内存中的数据才能被处理。换为内存中的数据才能被处理。换为内存中的数据才能被处理。换
28、为内存中的数据才能被处理。n n计计计计算算算算机机机机系系系系统统统统的的的的内内内内存存存存是是是是按按按按字字字字节节节节编编编编址址址址的的的的,在在在在内内内内存存存存里里里里存存存存放放放放一一一一个个个个数数数数据据据据所所所所需需需需要要要要的的的的内内内内存存存存字字字字节节节节数数数数称称称称为为为为一一一一个个个个数数数数据据据据所所所所需需需需要要要要的的的的内内内内存存存存空空空空间间间间,程程程程序序序序中中中中不不不不同同同同的的的的数数数数据据据据在在在在系系系系统统统统内内内内存存存存中中中中所所所所要要要要求求求求的的的的存存存存储储储储空空空空间间间间大大
29、大大小小小小也也也也不不不不一一一一样样样样,因因因因而而而而在在在在程程程程序序序序设设设设计计计计中中中中需需需需要区分所处理数据的要区分所处理数据的要区分所处理数据的要区分所处理数据的数据类型数据类型数据类型数据类型。1.2 C1.2 C语言的基本数据类型语言的基本数据类型n nC C C C语言提供的数据类语言提供的数据类语言提供的数据类语言提供的数据类:数据类型数据类型数据类型数据类型1.2 C1.2 C语言的基本数据类型语言的基本数据类型 常量和变量常量和变量n nC C C C源程序中直接书写的数据称为源程序中直接书写的数据称为源程序中直接书写的数据称为源程序中直接书写的数据称为
30、常量常量常量常量,存放一个数据,存放一个数据,存放一个数据,存放一个数据所需要的内存空间称为所需要的内存空间称为所需要的内存空间称为所需要的内存空间称为变量变量变量变量,内存空间中存放的数据内存空间中存放的数据内存空间中存放的数据内存空间中存放的数据内容称为内容称为内容称为内容称为变量值变量值变量值变量值。n n常量数据在源程序中给定后,在程序的整个执行过常量数据在源程序中给定后,在程序的整个执行过常量数据在源程序中给定后,在程序的整个执行过常量数据在源程序中给定后,在程序的整个执行过程中程中程中程中保持不变保持不变保持不变保持不变。而变量在程序的执行过程中是一个。而变量在程序的执行过程中是一
31、个。而变量在程序的执行过程中是一个。而变量在程序的执行过程中是一个其值可以被程序修改的量。其值可以被程序修改的量。其值可以被程序修改的量。其值可以被程序修改的量。是一个是一个是一个是一个变变变变化的量化的量化的量化的量。1.2 1.2.1 C.1 C语语言的整型数据言的整型数据类类型型 整型量整型量整型量整型量1 1 1 1整型常量整型常量整型常量整型常量 C C C C语言源程序能直接书写的整型常量可以有三种形式:语言源程序能直接书写的整型常量可以有三种形式:语言源程序能直接书写的整型常量可以有三种形式:语言源程序能直接书写的整型常量可以有三种形式:十进制整数。如十进制整数。如十进制整数。如
32、十进制整数。如888888888888、-123-123-123-123、0 0 0 0等。等。等。等。八八八八进进进进制制制制整整整整数数数数。以以以以0 0 0 0开开开开头头头头的的的的整整整整数数数数是是是是八八八八进进进进制制制制整整整整型型型型常常常常量量量量,如如如如0777077707770777、-011011011011等。等。等。等。十六进制整数。以十六进制整数。以十六进制整数。以十六进制整数。以0 x0 x0 x0 x开头的整数是十六进制整型常量,如开头的整数是十六进制整型常量,如开头的整数是十六进制整型常量,如开头的整数是十六进制整型常量,如0 x1230 x1230
33、 x1230 x123、0 xff0 xff0 xff0 xff等。等。等。等。在字长为在字长为在字长为在字长为16161616位计算机系统中,整型数据表示的范围为位计算机系统中,整型数据表示的范围为位计算机系统中,整型数据表示的范围为位计算机系统中,整型数据表示的范围为-32768 32768 32768 32768 32767 32767 32767 32767(-2-2-2-2151515152 2 2 215151515-1-1-1-1);在字长为);在字长为);在字长为);在字长为32323232位的计算机系位的计算机系位的计算机系位的计算机系统中,则表示的数据范围为统中,则表示的数
34、据范围为统中,则表示的数据范围为统中,则表示的数据范围为-2-2-2-231 31 31 31 2 2 2 231313131-1-1-1-1。1.2 1.2.1 C.1 C语语言的整型数据言的整型数据类类型型 2 2 2 2整型变量整型变量整型变量整型变量 存放整型数据的内存空间称为整型变量,存放整型数据的内存空间称为整型变量,存放整型数据的内存空间称为整型变量,存放整型数据的内存空间称为整型变量,C C C C语语语语言提供了基言提供了基言提供了基言提供了基本整型、短整型、本整型、短整型、本整型、短整型、本整型、短整型、长长长长整型和无符号整型四种大小不同的整型和无符号整型四种大小不同的整
35、型和无符号整型四种大小不同的整型和无符号整型四种大小不同的单单单单位位位位空空空空间间间间来存放整形数据。来存放整形数据。来存放整形数据。来存放整形数据。类型名类型名类型名类型名 意意意意 义义义义 字节数字节数字节数字节数 精度范围精度范围精度范围精度范围short short short short 短整型短整型短整型短整型 2 -32767 2 -32767 2 -32767 2 -3276732768327683276832768int int int int 基本整型基本整型基本整型基本整型 4 4 4 4 -2147483647214748364721474836472147483
36、6472147483648214748364821474836482147483648long long long long 长整型长整型长整型长整型 4 -4 -4 -4 -2147483647L2147483647L2147483647L2147483647L2147483648L2147483648L2147483648L2147483648Lunsigned short unsigned short unsigned short unsigned short 无符号短整型无符号短整型无符号短整型无符号短整型 2 0 2 0 2 0 2 0 65535655356553565535uns
37、igned int unsigned int unsigned int unsigned int 无符号基本整型无符号基本整型无符号基本整型无符号基本整型 4 0 4 0 4 0 4 0 4294967295U4294967295U4294967295U4294967295UUnsigned long Unsigned long Unsigned long Unsigned long 无符号长整型无符号长整型无符号长整型无符号长整型 4 0 4 0 4 0 4 0 4294967295UL4294967295UL4294967295UL4294967295UL1.2 1.2.1 C.1 C语语
38、言的整型数据言的整型数据类类型型 3.3.3.3.变量定义变量定义变量定义变量定义n n整型变量定义的一般形式为:整型变量定义的一般形式为:整型变量定义的一般形式为:整型变量定义的一般形式为:类型名类型名类型名类型名 ;该该该该语语语语句句句句的的的的功功功功能能能能是是是是:指指指指定定定定具具具具有有有有类类类类型型型型名名名名定定定定义义义义的的的的多多多多个个个个内内内内存存存存空空空空间间间间,取取取取名名名名为为为为变变变变量量量量列列列列表表表表中中中中的的的的标标标标识识识识符符符符(变变变变量量量量名名名名),数数数数量与量与量与量与变变变变量列表中量列表中量列表中量列表中变
39、变变变量名的个数一致。量名的个数一致。量名的个数一致。量名的个数一致。n n例如:例如:例如:例如:int x1,x2;int x1,x2;int x1,x2;int x1,x2;(定义变量(定义变量(定义变量(定义变量x1x1x1x1,x2x2x2x2为整型变量)为整型变量)为整型变量)为整型变量)longlonglonglongx,y;x,y;x,y;x,y;(定义变量(定义变量(定义变量(定义变量x x x x,y y y y为长整型变量)为长整型变量)为长整型变量)为长整型变量)unsigned c,d;unsigned c,d;unsigned c,d;unsigned c,d;(定
40、义变量(定义变量(定义变量(定义变量c c c c,d d d d为无符号整型变量)为无符号整型变量)为无符号整型变量)为无符号整型变量)例例例例1-2 1-2 整型变量的定义和输出示例。整型变量的定义和输出示例。整型变量的定义和输出示例。整型变量的定义和输出示例。1.2.2 C1.2.2 C语言的实型数据类型语言的实型数据类型 实型量实型量1 1 1 1实型常量实型常量实型常量实型常量 在在在在C C C C语语语语言言言言源源源源程程程程序序序序中中中中能能能能直直直直接接接接书书书书写写写写的的的的实实实实型型型型数数数数,称称称称为为为为实实实实型型型型常常常常量量量量。实实实实型型型
41、型数数数数在在在在C C C C语语语语言言言言中中中中又又又又称称称称为为为为浮浮浮浮点点点点数数数数,实实实实型型型型常常常常数数数数有有有有两两两两种表示形式:种表示形式:种表示形式:种表示形式:实数形式:实数形式由数字和小数点组成。实数形式:实数形式由数字和小数点组成。实数形式:实数形式由数字和小数点组成。实数形式:实数形式由数字和小数点组成。如:,等。如:,等。如:,等。如:,等。指指指指数数数数形形形形式式式式:数数数数据据据据由由由由数数数数字字字字0 0 0 09 9 9 9、小小小小数数数数点点点点和和和和表表表表示示示示阶阶阶阶码码码码的标志的标志的标志的标志“e”“e”“
42、e”“e”或或或或“E”“E”“E”“E”组成,其组成形式一般为:组成,其组成形式一般为:组成,其组成形式一般为:组成,其组成形式一般为:n n整数部分整数部分整数部分整数部分.小数部分小数部分小数部分小数部分E E E E指数部分指数部分指数部分指数部分 如如如如123e5123e5123e5123e5表示表示表示表示123101231012310123105 5 5 5,123e-5123e-5123e-5123e-5表示表示表示表示12310123101231012310-5-5-5-5。1.2.2 C1.2.2 C语言的实型数据类型语言的实型数据类型n n在使用实型数的指数表示形式时应
43、该注意下面两点在使用实型数的指数表示形式时应该注意下面两点在使用实型数的指数表示形式时应该注意下面两点在使用实型数的指数表示形式时应该注意下面两点:指指指指数数数数部部部部分分分分只只只只能能能能是是是是整整整整数数数数而而而而不不不不能能能能用用用用实实实实数数数数表表表表示示示示,如如如如是是是是错错错错误误误误的表示方法。的表示方法。的表示方法。的表示方法。字字字字母母母母“e”“e”“e”“e”或或或或“E”“E”“E”“E”之之之之前前前前的的的的尾尾尾尾数数数数部部部部分分分分不不不不能能能能省省省省略略略略,如如如如10101010-8-8-8-8不能只写为不能只写为不能只写为不
44、能只写为E-8E-8E-8E-8,而应该写成为,而应该写成为,而应该写成为,而应该写成为1E-81E-81E-81E-8(或者(或者(或者(或者1e-81e-81e-81e-8).1.2.2 C1.2.2 C语言的实型数据类型语言的实型数据类型2 2 2 2实实实实型型型型变变变变量量量量n nC C C C源源源源程程程程序序序序文文文文件件件件中中中中存存存存放放放放实实实实型型型型数数数数据据据据的的的的数数数数据据据据对对对对象象象象称称称称为为为为实实实实型型型型变变变变量。量。量。量。n nC C C C语语语语言言言言中中中中的的的的实实实实型型型型变变变变量量量量按按按按其其其
45、其表表表表示示示示的的的的数数数数据据据据范范范范围围围围不不不不同同同同和和和和精精精精度度度度不不不不同同同同分分分分为为为为单单单单精精精精度度度度型型型型和和和和双双双双精精精精度度度度型型型型,其其其其类类类类型型型型名名名名分分分分别别别别为为为为floatfloatfloatfloat和和和和doubledoubledoubledouble。1.2.2 C1.2.2 C语言的实型数据类型语言的实型数据类型3.3.3.3.变量定义变量定义变量定义变量定义定义实型变量的一般形式为:定义实型变量的一般形式为:定义实型变量的一般形式为:定义实型变量的一般形式为:类型名类型名类型名类型名
46、;功能意义与整形变量定义相同功能意义与整形变量定义相同功能意义与整形变量定义相同功能意义与整形变量定义相同例如:例如:例如:例如:float x,y;float x,y;float x,y;float x,y;(定义变量(定义变量(定义变量(定义变量x x x x,y y y y为单精度实型变量)为单精度实型变量)为单精度实型变量)为单精度实型变量)double z;double z;double z;double z;(定义变量(定义变量(定义变量(定义变量z z z z为双精度实型变量)为双精度实型变量)为双精度实型变量)为双精度实型变量)例例例例1-3 1-3 1-3 1-3 实型变量的
47、定义和输出示例。实型变量的定义和输出示例。实型变量的定义和输出示例。实型变量的定义和输出示例。类型名类型名类型名类型名 意意意意 义义义义 字节数字节数字节数字节数 精度范围精度范围精度范围精度范围float float float float 单精度实型单精度实型单精度实型单精度实型 4 4 4 4 3.402823e+038 3.402823e+038 3.402823e+038 3.402823e+038 double double double double 双精度实型双精度实型双精度实型双精度实型 8 8 8 81.797693e+3081.797693e+3081.797693e+
48、3081.797693e+3081.2.3 C1.2.3 C语言的字符型数据类型语言的字符型数据类型 字符量字符量 在在在在C C C C语言源程序中直接书写的、需要被处理的字符就语言源程序中直接书写的、需要被处理的字符就语言源程序中直接书写的、需要被处理的字符就语言源程序中直接书写的、需要被处理的字符就是字符常量。是字符常量。是字符常量。是字符常量。同同同同样样样样,用于存放,用于存放,用于存放,用于存放这这这这个字符的内存空个字符的内存空个字符的内存空个字符的内存空间间间间就是字符就是字符就是字符就是字符变变变变量量量量。1.1.1.1.字符常量字符常量字符常量字符常量 普普普普通通通通字
49、字字字符符符符:普普普普通通通通字字字字符符符符是是是是由由由由单单单单引引引引号号号号括括括括起起起起来来来来的的的的一一一一个个个个可可可可打印字符,如打印字符,如打印字符,如打印字符,如aaaa、?、AAAA等。等。等。等。转义转义转义转义字符字符字符字符:转义转义转义转义字符是由反斜杠字符是由反斜杠字符是由反斜杠字符是由反斜杠开开开开头头头头的字符序的字符序的字符序的字符序列,此列,此列,此列,此时时时时反斜杠字符后面的字符或字符序列不表示反斜杠字符后面的字符或字符序列不表示反斜杠字符后面的字符或字符序列不表示反斜杠字符后面的字符或字符序列不表示自己本身的含自己本身的含自己本身的含自己
50、本身的含义义义义而而而而转变为转变为转变为转变为表示另外的特定意表示另外的特定意表示另外的特定意表示另外的特定意义义义义。1.2.3 C1.2.3 C语言的字符型数据类型语言的字符型数据类型2 2 2 2字符变量字符变量字符变量字符变量 字字字字符符符符类类类类型型型型变变变变量量量量用用用用以以以以存存存存储储储储和和和和表表表表示示示示一一一一个个个个字字字字符符符符,占占占占用用用用一一一一个个个个字节。字符型变量的定义形式如下:字节。字符型变量的定义形式如下:字节。字符型变量的定义形式如下:字节。字符型变量的定义形式如下:char char char char;例如:例如:例如:例如: