1 程序流程结构
顺序结构 选择结构 循环结构
1.1选择结构
1.1.1 if语句
作用:执行满足条件的语句
- 单行格式if语句
- 多行格式if语句
- 多条件的if语句
1、单行格式if语句 if(条件)(条件满足执行的语句)
2、多行格式if语句 if(条件)(条件满足执行的语句)else(条件不满足执行的语句)
3、多条件 if(条件1)(条件1满足执行的语句)else if(条件2)(条件2满足执行的语句)…else(都不满足执行的语句)
4、嵌套if语句 :三只小猪比体重案例
1.1.2 三目运算符
作用:通过三目运算符实现简单的判断
语法:表达式1 ? 表达式2 : 表达式3;
解释:
如果表达式1的值为真,执行表达式2,并返回表达式2的结果;
如果表达式1的值为假,执行表达式3,并返回表达式3的结果;
Int main()
{
Int a=10; int b=20; int c=0;
C=a>b ? a : b ;
Cout<<“c=”<<c<<endl;
}
输出结果为c=20分
1.1.3 switch语句
作用:执行多条件分支语句
语法:
stitch(表达式)
{
case 结果1;执行语句;break;
case 结果2;执行语句;break;
…
default;执行语句;break;
}
1.2循环语句
1.2.1 while循环
作用:满足循环条件,执行循环语句
语法:while(循环条件){循环语句}
只要循环的结果为真,就执行循环语句,所以要避免死循环的出现。
1.2.2 do…while循环
作用:满足循环条件,执行循环语句
语法:do{循环语句}while(循环条件);
注意:与while的区别在于do…while会先执行一次循环语句,再判断循环条件
1.2.3 for循环语句
作用::满足循环条件,执行循环语句
语法:for(起始表达式;条件表达式;末尾循环体){循环语句};
1.2.4 嵌套循环
作用:在循环体中再嵌套一层循环,解决一些实际问题
内层执行一圈,外层执行一次
1.2.5 continue语句
作用:在循环语句中,跳过本次循环中余下尚未执行的语句,继续执行下一次循环
1.2.6 goto语句
goto FLAG;
…n行代码;
FLAG: xxxxxxxx;
2 数组
概念:一个存放了相同类型的数据元素
- 数组中每个数据元素都是相同数据类型
- 数组是由连续的内存位置组成的
2.1 一维数组
一维数组定义的三种方式:
1.数据类型 数组名[数组长度];
2.数据类型 数组名[数组长度] = {值1,值2 …};
3.数据类型 数组名[] = {值1,值2, …};
//1
int array[5];
arr[0]=10; arr[1]=20; arr[2]=30; arr[3]=40; arr[4]=50;
//2 如果初始化数据没有全部填写,用0填补剩余数据
Int arr[5] = {10,20,30,40,50};
//3 定义数组的时候 必须有初始长度
Int arr[]={10,20,30,40,50};
2.1.1一维数组数组名
用途:
1.可以统计整个数组在内存中的长度 sizeof(arr)
2.可以获取数组在内存中的首地址 cout<< arr << endl;
2.2 二维数组
在一维数组上,多加一个维度。
定义方式:
1.数据类型 数组名[行数][列数];
2.数据类型 数组名[行数][列数] = {{数据1,数据2},{数据3,数据4}};
3.数据类型 数组名[行数][列数] = {数据1,数据2,数据3,数据4};
4.数据类型[] [列数] = {数据1,数据2,数据3,数据4};
以上四种方式,利用第二种更加直观,提高代码的可读性
int arr[2][3];
int arr[0][0] = 1;
.
.
.
Int arr[1][2] = 6;
int arr[2][3]={
{1,2,3}
{4,5,6}
};
int arr[2][3] = {1,2,3,4,5,6};
int arr[][3] = {1,2,3,4,5,6};//系统会推算出有几行
2.2.1 二维数组的命名
1.可以查看占用内存空间大小
int arr[2][3] =
{
{1,2,3},
{4,5,6}
};
Cout << sizeof(arr) << endl;
2.可以查看二维数组的首地址
Cout << (int)arr << endl;