C语言分支和循环

分支

分支结构允许程序根据条件选择性地执行不同的代码块。在C语言中,最常用的分支结构是if语句和switch语句。

if语句


if语句用于基于一个条件判断来执行代码块。其基本语法如下:

if (条件1) {
    // 如果条1件为真,执行这里的代码
}
else if(条件2)
{
    // 如果条件2为真,执行这里的代码
}
else
{
    //条件都不满足执行这里的代码
}

if语句的条件可以是任何可以返回布尔值(真或假)的表达式。根据条件的结果,程序将选择性地执行相应的代码块。else和else if 语句可写可不写根据情况决定。

Tips:

  • 使用括号:尽管在C语言中,if语句的括号是可选的,但建议始终使用括号,以避免潜在的错误和混淆。
  • 使用逻辑运算符:if语句的条件可以使用逻辑运算符(如&&和||)组合多个条件,以实现更复杂的判断逻辑
  • 注意条件顺序:如果有多个条件需要判断,将最可能为真的条件放在前面,可以提高程序的执行效率。
 switch语句

switch语句用于根据表达式的值选择性地执行代码块。其基本语法如下:

switch (表达式) {
    case 值1:
        // 如果表达式的值等于值1,执行这里的代码
        break;
    case 值2:
        // 如果表达式的值等于值2,执行这里的代码
        break;
    ...
    default:
        // 如果表达式的值与任何case都不匹配,执行这里的代码
        break;
}

switch语句根据表达式的值与各个case的值进行比较,匹配时执行相应的代码块。如果没有匹配的case,将执行default后的代码块(default语句是可以不写的,并不是非要书写default语句)。

Tips:

  • 使用break语句:在每个case块的末尾使用break语句,以避免执行其他case块。如果忘记使用break,程序将继续执行后续的case块。也可以根据程序需要不添加break语句。
  • 注意default的位置:通常将default块放在switch语句的最后,以处理未匹配到任何case的情况。
循环

循环结构允许程序重复执行一段代码,直到满足退出条件。在C语言中,最常用的循环结构是for循环、while循环和do-while循环

for循环

for循环用于在已知循环次数的情况下重复执行一段代码。其基本语法如下:

for (初始化表达式; 循环条件; 更新表达式) {
    // 循环体,执行这里的代码
}

for循环在每次迭代之前执行初始化表达式,然后检查循环条件。如果条件为真,执行循环体中的代码,然后执行更新表达式。重复执行这个过程,直到循环条件为假。

Tips:

  • 理解循环条件:在编写for循环时,确保循环条件能够正确地控制循环的次数和退出条件。
  • 利用循环变量:在for循环中,循环变量的初始化、更新和使用是非常重要的。确保循环变量在循环过程中能够正确地更新和使用。
while循环 

while循环用于在未知循环次数的情况下重复执行一段代码。其基本语法如下:

while (循环条件) {
    // 循环体,执行这里的代码
}

while循环在每次迭代之前检查循环条件。如果条件为真,执行循环体中的代码,然后再次检查循环条件。重复执行这个过程,直到循环条件为假。

Tips:

  • 初始化循环条件:在使用while循环之前,确保循环条件已经被初始化,并且能够在循环过程中正确地更新。
  • 避免无限循环:确保循环条件能够在某个时刻变为假,以避免无限循环导致程序陷入死循环。也尽量避免伪死循环,就是这个while会循环一个很大的次数。
 do-while循环

do-while循环是一种至少执行一次循环体的循环结构,然后在检查循环条件。其基本语法如下:

do {
    // 循环体,执行这里的代码
} while (循环条件);

do-while循环首先执行循环体中的代码,然后检查循环条件。如果条件为真,重复执行循环体,直到循环条件为假。

Tips:

  • 确定退出条件:在使用do-while循环时,确保循环条件能够在循环体执行之后正确地判断,以避免不必要的循环。
  • 调试循环体:由于do-while循环至少会执行一次循环体,因此在编写循环体时要特别注意,确保其逻辑正确。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值