C语言数据类型与三大结构
数据类型
C语言数据类型可以分为基本类型和派生类型。
基本类型:整型,字符型,浮点型,布尔型。
派生类型:指针类型,枚举类型,数组类型,结构体类型,共用体类型
在不同的编译器环境下同一个数据类型可能占用不同的内存空间
32位环境下数据类型的长度一般如下:
三大结构
顺序结构
就是按照语句写入的先后顺序依次执行。
选择结构
在不同的条件下执行不同的语句c语言中支持这种结构为if语句和switch语句
if语句的基本结构
if(判断条件){
语句块1
}else{
语句块2
}
switch语句的基本结构
switch(表达式){
case 整型数值1: 语句 1;
case 整型数值2: 语句 2;
......
case 整型数值n: 语句 n;
default: 语句 n+1;
}
注意:switch语句在执行完第一个语句后不会马上跳出循环,而是会继续执行接下来的语句,所以要加上break语句跳出循环。
循环结构
c语言中支持这种结构的语句为for语句和while语句;
for语句的基本结构
for(表达式1; 表达式2; 表达式3){
语句块
}
它的运行过程为:
-
先执行“表达式1”。
-
再执行“表达式2”,如果它的值为真(非0),则执行循环体,否则结束循环。
-
执行完循环体后再执行“表达式3”。
-
重复执行步骤 2) 和 3),直到“表达式2”的值为假,就结束循环。
上面的步骤中,2) 和 3) 是一次循环,会重复执行,for 语句的主要作用就是不断执行步骤 2) 和 3)。
while语句的基本结构
while语句有两种结构分别为do-while结构和while结构。
while结构
while(表达式){
语句块
}
do-while 结构
do{
语句块
}while(表达式);
总结:do-while循环与while循环的不同在于,它会先执行“语句块”,然后再判断表达式是否为真,如果为真则继续循环;如果为假,则终止循环。因此,do-while 循环至少要执行一次“语句块”。