硬核干货!那些选择和循环语句(4)

10 篇文章 0 订阅
10 篇文章 0 订阅

C语言中的那些选择和循环语句!

在C语言中,一共有三种程序结构:顺序结构、选择结构(分支结构)、循环结构。

一. 顺序执行语句

顺序执行语句很简单,就是从main函数开始,一条一条语句往下执行,直到执行完最后一句。

二. 分支选择语句

分支选择语句主要是分为 if语句 和 switch语句。
1:if语句
(1).当某些条件成立时才执行

if(condition){

} 

(2).当条件成立时执行某个分支,当不成立时执行另外的分支

   if(condition){
    
    }else{
    
    }   

(3).条件分支有很多,当某种条件成立时执行某段代码,其它不执行条件的判断是从上往下。

  if(condition){
    
    }else if(condition1){
    
    }else {
    
    }
   

(4).所有的情况都有对应有分支,但不管条件有几种,只执行其中之一

if(condition){

}else if(condition1){

}else if(condition2){

}......else if(conditionx){

}else {

}

这种情况是从上往下逐个条件进行判断,如果有一个语句为真,则执行对应的分支,执行完该分支后面的的语句不再判断

在一个完整的 if( ){ } else if( ){ }… 分支语句中,只会执行其中 1 个或者 0 个分支
如果有else分支,就一定会执行其中一个分支

2:switch语句
对于任意一个表达式在某次执行过程中总会得到一个确切的值,然后switch语句会根据该值直接跳到相同的case值得地方开始执行,一直遇到break结束switch语句
default 相当于if 语句中的else部分,可有可无

 switch(表达式){    // switch(表达式)  表达式的结果只能是整数类型
    case 常量表达式1// 常量表达式的结果只能是整数类型,不能是一个变量
    
      breakcase 常量表达式2// 常量表达式的结果不能一样
    
     break;
    ……
    defaultbreak}

注意
① default可以放在任意位置,但都必须是所有的case不满足时才会执行
② defalut 和 case 只是作为入口,一旦进入顺序执行,直至break
③ case值只能是常量或常量表达式
④ case值不能重复
⑥ case后面的语句可以用{ } ,也可以不用

三. 条件循环语句

1:for语句

 for(init_conment;loop_condition;change_forval_conment){
    // 循环语句
   }
 

① init_conment:只会执行一次 ,一般用于初始化循环变量
c99标准后,允许在这些处定义 -std = c99
(init_conment 可以没有)
② loop_condition:只有当该条件为true时才会执行循环体内部的语句
如果该条件为false时,则接着执行 for( ){ } 循环后面的语句
(loop_condition 可以没有,没有条件时表示 恒为真)
③ change_forval_conment:当执行完一次循环体内部的语句时,执行该语句
一般是用于改变循环变量的值
(change_forval_conment 该语句也可以没有)

循环语句也可以为空
for( ; ; )语句中语句可以没有,但是 ; 不能少
如果循环语句为空

2:while语句

 while(loop_condition){  // 当loop_condition 为真时执行循环体
     // while循环可能一次也不执行
  }

(for和while可以替换)

 // do while先进入到循环体,然后再判断
 // 条件为真时继续执行循环体,否则结束
do{
  // 至少执行一次
 }while()
 

注意:

① 无限循环:
for( ; ; ) 或 for( ; 1; ) 或 for( ; 1==1 ; )
while(1) 或 while(1 == 1)
② break:
结束循环语句 跳出循环语句
③ continue:
跳过本次循环 进行下一次循环

四. goto跳转语句

可以用 goto 实现循环,但是 goto 比较危险,所以不建议使用

 goto 标签;  //跳转到指定标签位置开始执行代码

C语言的选择和循环语句其实也就这么几种,重要的还是自己熟练的掌握以及对选择和循环嵌套的使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值