1.if else的配对问题
else 总是与它最近的if配对
2.for循环
for(表达式1;表达式2;表达式3)
执行顺序:表达式1--->表达式2--->循环体--->表达式3
--->表达式2--->循环体--->表达式3--->
数组
1.数组定义
DataType ArrayName[size];
DataType:数据类型,int,float,double,char等
ArrayName:数组名
size:数组的大小或数组下标,必须是常量表达式
[]:下标运算符
下标是从0开始到size-1
2.数组的初始化
int arr[3] = {1,2,3};
int arr1[3] = {1,3};
int arr2[3] = {[2]=3}; //不建议
int arr3[] = {1,2,3,4}; //不建议
int arr4[] = {}; //error
注:数组若要初始化,不能先定义初始化
宏定义:
#define M(一般大写) 5(不限) //用M代替5
3.数组元素的访问
使用下标形式;
arr[1]:访问第二个元素
4.数组的存储
也是一种数据结构,数组中的元素顺序存储;数组中每个元素类型相同
5.数组地址问题
arr: 0X,,,00 数组名,也代表数组元素的首地址
&arr[0]: 0X,,,00 数组元素的首地址,第一个元素的地址
&arr: 0X,,,00 数组的首地址
arr+1: 0X,,,04 \表达意思一样,
&arr[0]+1: 0X,,,04 /地址偏移sizeof(arr[0])个字节
&arr+1: 0X,,,14arr 偏移的量为sizeof(arr)个字节
6.数组元素的赋值
char arr[16] = {"cdiwnetul"};
char buf[16] = {'v''b''g''d''a'};
二维数组
DataType ArrayName[行下标][列下标];//行下标可以省略,列下标不能省
(1)初始化:
int arr[3][3] = {1,2,3};
int arr1[3][3] = {{1,2,3},{1,2,3},{4,5,6}};
注释
(1)//,,,,,,,,:
单行注释,可以独占一行,也可以跟在执行语句之后
但//之后不被编译执行
规定:
注释内容放在被注释的上一行或者同行行末
(2)/×,,,,,,,,×/:
注释大段代码,即注释代码块
(3)#if 0 //为0是注释,为1则编译执行
,,,, //主要用于代码测试
else
,,,,
#endif