《c++基本数据类型与输入输出.ppt》由会员分享,可在线阅读,更多相关《c++基本数据类型与输入输出.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章 基本数据类型2.1 字符集与保留字2.2 基本数据类型2.3 变量定义2.4 字面量2.5 常量2.6 I/O流控制2.7 printf和scanf2.1 字符集与保留字字符集词与词法规则书写格式标准保留字一、C+的字符集 C+C+中中含含有有以以下下字字符符:数数字字,小小写写字字母母,大大写写字母,运算符,特殊字符,不可印出字符字母,运算符,特殊字符,不可印出字符 。二、词与词法规则(1 1)标识符。)标识符。(2 2)关键字。)关键字。(3 3)运算符和分隔符。)运算符和分隔符。(4 4)字符串。)字符串。(5 5)常量。)常量。(6 6)注释。)注释。三、书写格式(1 1)一般
2、情况下每个语句占用一行。)一般情况下每个语句占用一行。(2 2)不同结构层次的语句)不同结构层次的语句。(3 3)表示结构层次的大括弧)表示结构层次的大括弧。(4 4)适当加些空格和空行。)适当加些空格和空行。四、C+的标准保留字2.2 基本数据类型男人男人/女人女人/儿童儿童程序包含数据和操作,数据有不同的形式,程序包含数据和操作,数据有不同的形式,如张三、如张三、188cm188cm、是的男的、是的男的、80.3kg80.3kg等。等。表表2-22-2(P14P14)2.2 基本数据类型2.2 基本数据类型基本数据类型有基本数据类型有4 4种:整型(种:整型(intint)、)、浮点型(浮
3、点型(floatfloat)、)、字符型字符型(charchar)、)、逻辑型(逻辑型(boolbool)。)。空类型空类型void:void:用于显示说明一个函数不返回任何值。用于显示说明一个函数不返回任何值。构造类型构造类型,又称为组合类型,它是由基本类型按照某种规则组又称为组合类型,它是由基本类型按照某种规则组合而成的。合而成的。指针类型指针类型:变量用于存储另一变量的地址,而不能用来存放基变量用于存储另一变量的地址,而不能用来存放基本类型的数据。本类型的数据。类类型类类型:是体现面向对象程序设计的最基本特征,也是体现是体现面向对象程序设计的最基本特征,也是体现C+C+与与C C最大的不
4、同之处。最大的不同之处。2.3 变量定义变量命名变量定义方式变量赋值与初始化typedef一、变量命名变量的命名要遵守以下规则:变量的命名要遵守以下规则:(1 1)不能是)不能是C+C+保留字。保留字。(2 2)第一个字符必须是字母或下划线,中间不能有空格。)第一个字符必须是字母或下划线,中间不能有空格。(3 3)变量名除了使用)变量名除了使用2626个英文大小写字母和数字外,只个英文大小写字母和数字外,只能使用下划线。能使用下划线。(4 4)一般不要超过)一般不要超过3131个字符。个字符。(5 5)变量名不要与)变量名不要与C+C+中的库函数名、类名和对象名相中的库函数名、类名和对象名相同
5、。同。大小写敏感。大小写敏感。*人的取名人的取名*一、变量命名判断变量名的合法性:判断变量名的合法性:f4f4、f_4f_4、f-4f-4、4-f4-f、sumsum、if if、fi fi、x x、5 5变量命名尽量做到见名知义。变量命名尽量做到见名知义。变量的书写格式变量的书写格式(1 1)my_carmy_car(2 2)myCarmyCar(3 3)iMyCariMyCar/匈牙利标记法匈牙利标记法二、变量定义方式变量:其值发生改变的量。变量:其值发生改变的量。关键因素:变量名、数据类型。关键因素:变量名、数据类型。定义形式:定义形式:=,;,;如:如:intint width;wid
6、th;可以一行定义多个类型的变量,如:可以一行定义多个类型的变量,如:intint width,heightwidth,height;思考,不同类型的变量能放在同一语句么?思考,不同类型的变量能放在同一语句么?三、变量赋值与初始化“=”=”赋值号,如:赋值号,如:intint width width;width=500;/width=500;/赋值班赋值班也可以定义变量时赋值,称为初始化,如:也可以定义变量时赋值,称为初始化,如:intint width width=500;=500;四、typedef(选学)TypedefTypedef用来为已有数据类型定义别名。用来为已有数据类型定义别名。
7、如如:typedeftypedef double price;double price;price price singlePricesinglePrice=1.8;=1.8;2.4 字面量整型数:整型数:123123、01230123、0 x1230 x123、123L123L实型数:实型数:0.1230.123、123e5123e5、0.123f0.123f,默认为,默认为doubledouble字符:字符:aa,特殊字符,以,特殊字符,以”开头,表开头,表2-32-3,P P,注意,注意在内存中字符以在内存中字符以ASCIIASCII码存储码存储字符串:字符串:”How do you d
8、o?”How do you do?”,注意其后有字符串结束,注意其后有字符串结束标志标志”0”0”枚举符:枚举符:enumenum COLOR(RED,BLUE,GREEN,WHITE,BLANK);COLOR(RED,BLUE,GREEN,WHITE,BLANK);逻辑常量:用逻辑常量:用0 0表示逻辑假,用表示逻辑假,用1 1表示逻辑真(表示逻辑真(VCVC中)中)表1-2 常用的特殊字符 2.5 常量常量是常数或代表固定不变值的名字。常量是常数或代表固定不变值的名字。常量名不能放在赋值号的左边。(为什么?)常量名不能放在赋值号的左边。(为什么?)常量的定义格式:常量的定义格式:const
9、 float pi=3.14;const float pi=3.14;2.6 I/0流控制I/0书写格式使用控制符控制浮点数值显示设置值的输出宽度输出八进制和十六进制数设计填充字符左右对齐字符强制显示小数点和符号一、I/O书写格式输出字符:输出字符:coutcout “this is my book.n”;“this is my book.n”;coutcout“this”“is”“my book”“this”“is”“my book”myAgemyAge;二、使用控制符头文件,头文件,#include#include 表表2-4,P23;2-4,P23;三、控制浮点数值显示Setprecis
10、ion(nSetprecision(n)可控制输出流显示浮点数的数字个数,默可控制输出流显示浮点数的数字个数,默认为认为6 6位。位。#include#include#include#include /要用到格式控制符要用到格式控制符void main()void main()double amount=22.0/7;double amount=22.0/7;coutcout amount amount endlendl;coutcout setprecision(0)amount setprecision(0)amount endlendl setprecision(1)amount set
11、precision(1)amount endlendl setprecision(2)amount setprecision(2)amount endlendl setprecision(3)amount setprecision(3)amount endlendl setprecision(4)amount setprecision(4)amount endlendl;coutcout setiosflags(ios:fixedsetiosflags(ios:fixed););coutcout setprecision(8)amount setprecision(8)amount endle
12、ndl;coutcout setiosflags(ios:scientificsetiosflags(ios:scientific)amount)amount endlendl;coutcout setprecision(6);/setprecision(6);/重新设置成原默认设置重新设置成原默认设置 四、变量值的输出宽度Setw(nSetw(n)指定输入宽度,如果指定宽度小于数的位数则输指定输入宽度,如果指定宽度小于数的位数则输出所有位,如果指定宽度大于数的位数,则在数的前面补出所有位,如果指定宽度大于数的位数,则在数的前面补空格。空格。Setw(nSetw(n)只影响其后的一个数。只影响
13、其后的一个数。五、输出八进和十六进制数HexHex:十六进制数:十六进制数OctOct:八进制数:八进制数DecDec:十进制数:十进制数#include#include void main()void main()int number=1001;int number=1001;cout Decimal:dec number endl cout Decimal:dec number endl Hexadecimal:hex number endl Hexadecimal:hex number endl Octal:oct number endl;Octal:oct number endl;六、
14、设置填充字符Setfill(cSetfill(c)用来设置用来设置setw(nsetw(n)的填充字符,的填充字符,setw(nsetw(n)的默认填的默认填充字符为空格充字符为空格#include#include#include#include void main()void main()cout setfill(*)cout setfill(*)setw(2)21 endl setw(2)21 endl setw(3)21 endl setw(3)21 endl setw(4)21 endl;setw(4)21 endl;cout setfill();/cout setfill();/恢复
15、默认设置恢复默认设置 七、左右对齐输出默认情况下:默认情况下:字符左对齐,字符左对齐,数字右对齐。数字右对齐。Setiosflags(ios:leftSetiosflags(ios:left):设置左对齐;设置左对齐;Setiosflags(ios:rightSetiosflags(ios:right):设置右对齐;设置右对齐;#include#include void main()cout setiosflags(ios:right)setw(5)1 setw(5)2 setw(5)3 endl;cout setiosflags(ios:left)setw(5)1 setw(5)2 setw
16、(5)3 endl;八、强制显示小数点和符号Setiosflags(ios:showpointSetiosflags(ios:showpoint):强制显示小数点;:强制显示小数点;Setiosflags(ios:showposSetiosflags(ios:showpos):强制显示符号(正号):强制显示符号(正号);#include#include void main()cout 10.0/5 endl;cout setiosflags(ios:showpoint)10.0/5 endl;cout 10 -20 endl;cout setiosflags(ios:showpos)10 -2
17、0 Hello-helhel%f(%f(单精度单精度),%7.2f%7.2f、%lf%lf。%e(%e(指数形式指数形式)一、scanf函数一般格式一般格式:printfprintf(格式控制字符串格式控制字符串,地址地址1,1,地址地址2,);2,);取地值符取地值符&分隔符,格式控制字符串内控制符间的符号分隔符,格式控制字符串内控制符间的符号%d(%d(十进制整十进制整)、%ld%ld(l l表示长整)、表示长整)、%hdhd(短整短整)%o(%o(八进制八进制)、%x(%x(十六进制十六进制),也可加,也可加l l%c(%c(字符字符)%s(%s(字符串字符串)%f(%f(单精度单精度),%lf),%lf。%e(%e(指数形式指数形式)Scanf(“%dScanf(“%d%d”,&a,&bd”,&a,&b););Scanf(“%d;%d”,&a,&bScanf(“%d;%d”,&a,&b););Scanf(“%d,%d”,&a,&bScanf(“%d,%d”,&a,&b););收获盘点基本数据类型及其特点变量/字面量/常量输入与输出课外实践P32 练习作业:2.3、2.6上机:2.6、2.7
限制150内