C语言基础知识学习(三)

C语言基础知识学习之程序结构


一 程序结构

       程序结构可以分为:顺序、    分支和循环

 

1分支结构(if-else

1if-的使用形式

如果条件为真执行语句块1,否则跳过。

 If(常量/变量/表达式){

语句块1

}

 

2 if else形式

如果条件为真执行语句块1,为假执行语句块2

If(常量/变量/表达式){

       语句块1

}else{

       语句块2

}

 

3if-else 嵌套形式

      

if(常量/变量/表达式){

        if(常量/变量/表达式){

                语句块1

}else{

       语句块2

}

  }else{

      

语句块3

}

 

4if语句高级用法

  逐次判断if的条件 如果条件为真,执行当前语句块,执行完结束,否则判断下一个if条件,如果条件为真,执行当前语句块。依次执行,如果条件都不为真执行最后的else里的语句块。

if(常量/变量/表达式)}{

      语句块1

}else if(常量/变量/表达式){

语句块2

}else if(常量/变量/表达式){

       语句块3

}

 

5If语句的使用注意事项

aif(常量/变量/表达式);  无论真假,都不执行。

bif后如果只有一句话。则可以省略大括号

        if(常量/变量/表达式)

 语句;

c, 永真式和永假式

           永真式 if(1)

永假式 if(0)

dif语句中return

一个函数中,可以有多个return语句,但只执行一个。

       在一个函数中,执行return之后,return之后的语句不会执行。

e if的作用域

      作用域为if之后的大括号开始到大括号结束。

f  大括号的匹配

       避免匹配麻烦,不要省略大括号。



2 分支结构(switch

首先计算表达式的值。并逐个与其后的常量表达式的值进行比较,当表达式的值与常量表达式的值相等时,执行其后的语句,执行完毕后break跳出switch语句。。

 

1)使用形式:

switch(表达式){

case 常量表达式1

语句1

break

case 常量表达式2

语句2

break

……

 default:语句n+1

}


 

 

2)注意

a case具有向下穿透作用,执行完当前case后语句时,如果语句后没有break程序将继续向下执行之后case后的语句,直到遇到break或者执行到语句末为止。

b, 可以用在不同常量表达式对应的语句块相同时使用。

c switch语句的表达式类型

可以是整型常量(5);可以是整型变量();可以是转换为整类型的表达式(‘a’);还可以是返回值为整形的表达式(5+4)。

dcase后的值只能是常量(1)或者常量表达式(8+8

e default位置可以放在任意位置

case可以穿透到default语句。

h default语句如果放在最后是可以省略break  如果不是最后不可以省略。


注意:     if分支结构和switch分支转换

 如果分支比较多且无法穷尽的时候尽量使用if

如果分支不是很多,但是使用if代码量比较大是时候可以使用switch

 switch比较清晰条理,if注意嵌套。

 

4 循环结构(while

循环结构的特点:先判断循环条件,当给定的条件成立时,反复执行某程序段,循环一次判断一次条件,直到条件不成立为为止。给定的条件称为循环条件,反复执行的程序称为循环体。

 

1while的格式

while(条件表达式){

       循环体;

}

 

计算1+2+3+……+100的值

#include <stdio.h>
int main()
{
    int i, s=0;
    for(i = 1; i <= 100; i ++)//循环遍历。
        s+=i;//累加。
     
    printf("%d\n", s);//输出结果。
     
    return 0;
}

 

2) 注意

while循环结构的条件

a ,循环控制条件 b 循环体 c 跳出循环的条件(否则会构成死循环)

b ,当一个变量与一个常量进行关系比较时通常把常量写在前面 while1==a    

3  while后的语句只有一句话时可以省略大括号。

       whilei++<=100sum+=i;

3while作用域:从while后的大括号开始,到大括号结束。

5 循环结构(do-while

 

1do-while格式

do{

         循环体;

}while(循环条件)

 

2whiledo-while区别

 

while是当型循环,先判断循环条件,当条件成立时,才执行循环体。

do-while是直到型循环,先执行循环体,再判断循环条件,直到循环条件不成立。

do-while循环不管循环条件是否成立,循环体都会先执行一次

6 循环结构(for

 可以使用域循环次数明确的情况,也可以使用于循环次数不确定的情况。完全可以替代while语句。

1for循环格式

for(表达式1; 表达式2;表达式3{

          循环体;

}

表达式1为循环变量初始化表达式,定义循环变量或者赋初值。如果之前定义了可以省略。

表达式2 为条件表达式,表达式成立时执行循环体,如果循环体中有跳出循环的条件语句,可以省略。

表达式3 循环变量控制表达式,没次执行之后,变量进行更改。可以写在循环体中。

2) 循环嵌套

打印9-9乘法表

#include<stdio.h>
int main(){
 int i,k;
 printf("九九乘法表:\n");
 for(i=1;i<=9;i++){
   for(k=1;k<=i;k++){
    printf("%dx%d=%d ",i,k,i*k);
   }
   printf("\n");
 }
}


 

break语句和continue语句的区别

3break 关键字及break语句

break可以用在循环中,用来跳出循环,break用在switch中可以跳出switch而执行switch之后的语句。break在循环中只能向外跳出一层

4continue

结束本次循环,继续下次循环。




评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值