循环
循环类型
while 循环当给定条件为真时,重复语句或语句组。
它会在执行循环主体之前测试条件。
for 循环 多次执行一个语句序列,简化管理循环变量的代码。
do . . . while 循环 除了它是在循环主体结尾测试条件外,其他与 while 语句类似。
嵌套循环 您可以在 while 、for 或 do . . while 循环内使用一个或多个循环。
循环控制语句
break 语句 终止 loop 或 switch 语句,程序流将继续执行紧接着 loop 或 switch 的下一条语句。
continue 语句 引起循环跳过主体的剩余部分,立即重新开始测试条件。
判断语句
if
if . . . else
嵌套 if 语句
switch
嵌套 switch 语句
? : 三元运算符
函数
return_type function_name ( parameter list )
{
body of the function
}
例: / / 函数返回两个数中较大的那个数
int max ( int num1, int num2)
{
int result;
if ( num1 > num2)
result = num1;
else
result = num2;
return result;
}
函数声明
公式: return_type function_name ( parameter list ) ;
例子: int max ( int num1, int num2) ;
在函数声明中,参数的名称并不重要,只有参数的类型是必需的,
例子: int max ( int , int ) ;
数字
定义数字
short s;
int i;
long l;
float f;
double d;
s = 10 ;
i = 1000 ;
l = 1000000 ;
f = 230.47 ;
d = 30949.374 ;
数学运算
double cos ( double ) ;
该函数返回弧度角(double 型)的余弦。
double sin ( double ) ;
该函数返回弧度角(double 型)的正弦。
double tan ( double ) ;
该函数返回弧度角(double 型)的正切。
double log ( double ) ;
该函数返回参数的自然对数。
double pow ( double , double ) ;
假设第一个参数为 x,第二个参数为 y,则返回 x 的 y 次方。
double hypot ( double , double ) ;
该函数返回两个参数的平方总和的平方根,
例: 参数为一个直角三角形的两个直角边,函数会返回斜边的长度。
double sqrt ( double ) ;
该函数返回参数的平方根。
int abs ( int ) ;
该函数返回整数的绝对值。
double fabs ( double ) ;
该函数返回任意一个浮点数的绝对值。
double floor ( double ) ;
该函数返回一个小于或等于传入参数的最大整数。
随机数
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main ( )
{
int i, j;
srand ( ( unsigned ) time ( NULL ) ) ;
for ( i = 0 ; i < 10 ; i++ )
{
j= rand ( ) ;
cout << "随机数: " << j << endl;
}
return 0 ;
}
随机数
随机数概念
srand ( ) 用来设置 rand ( ) 产生随机数时的随机数种子。
参数 seed 必须是个整数,如果每次 seed 都设相同值,rand ( ) 所产生的随机数值每次就会一样。
使用当前时钟作为随机数种子
rand ( ) 产生的随机数在每次运行的时候都是与上一次相同的。
若要不同, 用函数 srand ( ) 初始化它。
可以利用 srand ( ( unsigned int ) ( time ( NULL ) ) 的方法,
产生不同的随机数种子,因为每一次运行程序的时间是不同的。
计算机的随机数都是由伪随机数,即是由小M多项式序列生成的,
其中产生每个小序列都有一个初始值,即随机种子。
(注意: 小M多项式序列的周期是65535 ,即每次利用一个随机种子生成的随机数的周期是65535 ,
当你取得65535 个随机数后它们又重复出现了。)
我们知道 rand ( ) 函数可以用来产生随机数,但是这不是真正意义上的随机数,是一个伪随机数,
是根据一个数(我们可以称它为种子)为基准以某个递推公式推算出来的一系列数,
当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,
但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统。
rand ( ) 的内部实现是用线性同余法做的,它不是真的随机数,因其周期特别长,故在一定的范围里可看成是随机的。
rand ( ) 返回一随机数值的范围在 0 至 RAND_MAX 间。RAND_MAX 的范围最少是在 32767 之间( int ) 。用 unsigned int 双字节是 65535 ,四字节是 4294967295 的整数范围。0 ~ RAND_MAX 每个数字被选中的机率是相同的。
用户未设定随机数种子时,系统默认的随机数种子为 1 。
rand ( ) 产生的是伪随机数字,每次执行时是相同的; 若要不同, 用函数 srand ( ) 初始化它。
产生随机数的用法
1 ) 给srand ( ) 提供一个种子,它是一个unsigned int 类型;
2 ) 调用rand ( ) ,它会根据提供给srand ( ) 的种子值返回一个随机数( 在0 到RAND_MAX之间) ;
3 ) 根据需要多次调用rand ( ) ,从而不间断地得到新的随机数;
4 ) 无论什么时候,都可以给srand ( ) 提供一个新的种子,从而进一步"随机化" rand ( ) 的输出结果。