運算符與表達式

運算符與表達式

算數(shù)運算符:

實例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("輸入數(shù)字a的值:");

??? scanf("%d",&a);

??? printf("輸入數(shù)字b的值:");

??? scanf("%d",&b);

??? m=a>b?a:b; //將a和b比較,將較大的值賦值給b

??? printf("您輸入的數(shù)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[]){

??? //遵循算數(shù)優(yōu)先級,所以結果等于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 ;

}


逗號表達式不一定求出整個逗號表達上的試的值。

也不是逗號出現(xiàn)的地方都能構成逗號表達式,比如定義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個字節(jié)

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

??? //a占了4個字節(jié)

??? printf("a占用了%d字節(jié)\n",sizeofa);

??? //int類型占了4個字節(jié)

??? printf("int型占用了%d字節(jié)\n",sizeof(int));

??? //long

int類型占了4個字節(jié)

??? printf("long int型占用了%d字節(jié)\n",sizeof(longint));

??? //float類型占用了4個字節(jié)

??? printf("float型占用了%d字節(jié)\n",sizeof(float));

??? //double類型占用了8個字節(jié)

??? printf("double型占用了%d字節(jié)\n",sizeof(double));

??? //char類型占用了1個字節(jié)

??? printf("char型占用了%d字節(jié)\n",sizeof(char));

??? return0;

}


Sizeof是一種單目操作符,它并不是函數(shù),它用于計算變量或者某種類型的量在內存中所占用的字節(jié)數(shù)。用法:sizeof(類型或者變量名)它只針對數(shù)據類型,而不是針對變量。


條件運算符及表達式

條件表達式一般為:表達式1?表達式2:表達式3。運算符(?:)有三個操作數(shù),所以稱為三目運算符,它是c語言中唯一一個三目運算符。如果表達式1為真,則運算表達式2,整個條件表達式的值為表達式2的值;如果表達式1的值為假,則運算表達式3,那么整個條件表達式的值就為表達式3。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容