我们已经了解了程序设计中,最常用的两种存储方式——常量和变量。本节我们要学习如何在程序中运用常量和变量。我们先来看一段程序:(程序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。它和乘除法类似,在加减法之前执行运算。注意,在取余数操作符的两边都应该是整数,否则将无法通过编译。
至此,我们已经学会了输入、输出和简单的运算。运用这些知识,我们已经能够自己设计一些简单的程序,实现一些计算功能。