c语言离不开的分支和循环

分支和循环 在c语言中可以说是离开他们程序都是不行的。

那么接下来我就给初学者带来一篇初阶的分支和循环.....

分支

if,switch

循环

while,for,do while

1.什么是分支语句??

分支语句就是选择语句。

如果你给我点个关注,你就是我的粉丝。

如果你不给我点关注,你就不是我的粉丝。

这就是选择

1.1  if语句

那if语句的语法结构是怎么样的呢??

if(表达式)
   语句1; 
else
   语句2;
 


多分支
if(表达式)
    语句1;
slse if(表达式2)
    语句2;
else
    语句3;

括号里的表达式为真则执行括号中的语句。

在c语言中

0表示假,非0表示真。

1.2  switch语句

switch也是一种分支语句,常用于多分支情况

比如:

输入1:输出星期一

输入2,输出星期二

输入3:输出星期三

如果我写成if,else if,else  if的形式太复杂,那我们就得有更好的方法

这就是switch

switch(整形表达式)
{
语句块;
}

语句块是什么呢?
 

case 整形常量表达式;
  语句;

1.2.1  在switch语句中的 break

在switch语句中,我们没办法直接实现分支,搭配break使用才能实现真正的分支

比如:
 

#include<stdio.h>
int main()
{
int day=0;
switch(day)
{
case 1:
     printf("星期一");
     break;
case 2:
     printf("星期二");
     break;
case 3:
     printf("星期三");
     break;
}
return 0;
}

有时候我们需求变了,输入1~3输出星期1~3

输入6和7,输出放假

所以我们的代码就变成了:
 

#include<stdio.h>
int main()
{
int day=0;
switch(day)
{
case 1:
     printf("星期一");
     break;
case 2:
     printf("星期二");
     break;
case 3:
     printf("星期三");
     break;
case 6:
case 7:
     printf("周末");
     break;
}
return 0;
}

break语句的效果就是要把语句列表划分为不同的分支部分。

1.2.2  default子句

如果表达的值与所有的case标签的值不配怎么办??其实也没什么,结构就是所以的语句被跳过而已,程序并不会被终止,也不会报错,因为这种情况在c中并不认为是个错误。

但是,如果你并不想忽略不匹配的值,该怎么办呢???!!!default的出现就很好的解决了你的问题。

#include<stdio.h>
int main()
{
int day=0;
switch(day)
{
case 1:
     printf("星期一");
     break;
case 2:
     printf("星期二");
     break;
case 3:
     printf("星期三");
     break;
case 6:
case 7:
     printf("周末");
     break;
default:
     break;
}
return 0;
}

2.循环语句

while,for,do while

2.1.1  while语句中的break和continue

break介绍

在循环中遇到break,就停止后后期的所以的循环,直接循环终止。

所以:break在while中是用于永久终止循环的。

continue介绍

continue是用于终止本次循环的,也就是本次循环中continue后边的代码不会再执行,而是直接跳到while语句的判断部分,进行下一次的循环入口判断。

2.2  for循环

2.2.1  语法

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

{

循环语句;

}

表达式1:为初始化部分,用于初始化循环变量。

表达式2:条件判断部分,用于判断循环时候终止。

表达式3:为调整部分,用于循环变量的调整


for和while循环的三个部分,由于风格问题,使得while的三个部分偏离较大。

所以for的风格更胜一筹,for的使用频率也更高。

2.2.2   break和continue在for循环中

和while中是一样的规则

2.3  do...while()循环

do 

{

循环语句;

}while(表达式);

2.3.2  do语句的特点

循环至少执行一次,使用的场景有限,所以不是经常使用

2.3.3  do...while循环中的break和continue

和上述循环使用方法一样

3.  goto语句

c语言提供了可以随意滥用的goto语句和标记跳转的标号。

从理论上讲,goto语句是没有必要的,实践中goto语句也可以很容易的写出代码。

但是某些场合下,goto语句还是挺有用的,最常见的用法就是终止程序在某些深度嵌套 的结构的处理过程。例如:一次跳出两次循环或者多次循环

break只能跳出一次循环,是达不到效果的。

感谢大家的阅读,希望对大家有所帮助

猜你喜欢

转载自blog.csdn.net/cnjdd/article/details/131464681
今日推荐