资源描述:
《C++大学基础教程第二章ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C++程序设计第2章数据类型、运算符和表达式1本章介绍C++的基础,包括:数据类型运算符表达式均是程序设计的基本知识为什么讨论这些知识?通常程序要对数据进行操作处理:处理的对象是数据通过运算符和表达式进行操作2程序中最基本的元素是数据,数据具有数据类型,根据数据类型可以为数据(变量或常量)分配内存空间,将变量、常量和运算符结合在一起组成表达式,进行复杂的运算和处理。3第2章数据类型、运算符和表达式2.1词法记号和标识符2.2基本数据类型2.3变量和常量2.4运算符和表达式2.5数据类型转换2.6基本输入输出2.7C++语句42.
2、1词法记号和标识符52.1词法记号和标识符1、C++字符集英文字母:A~Z,a~z数字字符:0~9特殊字符:+-*/%^=<>!#&
3、_~‘“;.,()[]{}空格62、标识符由字母、下划线和数字组成的字符序列用于程序中的变量、符号常量、数组、函数、数据类型等操作对象的名字1.系统定义标识符具有固定名字和特定含义的标识符分为关键字和预定义标识符2.用户定义标识符用于对用户使用的变量、数组、函数等操作对象进行命名7关键字1、什么是关键字?关键字是由C++规定的具有特定意义的标识符,通常也称为保留字。不能作为预定义标识符和用户定义
4、标识符使用。关键字必须为小写字母。2、如何识别关键字?使用VC++6.0的编辑环境时,缺省是蓝色的字符即为关键字。2.1词法记号和标识符81、系统标准库函数printf、putchar、getchar、strcpy、strcmp、sqrt等2、编译预备处理命令include、define等预定义标识符不属于关键字,允许用户对它们重新定义。预定义标识符2.1词法记号和标识符92.1词法记号和标识符3、用户自定义标识符标识符是程序员声明的单词,它命名程序正文中的一些实体,如函数名、变量名、类名、对象名等。C++标识符的构成规则如下:
5、1、不能是C++的关键字;2、标识符的字符序列仅由字母、下划线和数字构成,不包含空格和“+、-、;”等特殊字符;3、第一个字符必须是大写、小写字母或下划线;4、标识符对大小写字母敏感,即:大写字母或小写字母代表不同的名称。例如MAX和max是不同的标识符。5、为方便输入,长度一般不超过31个字符。102.1词法记号和标识符例如:合法的标识符:apple、_Student、_123、No1、max_num不合法的标识符:51job、maxnum、-abc注意:C++的表示符是大小写敏感的,即abc≠ABC。11正确区分标识符正确区
6、分哪些是合法标识符,哪些是不合法标识符。其中合法标识符中哪些是关键字,哪些是预定义标识符,哪些是用户定义标识符。Abcdefine2xdoublestudentm+ya#b-4_1Whileintletx%ynamedoπwtmCtrlswicthincludeAbcdefine2xdoublestudentm+ya#b-4_1Whileintletx%ynamedoπwtmCtrlswicthinclude12判断下列字符组合是否为合法的标识符:number,count,a1,A7.5,$100,ax_12,_abc,3c
7、练习答案:合法的为:number,count,a1,ax_12,_abc不合法的为:3c$100A7.5132.1词法记号和标识符4、分隔符分隔符用于分隔程序中的正文,在C++中使用下列字符作为分隔符:(){},:;这些分隔符不表示实际的操作,仅用于构造程序。比如“;”,用来作为一句完整语句的结束。142.1词法记号和标识符5、空白在C++语句中经常出现空白(制表符、空格、空行)等,通常都忽略不计。152.2、基本数据类型16公孙龙的“白马非马”故事是春秋时的公孙龙先生说的。城门上告示:“马匹不得入城”。公孙龙同志骑白马而来,遭
8、拒入。公孙龙一脸正色:“告示上写的是‘马’,而我骑的是‘白马’,难道‘马’等于‘白马’吗?”守门士兵觉得白马还真不是马,于是放行。依公孙龙先生的理论认为:如果白马是马,黑马也是马,那么岂不白马等于黑马,所以,不能说白马是马。“白马非马”是中国哲学史上的一桩公案。不过,若是我们从程序的角度上说,可以认为:马在这里表示一种类型,而白马,黑马它们的类型都是马。白马,黑马具有相同的“数据类型”,但它们都相对独立的个体。从这点说,别说有白黑之分,就算同样是白马,这一匹和哪一匹白马,也是相对独立的个体。在程序中,“类型”和“变量”的关系正是
9、“马”和“白马”的关系。如果C或C++有这种数据类型:Horse,那么,定义一匹“白马”的变量应该这样:HorseAWhiteHorse;17例如:【例2-1】计算圆的面积,半径为3cm。程序如下:#includeusingnamespace