c语言赋值语句的作用,详解C语言语句

空语句

空语句本身并不执行任何任务,但有时还是有用的。它所适用的场合就是语法要求出现一条完整的语句,但并不要求它执行任何任务。

表达式语句

C语言并不存在专门的赋值语句,那它是如何进行赋值的?答案是赋值就是一种操作,就像加减法一样,所以赋值就在表达式内进行。

你只要在表达式后面加上一个分好,就可以把表达式转化为语句,所以下面两个语句是表达式语句而不是赋值语句。

x = y + 3;

ch = getchar();

if语句

if语句的语法如下

if(expression)

statement;

else

statement;

如果expression的值为真,纳米就执行第一个statement,佛则就跳过它。如果存在else语句,它后面的statement只有当expression的值为假的时候执行。

在C语言中的if语句与其它语言中的if语句,只存在一个差别C并不具备布尔类型,而是用整数来替代,这样expression看可以是任何能够产生整型结果的表达式——零标识假,非零表示真。

注意:else子句从属于最靠近它的不完整if语句

while语句

while(expression)

statement;

break语句和continue语句

在while循环语句中可以使用break和continue语句,其中break语句用于永久终止循环,在执行完break语句后,执行流执行的下一条语句就是循环正常终止后应该执行的语句。

continue语句用于永久终止当前循环,在执行完continue语句后,执行流接下来就是重新测试表达式的值,决定是否据需执行循环。

这两条语句的任何一条如果出现于嵌套的内部循环,它只对最内层的循环起作用,你无法使用break和continue语句对最外层的语句起作用。

for语句

for(expression1;expression2;expression3)

statement;

相当于while语句的下列表现形式

experssion1

while(expression2)

{

statement;

expression3;

}

其中statement称为循环体,expression1称为初始化部分,expression2称为条件部分,expression3称为调整部分,它在循环体执行之后,条件部分执行之前执行,三个部分都是可选部分,三个都省略,表示条件适中为真。

for语句和while语句执行过程中出现continue语句的区别:

1.在for语句中,continue语句直接跳过循环体的剩余部分,直接回到调整部分。

2.在while语句中,调整部分属于循环体的一部分,所以continue将会把它也跳过。

do语句

do

statement;

while(expression);

do语句和很像while语句,再是它的测试条件在循环体执行一次之后才进行执行,所以这种循环体至少被执行一次。

switch语句

switch(expression)

{

statement_list;

}

贯穿于语句列表之间的是一个或多个case标签,形似如下:

case constant-expression:

每个case标签必须具有一个唯一的值,常量表达式是指在编译期间进行求值的表达式,它不能是任何变量。这里的case标签并不是把语句列表划分成几个部分,它们只是确定语句列表的进入点。

switch语句中的break语句

如果在switch语句中使用break语句,执行流会立即跳到语句列表的末尾,break语句的实际效果是把语句列表划分成不同的部分。

continue在switch语句种不起任何作用。

default语句

default:

如果表达式的值与所有的case标签都不匹配,可以在任何一个可以出现case语句的位置添加一个default语句

goto 语句

goto 语句标签

要使用goto 语句你必须在你希望跳转的语句前面加上语句标签,语句标签就是标识符后面加个冒号(:)

goto 语句很适合一种情况——跳出多层嵌套循环,由于break语句只能影响它的最内层循环,要想立即从深层嵌套的循环中退出,使用goto语句效果和好

while(conditional1){

while(conditional1){

while(conditional3){

if(some disater)

goto quit;

}

}

}

quit: ;

要想在这种情况下避免使用副作用颇多的goto语句,有两种解决方式:

-第一个方案是当你希望退出所有循环时设置一个标志状态,但这个标志状态在每个循环中都要测试

enum

{

EXIT,

OK

} status;

while(status == ok && conditionl1)

{

while(status == ok && condition2)

{

while(condition3)

{

if(some disater)

{

status = EXIT;

break;

}

}

}

}

-另外一个方案是把所有的循环放到一个单独的桉树里面,当"灾难"降临到最内层循环时,可以使用return语句离开该函数。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值