首页 > 编程 > C++ > 正文

C++教程:C++算术表达式

2020-05-23 14:28:40
字体:
来源:转载
供稿:网友
我们已经了解了程序设计中,最常用的两种存储方式——常量和变量。本节我们要学习如何在程序中运用常量和变量。我们先来看一段程序:(程序3.3)
#include "iostream.h"
int main()
{
   float r;//创建一个浮点型变量存放半径
   float l;//创建一个浮点型变量存放运算得出的周长结果
   const float pi=3.1415926F;//定义常量pi等于3.1415926,最后的F表示这个数是浮点型
   cout <<"请输入半径:";
   cin >>r;
   l=2*pi*r;//计算周长
   cout <<"这个圆的周长为" <<l <<endl;
   return 0;
}
程序的运行结果:
请输入半径:3
这个圆的周长为18.8496

我们需要重点研究的是l=2*pi*r这句语句。这句语句称为赋值语句,赋值语句的语法格式为:
    左值=表达式;

语句中,等号称为赋值操作符。赋值操作符的作用就是把表达式的结果传递给左值。具体的过程是先将右侧的表达式的值求出,然后再将它存放到左值中。所以在赋值操作符两边出现相同的变量也是允许的。比如a=a+1就是先把原来a的值和1相加,然后再把结果放回变量a中。左值(Left Value,也作L-Value)的原意是在赋值操作符左边的表达式,它具有存储空间(比如自定义常量或变量),并且要允许存储(自定义常量只能在定义时初始化)。现在了解的知识中,左值可以理解为变量或定义语句中的自定义常量。

像程序中的2*pi*r我们称为算术表达式。它和平时数学上的表达式没有什么不同。如同四则运算一样,算术表达式中使用的是加减乘除和括号,运算的次序也是遵循“括号最先,先乘除后加减”的原则。需要注意的是:
表达式中,乘号是不能够省略的,即2a、4b之类的表达式是无法被识别的。
算术表达式中,括号只有小括号()一种,并且可以有多重括号。中括号[]和大括号{}都是不允许使用在算术表达式中的。比如((a+b)*4)是正确的写法,[(a+b)*4]却是错误的写法。

除、整除和取余
在C++中,“/”有两种含义:当除号两边的数均为整数时为整除,即商的小数部分被截去(不是四舍五入);除号两边只要有一个是实型数据,那么就做除法,小数部分予以保留,运算结果应当存放在实型变量中。

取余数的操作符为%,例如7%3的结果是1。它和乘除法类似,在加减法之前执行运算。注意,在取余数操作符的两边都应该是整数,否则将无法通过编译。

至此,我们已经学会了输入、输出和简单的运算。运用这些知识,我们已经能够自己设计一些简单的程序,实现一些计算功能。

试试看:
1、如果定义一个浮点型的常量时,不在实数之后加上F,是否能够通过编译?
2、假设已定义两个未初始化整型变量a和b,赋值语句a=b=1是否是合法的?如果合法,那么a和b的结果分别是什么?
3、7整除-2的结果应该是多少?-7%2的结果应该是多少?请上机验证。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表