运算符与表达式

运算符与表达式

算数运算符:

实例1:

#include


int main(intargc,char*argv[]){


    inta = 10,b = 20;

    intc = a + b;

    floattemp = 2.55;

    c = a +temp;

    printf("c的值%d\n",c);


    return0;

}




实例2:

#include


int main(int argc,char *argv[]){

    int a =3,b = 5;

    //取余

    int c = a% b;

    printf("%d\n",c);


    int d = -a% b;

    int f = -a% b;

    int x = a% - b;

    printf("%d\n%d\n%d\n",d,f,x);


}


实例3:

#include

int main(intargc,char*argv[]){


    inti;

    scanf("%d",&i);

    inta = i / 100;

    intb = i % 100 / 10;

    intc = i %100 %10;

    printf("%d\t%d\t%d\n",a,b,c);



    //如158取余200 = 158。

    printf("%d\n",(i%200));

}





关系运算符:

实例1:

#include

int main(intargc,char*argv[]){


    inta = 18,b = 19;

    printf("%d\n",a>b);

    printf("%d\n",a>=b);

    printf("%d\n",a

    printf("%d\n",a<=b);

    printf("%d\n",a==b);

    printf("%d\n",a!=b);


    return0;

}


赋值运算符表达式:

实例1:

#include

int main(intargc,char*argv[]){

    inta = 20,b =15;

    intc = a % b;

    printf("%d\n",c);

    inta1 = -20;

    intc1 = b+=a1;

    printf("%d\n",c1);


    inti = 50;

    printf("%p\t",i);

    printf("%p\n",&i);



    return0 ;

}



条件运算符及表达式:

实例1:

#include

int main(intargc,char*argv[]){


    inta,b,m;

    printf("输入数字a的值:");

    scanf("%d",&a);

    printf("输入数字b的值:");

    scanf("%d",&b);

    m=a>b?a:b; //将a和b比较,将较大的值赋值给b

    printf("您输入的数a为%d、b为%d\n最大的值是:%c=%d\n",a,b,m==a?'a':'b',m);

    return0;

}



逗号运算符:

实例1:

#include "stdio.h";

int main(intargc,char*argv[]){


    intx= 10,y = 15 ,z= 0;

    z= (x+10,y+10);

    printf("%d\n",z);


    return0;

}



实例2:

#include "stdio.h"

int main2(intargc,char*argv[]){

    //遵循算数优先级,所以结果等于18;

    inti;

    i=  20-2,9-6/4,8/2;

    printf("%d\n",i);


    //对比:

//结果等于4;

    inta;

    a= (20-2,9-6/4,8/2);

    printf("%d\n",a);

    return0 ;

}


逗号表达式不一定求出整个逗号表达上的试的值。

也不是逗号出现的地方都能构成逗号表达式,比如定义a,b,c,d几个变量其作用就只是变量之间的间隔符号。表达式中,例如:

表达式1,(表达式2,表达式3)这样就变成了嵌套的一种情况。逗号表达式1,表达式2,......,表达式n,整个逗号表达式就取表达式n的值。


Sizeof运算符:

#include "stdio.h"

int main(intargc,char*argv[]){


    inta= 10;

    doubleb= 3.14;

    //a*b占用了8个字节

    printf("a*b的值占用了%d字节\n",sizeof(a*b));

    //a占了4个字节

    printf("a占用了%d字节\n",sizeofa);

    //int类型占了4个字节

    printf("int型占用了%d字节\n",sizeof(int));

    //long

int类型占了4个字节

    printf("long int型占用了%d字节\n",sizeof(longint));

    //float类型占用了4个字节

    printf("float型占用了%d字节\n",sizeof(float));

    //double类型占用了8个字节

    printf("double型占用了%d字节\n",sizeof(double));

    //char类型占用了1个字节

    printf("char型占用了%d字节\n",sizeof(char));

    return0;

}


Sizeof是一种单目操作符,它并不是函数,它用于计算变量或者某种类型的量在内存中所占用的字节数。用法:sizeof(类型或者变量名)它只针对数据类型,而不是针对变量。


条件运算符及表达式

条件表达式一般为:表达式1?表达式2:表达式3。运算符(?:)有三个操作数,所以称为三目运算符,它是c语言中唯一一个三目运算符。如果表达式1为真,则运算表达式2,整个条件表达式的值为表达式2的值;如果表达式1的值为假,则运算表达式3,那么整个条件表达式的值就为表达式3。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容