C语言学习——if条件语句,switch语句,while循环,do...while循环,for循环,break语句,continue语句,signed与unsigned,再论数据类型

目录

一、if条件语句

1. 简单if条件语句

2. 简单if-else语句

3. 多重if-else语句

4. 嵌套if-else语句

二、switch语句

1.switch语句的概念

2.switch语句的基本结构

3.switch语句的示例

4.switch语句分支合并技巧

5.switch语句的实验小结

 三、while循环

四、do...while循环

五、for循环

六、三种循环的比较不同

 七、break语句

八、continue语句

 九、signed与unsigned

1.当程序运行时,如果发生了越界:

2.有符号与无符号

 十、再论数据类型

1.C语言中的sizeof关键字

2.C语言中的奇葩整型(long)

3.数据类型的本质区别


一、if条件语句

1. 简单if条件语句

简单if语句的基本结构如下:

if (条件) //条件为逻辑值,判断真假
{
   语句; //条件为真时,执行这里的语句,否则不执行语句
}

注意:if()后面没有分号,直接写{}

2. 简单if-else语句

简单if-else语句的基本结构如下:

if (条件) //条件为逻辑值,判断真假
{
   语句; //条件为真时,执行这里的语句
}
else
{
   语句; //条件为假时,执行这里的语句
}

3. 多重if-else语句

多重if-else语句的基本结构如下:

if (条件1) //条件为逻辑值,判断真假
   语句; //条件为真时,执行这里的语句
else if(条件2)
   语句; //条件为真时,执行这里的语句
else
   语句; //条件为假时,执行这里的语句

语义是:依次判断条件的值,当出现某个值为真时,则执行对应语句,否则向下执行。

注意:当某一条件为真的时候,则不会向下执行该分支结构的其他语句。

4. 嵌套if-else语句

嵌套if-else语句的意思,就是在if-else语句中,再写if-else语句。

嵌套if-else语句的基本结构如下:

if (条件1) 
{
   if (条件2) 
   {
      语句:
   }
   else
   {
      语句;
   }   
}
else
{
   语句;
} 

二、switch语句

1.switch语句的概念

switch语句是更简洁的选择结构,对给定的条件进行判断,再根据判断的结果来决定 执行哪一段的代码。

2.switch语句的基本结构

switch语句的基本结构如下图:

3.switch语句的示例

switch语句的示例如下图:

4.switch语句分支合并技巧

5.switch语句的实验小结

—switch仅适应于离散变量或值(整数值)

—case是分支入口,匹配成功后执行case下的语句

—当语句全部执行后,需要使用break跳出执行分支

 三、while循环

while循环语句基本结构如下 :

while(条件)//条件为逻辑值,判断真假
{
   循环语句;
}

while语句的语义是:计算表达式的值,当值为真(非零)时, 执行循环语句。 

1. 循环条件必须被改变,否则循环永远不会结束(例如:while(1))

2.  循环体如果包括有一个以上的语句,则必须用{}括起来,组成复合语句。

四、do...while循环

do...while循环语句基本结构如下 :

do
{
    执行语句;
}while(条件);//注意这里有分号

do-while循环语句的语义是:先执行循环中的执行语句,然后再判断while中条件是否为真,如果为真则继续循环;如果为假,则终止循环。因此,do-while循环至少要执行一次循环语句

1. do...while可以看作一条语句,需要以分号结束

2. do...while先执行循环体再判断循环条件

五、for循环

for循环循环语句基本结构如下 :

for(0.初始化循环变量;1.循环条件;3.改变循环变量)
{
    2.循环体;
}

1. 先执行语句0,初始化循环变量

2. 判断语句1,若其值为真(非0),则执行for循环体中执行代码块,然后向下执行;若其值为假(0),则结束循环;

3. 执行语句3,改变循环变量的语句;

4. 继续执行for循环中执行代码块后执行第二步;第一步初始化只会执行一次。

5. 当循环结束,程序继续向下执行。

六、三种循环的比较不同

while, do-while和for三种循环在具体的使用场合上是有区别的,如下:

在知道循环次数的情况下更适合使用for循环;
在不知道循环次数的情况下适合使用while或者do-while循环:
—如果有可能一次都不循环应考虑使用while循环
—如果至少循环一次应考虑使用do-while循环。
但是从本质上讲,while,do-while和for循环之间是可以相互转换的。

 七、break语句

1、break语句可以结束当前循环的执行
2、执行完break语句后,循环体中位于break语句后面的语句就不会被执行
3、在多重循环中,break语句只向外跳一层

只能在循环体内或switch语句中使用break语句

八、continue语句

continue语句的作用是结束本次循环开始执行下一次循环。

break语句与continue语句的区别是:

break是跳出当前整个循环,continue是结束本次循环开始下一次循环。

 九、signed与unsigned

1.当程序运行时,如果发生了越界:

—大于类型最大值时,则:运行结果回转到最小值附近
—小于类型最小值时,则:运行结果回转到最大值附近

我们应该如何解决这个问题呢,请看下面学的signwd与unsigned新知识

2.有符号与无符号

整数数据可以主动声明其“符号特性”

—signed int
范围:-2147483648~2147483647

—unsigned int
范围:0~4294967295

注意:signed int和unsigned int所能表示的整数个数是一样的,只是最大值和最小值不同

 十、再论数据类型

我们先来看下这两个问题

—数据类型之间的本质差异是什么 
—为什么会有不同的表示范围

1.C语言中的sizeof关键字

—功能:用于获取类型或者变量所占用的内存大小(字节)
—用法:a. sizeof (type)
               b. sizeof (variable)
               c. sizeof variable

int main()
{
    int s = sizeof (short);
    int v = sizeof (s);
    int z = sizeof s;
    return 0;
}

2.C语言中的奇葩整型(long)

1.long在使用不同编译器时,可能占用的内存不同
2.long通常占用4个字节,也可能占用8个字节
3.long long表示整型,固定占用8个字节
4.long long是long long int的缩写形式

3.数据类型的本质区别

—因为占用的内存大小不同,所以可表示的范围不同
—不同类型的数据,在内存中使用不同的表示法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值