由运算符和运算对象组成的式子称为表达式ios
(1)表达式的运算对象能够是常量,变量,函数调用和嵌套的表达式算法
12+a+max(x,y)+(x+y);
(2)表达式的计算是按步骤进行的,成为表达式求值顺序函数
x>y&&x<z //先计算x>y,若结果为假则运算结束,不然继续计算x<z
(3)表达式中的数据对象应一致spa
(4)每一个表达式的结果除了肯定的值以外,还应有肯定的数据类型code
break语句的做用是结束switch语句和循环语句的运行,转到后续语句对象
判断一个数m是不是素数ci
#include<iostream> using namespace std; int main() { int i, m; cin >> m; for (i = 2; i <= m; i++) { if (m%i == 0) break; } if (m == i) cout << "yes" << endl; else cout << "no" << endl; system("pause"); return 0; }
continue语句的做用是在循环体中结束本次循环,直接进入下一次循环,只能用于循环语句(while,do,for)中,不可单独使用。it
在while循环语句和do-while循环语句中遇到continue,忽略continue以后的语句,调到while小括号中进行判断,在for循环语句中遇到continue,跳到表达式3进行判断。io
打印九九乘法表for循环
#include<iostream> using namespace std; int main() { for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { cout << j << "x" << i << "=" << i*j << " "; } cout << endl; } system("pause"); return 0; }
求π的近似值,π/4≈1-1/3+1/5-1/7+1/9,直到最后一项的绝对值小于1e-7为止
#include<iostream> #include<cmath> using namespace std; int main() { double a = 1, b = 1, c = 1, pi = 0; while (fabs(c) > 1e-7) { pi += c; a = -a; //a表示分子1,-1,1,-1…… b += 2; //b表示分母(依次加2) c = a / b; //c表示第n项分数 } cout << "PI=" << pi * 4 << endl; system("pause"); return 0; }
fabs函数是一个求绝对值的函数,要包含头文件cmath
枚举法,也称为穷举法,是指从可能的集合中一一枚举各个元素,用给定的约束条件判断哪些是无用的,那些是有用的。能使命题成立者即为问题的解;
利用枚举法求解问题的基本思路为:
(1)肯定枚举对象、枚举范围和断定条件
(2)一一枚举可能的解,验证是不是问题的解
百元买百鸡问题,有人有一百元钱,打算买一百只鸡。公鸡一只5元,母鸡一只3元,小鸡3只1元,求应各买多少?
#include<iostream> #include<cmath> using namespace std; int main() { int x, y, z; for (x = 0; x <= 20; x++) { for (y = 0; y <= 33; y++) { for (z = 0; z <= 100; z++) { if (x + y + z == 100 && x * 5 + y * 3 + z / 3 == 100) cout << "公鸡:" << x << "只," << "母鸡:" << y << "只," << "小鸡" << z << "只" << endl; } } } system("pause"); return 0; }
迭代法是一种不断用变量的旧值递推新值的求解方法
#include<iostream> using namespace std; int main() { int fn = 0, f1 = 0, f2 = 1, i; for (i = 1; i <= 40; i++) { fn = f1 + f2; //迭代关系式 f1 = f2; f2 = fn; //f1和f2迭代前进 cout << fn << " "; } system("pause"); return 0; }