初识c语言————新手小白学习c语言的第二天————if和switch语句

                             今天学习的是c语言中的分支语句和循环语句_if和switch语句

目录:

  一.语句和表达式的区分

 二.c语言中的所有语句类型

 三.c语言中的分支语句

    1.if语句

    2.switch语句 

                      下面我们正式进入课题——c语言中的分支语句和循环语句_if和switch语句

一.语句和表达式的区分

     语句通常需要再末尾加有';',通常不会产生数值,是程序执行的必不缺少的部分;表达式通常不会在末尾加有';',但一定会产生数值

    正如上图所示表达式的主要用途就是进行计算,赋值和传参;而语句的主要用途就是进行控制流程和执行操作,看似两者差别很大,但是表达式和语句是可以相互转化的,表达式在句子末尾加上';'就是表达式语句,例如:c=a+b是一个表达式,而c=a+b;是一个表达式语句。

 二.c语言中的所有语句类型

    c语言中语句分为以下五大类型:1.表达式语句,2.函数调用语句,3.控制语句,4.复合语句,5.空语句。今天我们主要说的就是控制语句 

   空语句是仅由一个分号组成的语句,不执行任何功能:

while(a!=1);

    复合语句是由{}包裹的代码块,复合语句通常被视为一条语句

if(a>=0)
{
  a=10;
  a=100;
}

   表达式语句是进行算数运算,赋值的语句

c=a+b;

三.c语言中的分支语句

   1.if语句

     c语言中if语句主要有三种形式:单分支,双分支,多分支

    单分支形式:

#include <stdio.h>
 
int main()
{
  int a=0;
  if(0==a)
     return 0;
}

    双分支形式:

#include <stdio.h>
 
int main()
{
  int a=0;
  if(0==a)
     return 0;
  else
     rerurn 1;
}

     多分支形式:

#include <stdio.h>
 
int main()
{
  int a=0;
  if(0==a)
     return 0;
  else if(1==a)
     return 1;
  else 
     return 2;
}

   以上三个图片就是c语言中的三种if语句的形式,其中if后面中的括号内的句子就是表达式,单分支只用了if,双分支使用了if和else,多分枝使用了if和else和if_else。

   在使用if语句的同时我们也要注意:1.else是和最近的if相结合的;2.if后面如果跟随了代码块(多个语句)的话我们就应该把代码用大括号括起来,因为正常情况下一个if只能和一个语句适配;3.如果if后面的表达式的结果为真则返回‘1’,则程序执行,如果结果是假的则返回‘0’,则程序不执行

   建议:1.在使用if语句的时候括号内的如果要写a==1的时候最好写为1==a这个形式,这样方便于编译器纠错。

  练习:

  1.判断一个数是否为奇数。

#include <stdio.h>
 
int main()
{
  int a;
  scanf("%d",&a);
  if(a%2==1||a%3==0&&a!=0)
  printf("a是奇数");
  else
  printf("a不是奇数");
  return 0;
}

   注意:0是偶数;在a%3时不能错误使用赋值运算符‘=’,应当使用‘==’;‘&&’的优先级高于‘||’

   2.输入1~100内的所有奇数

#include <stdio.h>
 
int main()
{
  int a;
  for(a=1;a<=100;a++)
 {
  if(a%2==1||a%3==0)
  printf("%d\n",a);
 }
  return 0;
}
   2.switch语句

   switch语句的形式

#include <stdio.h>

int main()
{
  switch(整形表达式)
  {
    语句项:
  }
}

   所谓正型表达式就是结果为整形的表达式,不能是float或者double等类型,可以是字符类型,因为字符类型可以转换为整形的ascll码值

 其中语句项的形式

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

   break在switch语句中的应用:当某个语句项没有使用break的时候,那么将会执行这个语句项之后的语句。我们可以利用这一点可以用于:当switch语句中两个或多个语句项执行的结果一样的时候,只需写最后一个相同语句的将执行结果即可。例如下面的程序:当输入1或2的时候会直接执行3的语句。

case1:
case2:
case3:printf("ok");break;

   default在switch语句中的应用:在switch后面的整形表达式的结果没有和case后面的结果适配的时候default就发挥了作用,就执行default后面的语句

default:语句;break;

   练习 :

   请计算上面代码的m和n的最终值 (上面图片来自于网络)

   答案:m=5,n=3

                                      明天学习c语言中的分支和循环语句_while语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值