C语言-----分支与循环

C的分支与循环

  • 分支语句 

   1.if语句

格式:

if(表达式) 

{

    .....//表达式的逻辑值为真所执行的语句。

}

   1.1 if...else语句

格式:

if(表达式)

{

      ...//表达式的逻辑值为真所执行的语句。

}else

{

      ...//表达式的逻辑值为假所执行的语句。

}

    1.2 if...else if..else语句

格式:

if(表达式1){...}

else if(表达式2){...}

     .......

else if(表达式n){...}

else{...}

   2.switch语句

格式:

switch()

{

    case 常量表达式1:语句或程序块1 break;

    case 常量表达式2:语句或程序块2 break;

    ...

    case 常量表达式n:语句或程序块n break;

    default:语句或程序块n+1

}

    3.嵌套分支

if嵌套

注意:悬挂else.         else始终与它前最近的if匹配。

实例:


#include <stdio.h>

int main()
{
      char isRain is Free;

      printf("是否有空?(Y/N):");
      scanf("%c", &isFree);
      getchar();   //过滤回车键
      printf("是否下雨?(Y/N):");
      scanf("%c", &isRain);

      if(isFree == 'Y')
            if(isRain == 'Y')
                  printf("记得带伞哦^_^\n");
      else
      {
             printf("女神没空!……\n")
       }
}//如果先输入Y在输入N,得到的结果不会是想要的结果。    


改正方法:

#include <stdio.h>

int main()
{
      char isRain is Free;

      printf("是否有空?(Y/N):");
      scanf("%c", &isFree);
      getchar();   //过滤回车键
      printf("是否下雨?(Y/N):");
      scanf("%c", &isRain);

      if(isFree == 'Y')
      {     if(isRain == 'Y')
                  printf("记得带伞哦^_^\n");
       }
      else
      {
             printf("女神没空!……\n")
       }
}


switch嵌套


switch(ch1) {
   case 'A': 
      printf("这个 A 是外部 switch 的一部分" );
      switch(ch2) {
         case 'A':
            printf("这个 A 是内部 switch 的一部分" );
            break;
         case 'B': /* 内部 B case 代码 */
      }
      break;
   case 'B': /* 外部 B case 代码 */
}

//看着有点绕,不太建议使用。


     4.if...else代替品

当在进行少量语句分支时可使用条件运算符?:代替if...else

实例:

#include<stdio.h>
 
int main()
{
    int num;
 
    printf("输入一个数字 : ");
    scanf("%d",&num);
 
    (num%2==0)?printf("偶数"):printf("奇数");
}


  • 环语句

    1.while循环 (入口条件循环)

格式:

while (表达式)

     {循环体}

    2.do...while循环 (出口条件循环) 

格式:

do

    {循环体}

while (表达式);

注:至少执行一次循环。 满足表达式执行循环。

    3.for循环

格式:

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

    {循环体}

来源:循环基本结构的结合,表达式1循环初始化、表达式2循环条件、表达式3循环调整。

实例:

#include <stdio.h>
int main()
{
      int count;
      for (count = 0; count < 10; count++)
      {
             printf("http://127.0.0.1/srt\n");
      }      return 0;}


    4.嵌套循环

实例1:

#include <stdio.h>

int main()
{
      int i,j;

      for(i = 0; i < 3; i++)
      {
            for(j = 0; j < 3; j++)
                 {
                        printf("i = %d, j =%d\n");
                  }
       }      return 0;
}


实例2:

#include <stdio.h>

int main()
{
	int i,j;

	for(i = 1; i <= 9; i++)
	{
		for(j = 1; j <= i; j++)
		{
			printf("%d*%d=%-2d  ", i, j, i * j);
		}
		putchar("\n");
	}
	return 0;
}

  • 控制语句

控制语句
描述
break语句终止循环或switch语句,程序流将继续执行紧接着循环或switch的下一条语句。
continue语句告诉一个循环体立刻停止本次循环迭代,重新开始下一次循环迭代。
goto语句将控制转移到被标记的语句。但是不建议在程序中使用goto语句。


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值