让你快速了解c语言的部分运算方法和表达方式

关系表达式

 1.关系运算符的作用:用来对两个数值进行比较的比较运算符。

2.c语言提供的六种关系运算符:

>(大于)

>=(大于或等于)
<(小于)<=(小于或等于)
==(等于)!=(不等于)

3.运算符的优先级:算数运算符>关系运算符>赋值运算符

4.关系表达式的值是一个逻辑值,即真或假

5.在c的关系运算中,1代表为真,0代表为假。

若变量a=3,b=2,c=1,则:

表达式a>b的值为1,

表达式a>b==c的值为真,即值为1 ,

表达式b+c<a的值为假,即值为0,

表达式a=b>c的值为1(b>c的值为真,即值为1,把1赋值给a,)

表达式a==b>c的值为假,即值为0

 注意:不能将关系运算符==误写成赋值运算符=。

 逻辑表达式

1.逻辑表达式的意义:用逻辑运算符将关系表达式或逻辑量连接起来的式子。 

 2.c语言中的三种逻辑运算符

运算符含义举例说明
&&逻辑与a&&ba和b都为真,结果才为真
||逻辑或a||ba和b中只要有一个为真,结果就为真
逻辑非!a若a为真,则!a为假。反之则!a为真。

3.逻辑运算符的优先级:||<&&<!

4.关系,算数,逻辑,赋值的优先级:!>算数>关系>&&>||>赋值运算符

5.举例:

若变量a=3,b=4,c=5,则:

a+b>c&&b==c的值为假,表达式的值为0

(根据运算符的优先级,先将a+b进行运算,然后将其值与c进行比较,同时将b==c进行比较,最后进行逻辑运算。)

6.在对逻辑表达式的求解中,并不是所有的逻辑运算符都被执行。

a||b+c&&b-c的值为真(因为a的值为1),不会进行后面的运算。 

if语句的三种形式 

一·if语句----单分支结构

 1.                    如果一个数大于0,,那么这个数就是正数

                        ↓         ↓        ↓                  ↓ 

                        if         a       >0            a为正数

                                if(a>0)         a为正数

    语法格式:          if(表达式)  {语句块}

 2.如果表达式的值为真,则执行语句块。在程序设计中处理选择问题的关键在于进行条件判断,如果满足某种条件,就进行相应的处理。

                                          ↓

                                      表达式→→→(假)→→输出

                                          ↓真

                                      语句块→→输出

#include<stdio.h>
int main()
{
       int a;
       scanf("%d",&a);
       if(a>0)
    {
       printf("%d是正数.\n",a);
    }
}
  

二.if 语句------双分支结构

1.语法格式:

                                   if(表达式)

                                   {

                                   语句块1                                                                                                         

                                   }

                                   else

                                  {

                                   语句块2

                                  }

表达式为真,则执行语句块1,否则执行语句块2.

double x,y;
double result;
printf("请输入被除数:");
scanf("%lf,&x);
printf("请输入除数:");
scanf("lf",&y);
result=x/y;
printf("两个数的商:%.2f\n",result);
if(y!=0)
{
   result=x/y;
   printf("两个数的商:%.2f\n",result);
}
eles
{
   printf("除数为0!\n");
}

三.if语句----多分支结构

1.用于对多个条件进行判断,从而进行多种不同的处理。

2.语法格式:

if(表达式1)  {语句块1}

else if(表达式2) {语句块2}

…………

else if(表达式n) {语句块n}

else {语句块m}

3.判断字符类型的条件

英文字母的判断条件:c>=‘a’&&c<=‘z’   ||  c>=‘A’&&c<=‘Z’   表达式1

数字字符的判断条件:c>=‘0’&&c<=‘9’  表达式2

include<stdio.h>
int main()
{
      char c;
      printf("input a character:");
      scanf("%c",&c);
      if(c>=‘a’ &&  c<=‘z’  ||  C>=‘A’  &&  c<=‘Z’)
          printf("It is a English character.\n");
      else if(c>=‘0’&& c<=‘9’)
          printf("It is a digit character.\n");
      else
          printf("It is other character.\n");
      return 0;
}

if语句的嵌套

1.遵守临近原则:else和if成对出现,并且总是 与最近的未配对的if配对

2.在if后面使用{}将要执行的语句括起来,避免程序代码混乱。

3.真确使用if语句的嵌套

eg:给出变量y,当x=o时,y的值为0;当x>o时,y的值为1;当x<0时,y的值为-1

if的单分支结构

int main()
{    intx,y;
     printf("please input x:");
     scanf("%d",&x);
     if(x<0)   y=-1;
     if(X==0)  y=0;
     if(x>0)   y=1;
     printf("x=%d,y=%d\n",x,y);
     return 0;
}

if的多分支结构

int main()
{    int x,y;
     printf("please input x:");
     scanf("%d",&x);
     if(x<0)   y=-1;
     else if(x==O) y=0;
     else y=1;
     printf("x=%d,y=%d\n",x,y);
     return 0;
}

嵌套在if语句中

int main()
{    int x,y;
     printf("please input x:");
     scanf("%d",&x);
     if(x!=0)
        if(x<0)    y=-1;
        else        y=1;
     else    y=0;
   printf("x=%d,y=%d\n",x,y);
   return 0;
}

嵌套在else语句中

int main
{   int x,y;
    printf("please input x:");
    scanf("%d",&x);
    if(x<0) 
       y=-1;
    else
       if(X==o)   y=0;
       else       y=1;
   printf("x=%d,y=%d\n",x,y);
   return 0;
}
   

switch语句

1.switch 语句的作用:

switch语句是多分支条件判断语句ssw它能够根据表达式的值从多个分支中选择一个执行的分支。

2.switch语句的一般形式

   switch(表达式)                  表达式为整数,字符,枚举类型

   {

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

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

        …………

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

        default:语句块n+1

}

3.执行流程:

1)首先计算表达式的值

2)与各个case后的常量表达式的值比较,当表达式的值与某个常量表达式的值相等时,即执行其后的语句,然后不在进行判断,继续执行后面所有case后的语句。在每个case语句后加上break,则不会继续执行后面所有的case语句。

3)如果表达式的值与所有的case后的常量表达式均不相同,则执行default后的语句。

4.注意:

1)表达式的值为整数,字符,枚举类型。

2)常量表达式的值必须互不相同。

3)case后面的常量表达式只起标号的作用,而不起条件判断的作用。

4)语句块可以是一条语句,或复合句,可以不用花括号

5)多个case标号可以共用一组执行语句。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值