#CPP1. 【Level 0】变量

【Level 0】变量

Description

  在计算数据时,我们往往需要存储中间的结果,否则表达式将会极为复杂,难以查错。

  观察一段代码

int x;
x = 1000;

  第一句表示定义一个 int 类型的变量,取名为 xint 类型是整数类型的一种,一般情况下我们可以认为其值的范围是 -2147483648 ~ 2147483647

  第二句表示将 1000 赋值给 x,如果我们这时使用 cout 输出 x,可以在控制台上看到 1000 的结果

  除了 int 类型之外,我们还有常用的 bool, char, double, long long 等许多类型,各自代表不同类型的数据,请自行查阅

  再观察另一段代码

const int x = 100;
x = 1000;

  这段代码无法运行,这是因为我们用 const 修饰 x 之后,x 就无法被修改,因此 x = 1000; 出现编译错误。

  既然被 const 修饰的变量无法被修改,那起到什么作用呢?主要是方便我们编写代码时,对需要用到多次的数进行定义,且不用担心它被修改,例如

const double pi = 3.14159265;
double r = 3;
double area = pi * r * r; // 圆的面积
double vol = 4.0 / 3.0 * pi * r * r * r; // 球的体积

  此外,我们会在后面看到,在定义某些数据结构的大小时,也会用到 const

注意:初始化问题

  如果你定义了一个变量而没有初始化,此时这个变量的值将是随机的。

  Windows 系统通常较为宽松,会把没有初始化的变量默认赋值为 0,但 OJ 判题所使用的 Linux 系统较为严格,如果你没有初始化变量,则变量当前值将会是随机的而不是 0。这就可能导致有的同学在本地运行无误,而提交后出错的情况。

Format

Input

  本题没有输入

Output

  第一行,输出一个数 xx,精确到 小数点后6位,其值为 x=b24acx=\sqrt{b^2-4ac},其中 a=5.352,b=17.29,c=8.525a=5.352, b=17.29, c=8.525(请自行查阅 C++ 如何计算算术平方根,以及如何控制输出浮点数的精度)

  第二行,输出一个数 yy,其值为 y=3.1536y=3.153 ^ 6,精确到 小数点后6位