当前位置:网站首页 > Haskell函数式编程 > 正文

编程入门基础知识 那些符号是什么(编程入门基础知识 那些符号是什么)



第二节 基本运算符

    3.2.1 算术运算符

    内容:

    运算符号名称目数优先级结合性作用+加双目4自左至右求两操作数的和-减双目4自左至右求两操作数的差*乘双目3自左至右求两操作数的积/除双目3自左至右求两操作数的整数商%求模双目3自左至右求两操作数的余数+求正单目2自右至左求操作数-求负单目2自右至左求操作数的负数++自增单目2操作数自增1--自减单目2操作数自减1

    注意:

    (1)对于“/”运算,如果两个操作数中有实型,则运算结果为实型;如果两个均为整型,则运算结果为整型(即实型除去小数部分)。

    (2)对于“%”运算,参与操作数的两个操作数必须为整型,其中被模除数不能为0,其结果的正负性与被模除数一致。

    (3)对于自增、自减运算分为前置与后置两种,前置将优先自增减,后置则反之。

    【程序现场】3-2-1

     #include<stdio.h>

     int main(void)

     {

       printf("%d + %d = %d ",4,3,4+3);

       printf("%d - %d = %d ",4,3,4-3);

       printf("%d * %d = %d ",4,3,4*3);

       printf("%d / %d = %d ",4,3,4/3);

       printf("%d / %d = %f ",4,3,4/3);

       printf("+%d = %d ",4,+4);

       printf("-%d = %d ",3,-3);

       printf(" ");

       

       int a=10,b=10;

       printf("++a = %d ",++a);

       printf("b++ = %d ",b++);

       printf("b = %d",b);

       

      return 0;

     }

    3.2.2 赋值运算符

    作用:将右边表达式的值赋给左边的变量。

    内容:

    运算符号名称目数优先级结合性作用=赋值双目14自右至左将右边赋值给左边+=——双目14自右至左将右表达式的值与左操作数相加并赋值-=——双目14自右至左将右表达式的值与左操作数相减并赋值*=——双目14自右至左将右表达式的值与左操作数相乘并赋值/=——双目14自右至左将右表达式的值与左操作数相除并赋值%=——双目14自右至左将右表达式的值与左操作数相模除并赋值<<=——双目14自右至左将左操作数左移右表达式的值次>>=——双目14自右至左将左操作数右移右表达式的值次&=——双目14自右至左将右表达式的值与左操作数按位与并赋值^=——双目14自右至左将右表达式的值与左操作数按位异或并赋值|=——双目14自右至左将右表达式的值与左操作数按位或并赋值

    注意:

    (1)赋值表达式可以与其他表达式进行嵌套。

    【程序现场】3-2-2

     #include<stdio.h>

     int main(void)

     {

       int a=4+2*3;

       printf("a = %d ",a);

       a += 1+2;

       printf("a = %d ",a);

       a -= 1+2;

       printf("a = %d ",a);

       a *= 1+2;

       printf("a = %d ",a);

       a /= 2;

       printf("a = %d ",a);

       a %= 9;

       printf("a = %d ",a);

       a >>= 2;

       printf("a = %d ",a);

       a <<= 2;

       printf("a = %d ",a);

       printf(" ");

       

       a = 5;

       a &= 2; //101 & 010

       printf("a = %d ",a);

       a ^= 2; //101 ^ 010

       printf("a = %d ",a);

       a |= 2; //101 | 010

       printf("a = %d ",a);

       printf(" ");

       

      return 0;

     }

    3.2.3 逗号运算符

    内容:

    运算符号名称目数优先级结合性作用,逗号双目15自左至右将各表达式依次连接

    注意:

    (1)逗号表达式可以嵌套,与其他表达式产生多种多样的组合。

    (2)多个逗号表达式其返回值是最右边表达式的值。

    【程序现场】3-3-3

     #include<stdio.h>

     int main(void)

     {

       int a;

       4+5,a=4;

       printf("a = %d ",a);

       printf("a = %d ",a=4+5,a*2,9-5);

       

      return 0;

     }

    3.2.4 条件运算符

    内容:

    运算符号名称目数优先级结合性作用? :条件运算符三目13自右至左选择性执行第二或三个表达式

    用法:表达式1 ? 表达式2 : 表达式3

    规则:如果表达式1的值为非0,则执行并返回表达式2及值,否则执行并返回表达式3及值。

    注意:

    (1)虽然条件运算符的判断及执行顺序为:表达式1->表达式2或表达式1->表达式3,但结合性为自右至左,所以在进行嵌套等操作时优先执行右边的表达式中的内容。

    【程序现场】3-2-4

     #include<stdio.h>

     int main(void)

     {

       int a,b;

       a = 1-4 ? 1 : 2 ;

       printf("a = %d ",a);

       a = 4-4? b=1 : 2-1? b=2: 3;

       printf("a = %d ",a);

       printf("b = %d ",b);

       

      return 0;

     }

    3.2.5 关系运算符

    内容:

    运算符号名称目数优先级结合性作用<小于双目6自左至右判断前操作数是否小于后操作数<=小于等于双目6自左至右判断前操作数是否小于等于后操作数>大于双目6自左至右判断前操作数是否大于后操作数>=大于等于双目6自左至右判断前操作数是否大于等于后操作数==等于双目7自左至右判断前操作数是否等于后操作数!=不等于双目7自左至右判断前操作数是否不等于后操作数

    注意:

    (1)在C语言中真为非零,假为零。而关系运算符判断的真结果为1,假为0。

    【程序现场】3-3-5

     #include<stdio.h>

     int main(void)

     {

       printf("%d < %d = %d ",1,2,1<2);

       printf("%d <= %d = %d ",1,2,1<=2);

       printf("%d > %d = %d ",1,2,1>2);

       printf("%d >= %d = %d ",2,2,2>=2);

       printf("%d == %d = %d ",1,2,1==2);

       printf("%d != %d = %d ",1,2,1!=2);

       

      return 0;

     }

    3.2.6 逻辑运算符

    内容:

    运算符号名称目数优先级结合性作用!逻辑非单目2自右至左将操作数的真假取反&&逻辑与双目11自左至右将两操作数相与||逻辑或双目12自左至右将两操作数相或

    注意:

    (1)逻辑非的运算规则是:将非零的操作数返回0值,将值为零的操作数返回1值。

    (2)逻辑与的运算规则是:当两操作数都为真时,结果为真;否则为假。当左操作数为假时,将不执行右表达式。

    (3)逻辑与的运算规则是:至少一个操作数都为真时,结果为真;否则为假。当左操作数为真时,将不执行右表达式。

    【程序现场】3-3-6

     #include<stdio.h>

     int main(void)

     {

       printf("!%d = %d ",1,!1);

       printf("%d && %d = %d ",0,2,0&&2);

       printf("%d || %d = %d ",0,2,0||2);

       printf(" ");

       

       int a,b=10,c=10;

       a=1 && ++b || c--;

       printf("a = %d ",a);

       printf("b = %d ",b);

       printf("c = %d ",c);

     ​

      return 0;

     }

    3.2.7 位运算符

    内容:

    运算符号名称目数优先级结合性作用&按位与双目8自左至右将两操作数的二进制数相与|按位或双目10自左至右将两操作数的二进制数相或^按位异或双目9自左至右将两操作数的二进制数相异或~按位非单目2自右至左将操作数的二进制数取反<<左移双目5自左至右将操作数的二进制数左移>>右移双目5自左至右将操作数的二进制数右移

    注意:

    (1)左移时将最高位丢弃,最低位补0;右移时最低为丢弃,最高位不变。

    【程序现场】3-3-7

     #include<stdio.h>

     int main(void)

     {

       printf("%d & %d = %d ",9,3,9&3);

       printf("%d | %d = %d ",9,3,9|3);

       printf("%d ^ %d = %d ",9,3,9^3);

       printf("~%d = %d ",5,~5);

       printf("%d << %d = %d ",-5,2,-5<<2);

       printf("%d >> %d = %d ",-5,2,-5>>2);

     ​

      return 0;

     }

    到此这篇编程入门基础知识 那些符号是什么(编程入门基础知识 那些符号是什么)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

    版权声明


    相关文章:

  • sigmoid输出值(sigmoid函数输出)2025-03-01 11:54:07
  • canfd报文格式(can报文格式有哪几种)2025-03-01 11:54:07
  • max开窗函数(开窗函数使用)2025-03-01 11:54:07
  • 地铁支付方式怎么更换(支付宝地铁支付怎么修改支付方式)2025-03-01 11:54:07
  • 密码加密的方式有哪些(密码的加密与解密的方式)2025-03-01 11:54:07
  • canfd报文格式(can报文blf打开)2025-03-01 11:54:07
  • 速排小蚂蚁编辑器手机版官方下载(速排小蚂蚁编辑器的文章复制后格式乱掉)2025-03-01 11:54:07
  • bigboss源官网联系方式(bigboss源怎么用)2025-03-01 11:54:07
  • 支付方式有哪些(新加坡支付方式有哪些)2025-03-01 11:54:07
  • 报文格式有哪些(报文格式有哪些xml)2025-03-01 11:54:07
  • 全屏图片