青少年信息奥赛C++语言基础.ppt_第1页
青少年信息奥赛C++语言基础.ppt_第2页
青少年信息奥赛C++语言基础.ppt_第3页
青少年信息奥赛C++语言基础.ppt_第4页
青少年信息奥赛C++语言基础.ppt_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C+语言基础 C+程序实例 1 #include using namespace std; int main() cout /“;.,() C+词法记号(类似单词) 关键字C+预定义的单词 标识符程序员声明的单词,它命名程序正文中 的一些实体 文字在程序中直接使用符号表示的数据 操作符用于实现各种运算的符号 分隔符 如 ; 用于分隔各个词法记号或程序正文 空白符空格、制表符(TAB键产生的字符)、 换行符(Enter键所产生的字符)和注释的总 称 C+字符集类似英语的字母或者汉语的笔画 。 C+的词法符号类似英语的单词或汉语的字 。 C+程序类似英语的十四行诗或者汉语的诗 词歌赋。 C+字符集、词法符号、程序关系 C+词法记号关键字 关键字又称保留字,是C+预定义的单词 关键字是C+中具有固定意义的一批英文单 词或其缩写,有专门的用途,用在固定的 位置,不能移作它用。C+中共有74个关 键字/保留字,每一个都有自己的故事。 C+常用关键字及分类 数据类型说明 符与修饰符 bool char wchar_t class const double enum float int long short signed struct union unsigned void volatile 存储类型说明 符 auto extern inline register static 访问说明符friend private protected public 其它说明符asm operator template this typedef virtual 语句与标号 break case catch continue default do else for goto if return switch throw try while 运算符及逻辑 值 delete false new sizeof true C+词法记号标识符 构成规则: 以大写字母、小写字母或下划线(_)开始,由 大写字母、小写字母、下划线(_)或数字09组成 。 注意事项注意事项 标识符区分大小写标识符区分大小写 标识符长度任意(取决于操作系统)标识符长度任意(取决于操作系统) 提倡使用提倡使用“ “见名知义见名知义” ”的标识符的标识符 避免使用系统已定义的标识符(系统保留字)避免使用系统已定义的标识符(系统保留字) 例: 判断下面哪些是合法的标识符 : MyFile 94Salary Salary94 Salary 94 amount $amount void f3.5 Num_of_Student C+程序实例 2 #include using namespace std; int main() const int PRICE=30; int num,total; float v ,r,h; num=10; total=num*PRICE; couta 变量名一般要以小写字母开头,且见名知义。 算术运算符和算术表达式 算术运算符就是对数据进行算术运算,如:加 、减、乘、除等,是在程序中使用最多的一种 运算符,C+的算术运算符如表所示。 运算符和表达式 运算符功能数据类型例子 -负号数值x=-y; +加数值z=x+y; -减数值z=x-y; *乘数值z=x*y /除数值z=x/y; %求余整数z=x%y +自加数值z+或+z C+的算术运算符 -自减数值z-或-z (1+x)/(3*x) (2*x-3)*x+2)*x)-5 3.14*sqrt(r) b*b-4.0*a*c 算术运算符注意事项 算术运算符 / 有整除和一般除法两种功能。如果两个操作 数都是整数,/ 的功能就是整除,否则就是一般除法。例 如: 3 / 2 =1 3 / 2.0 =1.5 3.0 / 2 =1.5 a+与+a(a-与-a) a+的功能是:a的值增1,a+的值是a增加前的值; +a的功能是: a的值增1,+a的值是a增加后的值; +a可以用作左值,即能放在赋值号的左边。 赋值运算符和赋值表达式 赋值运算符的功能将某个数据的值赋给某个 变量。 格式:变量名 赋值运算符 表达式 说明: (1)被赋值的目标,即赋值运算符左边的量必 须是变量,而不能是常量或表达式。 (2)C+中的赋值运算符表 (3)要注意区分赋值运算符“=”与数学上的“等 号”间的区别 赋值运算符例子等价形式 =x=x+yx=x+y +=x+=y+zx=x+(y+z) -=x-=y+zx=x-(y+z) *=x*=y+zx=x*(y+z) /=x/=y+zx=x/(y+z) %=x%=y+zx=x%(y+z) 关系运算符和关系表达式 关系运算符就是对两个量之间进行比较的运算 符。 关系运算符含义例子 10 大于x+yz =大于或等于x-y=a*b+2 = =等于x+y=a+b !=不等于x-y!=0 由关系运算符将两个表达式连接形成的 运算式子是关系表达式,一个关系表达式 的值是一个逻辑值,当为真时,值为1,为 假时,值为0。 如:假设a=1,b=20,c=3,则 a10) 则表达式i 则表达式i+|i+|i+的值为1(真 ),运算结束后,变量i的值为2,而不是4。 int n=3,m=6; if (n4) long a,b; (x?a:b)=1; (x?x:a)=2; /error:x和a不同类型 (x= =2?1:a)=3; /error:1非左值 位运算符 1位运算符及其运算规则 所谓位运算符是指能进行二进制位运算的运算 符。C+提供的位运算符: 运算符含义例子 则表达式i=1,i+=2?i+1:i+4的值为 6。 该运算符的功能是将某一数据从一种数据类型向 另一种数据类型进行转换。其使用的一般形式: 1.数据类型标识符 (表达式) 2.(数据类型标识符)表达式 如:int i=2; float a,b; a=float(i); /将变量i的类型强制转换为浮点型, 并将其值赋给变量a b=(float)i; /将变量i的类型强制转换为浮点型, 并将其值赋给变量b 强制类型转换运算符 每个运算符都有自己优先级和结合性。当一个表 达式中包含多个运算符时,要确定运算的结果 ,必须首先确定运算的先后顺序,即运算符的 优先级和结合性。C+中运算符的优先级和结 合性如表2.11所示。 运算符的优先级与结合性 优先级运算符结合性 1 () : - . .* -* 自左至右 2 ! + - + - * int main() int a=21,b=999; cout using namespace std; int main() int a=21,b=999; cout.fill(#);/设置域内填充字符为#字符 cout using namespace std; const double pi=3.14159; int main() double r=6.779,c,s; c=2.0*pi*r; /计算圆的周长 s=pi*r*r; /计算圆的面积 /以指数格式输出圆的面积和周长 cout变量名1变量名2变量名n; 说明: (1)cin是系统预定义的一个标准输入设备 (2)cin的功能是:当程序在运行过程中执行到cin 时,程序会暂停执行并等待用户从键盘输入相应 数目的数据,用户输入完数据并回车后,cin从 输入流中取得相应的数据并传送给其后的变量中 。 数据的输入cin (3)“”操作符后除了变量名外不得有其他数 字、字符串或字符,否则系统会报错。 如:cin“x=“x; /错误,因含有字符串“x=“ cinxx; /错误,因含有字符x= cinx10; /错误,因含有常量10 (4)cin后面所跟的变量可为任何数据类型,若变 量为整型数据类型,则在程序运行过程中从键盘输 入数据时,可分别按十进制、八进制或十六进制输 入该整数。 当按十进制格式输入整数时,可直接输入数据本身 即可; 若以十六进制输入整数时,数据前要冠以0x或0X; 若按八进制格式输入整数时,数据前要冠以数字0; 若cin后面的变量为浮点类型(单精度或双精度)时 ,可分别按小数或指数的格式输入该浮点数。 若cin后面的变量为字符类型时,可直接输入字符数 据而不能在字符的两端加单引号。 注意: (5)当程序中用cin输入数据时,最好在该语句之 前用cout输出一个需要输入数据的提示信息,以正 确引导和提示用户输入正确的数据。如: coutx; (6)当一个cin后面同时跟有多个变量时,则用户 在输入数据时的个数应与变量的个数相同,各数据 之前用一个或多个空格隔开,输入完后按回车键; 或者,每输入一个数据按回车键也可。 如对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论