C++是一种功能强大且广泛应用的编程语言,对于想要深入学习编程和算法的人来说,掌握C++是一个重要的里程碑。本文将带你逐步了解C++编程的基础知识,并介绍一些常见的算法和编程技巧帮你入门c++算法。
在c++算法入门教程(1) 中,我讲解了什么是编程、安装编译环境、输出、变量、输入、for循环,没看第一篇的可以去看看。
一、if选择语句
在C++中,if
属于选择语句(conditional statement)。选择语句用于根据条件的真假来执行不同的代码块。if
语句允许程序根据条件表达式的结果来确定要执行的代码路径。如果条件为真,则执行if
代码块中的语句;如果条件为假,则跳过if
代码块或执行与之关联的else
代码块,简单来说就是如果的意思,例如:
if (1+1 == 1) {
cout << "1+1=1"; // 如果条件为真,则执行这里的代码
} else {
cout << "1+1不等于1"; // 如果条件为假,则执行这里的代码
}
以上代码的意思就是“如果1+1=1,那么输出1+1=1,否则输出1+1不等于1”,这里顺便讲一下,在c++中,“==”的意思是“等于”,而“=”的用处是“赋值”,所以在第一行不用=而用==。
二、switch多分支选择语句
在C++中,除了if语句,我们还可以使用switch语句来进行多分支的选择。switch语句通常用于当有多个互斥的条件需要判断时,使得代码更加清晰和易于维护。switch语句的基本结构如下:
switch (expression) {
case value1:
// 当expression的值等于value1时执行这里的代码
break;
case value2:
// 当expression的值等于value2时执行这里的代码
break;
// ...可以有多个case
default:
// 如果没有匹配的case,执行这里的代码
break;
}
这里的`expression`是要判断的变量或表达式,`value1`、`value2`等是与`expression`进行比较的值。如果`expression`的值与某个`case`的值相匹配,就会执行对应的代码块。`break`语句用于退出switch语句,防止执行到下一个`case`。如果所有`case`都不匹配,就会执行`default`部分的代码。
举个例子,假设我们有一个数字,想要根据这个数字输出对应的信息:
int number = 2;
switch (number) {
case 1:
cout << "你输入的是1" << endl;
break;
case 2:
cout << "你输入的是2" << endl;
break;
case 3:
cout << "你输入的是3" << endl;
break;
default:
cout << "输入的不是1、2、3" << endl;
break;
}
在这个例子中,如果`number`的值为2,那么会输出“你输入的是2”。
三、循环结构
我们已经介绍了`for`循环,除此之外,C++还提供了其他类型的循环结构,如`while`循环和`do-while`循环。
1. `while`循环
`while`循环在条件为真时重复执行代码块,直到条件为假。它的基本结构如下
while (condition) {
// 循环体代码
}
如果条件一开始就为假,那么循环体内的代码将不会被执行。举个例子:
int n = 3;
while (n) {//只要n不为假(0)那么执行循环体内语句
cout << n;
n --; //使n-1
}
代码运行后会显示“123”。
2. `do-while`循环
`do-while`循环至少执行一次循环体,然后再判断条件。如果条件为真,继续执行循环。它的基本结构如下:
do {
// 循环体代码
} while (condition);
即使条件一开始就为假,`do-while`循环也会执行一次循环体。
四、数组
数组是C++中用于存储多个值的变量。数组可以存储固定大小的同类型元素序列。声明数组的语法如下:
type arrayName[arraySize];//数据类型 数组名[数组中的变量数]
例如,声明一个整型数组:
int numbers[5];
这将创建一个名为`numbers`的数组,它可以存储5个整数。数组的索引从0开始,所以`numbers[0]`是第一个元素,`numbers[4]`是最后一个元素。比如:
int n[3];
for (int i = 0;i < 3;i ++)
n[i] = i;
for (int i = 0;i < 3;i ++)
cout << n[i];
运行后会输出“012”。
五、函数
函数是一段可重复使用的代码块,它可以接受输入(参数)并返回一个值,也可以不接收参数,只运行代码。在C++中,函数的基本结构如下:
type functionName(parameters) {//返回值类型 函数名 (输入的参数)
// 函数体代码
return value;//返回一个值
}
例如,创建一个计算两个数之和的函数:
int add(int a, int b) {
return a + b;
}
int main() {
cout << add(1,2);
return 0;
}
在这个例子中,`add`函数接受两个整数参数`a`(1)和`b`(2),返回它们的和(3),然后主函数再输出和,还有一种特殊的返回值类型:void(无类型),这种函数只可以运行代码,不能返回值。