表示式是使用運算子連線起來的式子,C語言中的表示式有以下幾種:
1、算數運算子 + - * / %
2、賦值運算子 += -= *= /= %=
3、自增、自減 ++ ——
a++為先使用a,然後在進行a=a+1的運算,而++a為先a=a+1,然後再使用a,這個時候a的值已經不是原來的a了,而是a+1。
int a=1;(a++)*(a++)*(a++)*(a++)的結果是24,在進行完上式之後a的值是5。
4、關係運算符(比較運算子) < > >= <= == != 關係運算結果為真(1)或假(0),即成立或不成立,對或者錯,開或關。
計算機返回表示式成立與否很標準:1(真);0(假)
5、邏輯運算子 && || ! 表示式1 邏輯運算子 表示式2。
&& 表示式1和表示式2同時成立,即同時為1時返回值為1,否則返回0,也就是假。
|| 表示式1和表示式2中有一個成立,則返回值為真,返回1,否則返回0,即假。
! !表示式1 如果表示式成立則返回假也就是0,如果不成立則返回真即1。
!的優先順序比較高,僅此於()。
6、位運算子 & | >> <<
a<
7、三目運算子 表示式1?表示式2:表示式3 c=a>b?a:b意思是如果a>b,那麼c=a,否則c=b。相當於if判斷。
8、sizeof(表示式)用來獲取表示式結果的型別在記憶體中儲存所佔用的位元組數,sizeof()的結果是unsigned long ,在使用printf列印時佔位符是%lu。
不同的運算子有不同的優先順序(後面的數字表示優先順序,數字越小,優先順序越高):
() 0 最高
! 1
+ - * / % 2
> < >= <= == != 3
&& 4
|| 5
+= -= *= /= %= 6
= 7 最低
如果不知道優先順序的等級,就使用括號括起來,這樣不但可以保證運算結果正確,也可以使邏輯關係清楚易讀。
以下是上面知識的一些使用:
奇數的表示:int a=0; a%2==1
偶數的表示: int b=0; b%2==0
a/b的結果是a/b的商,a%b的結果為a/b的餘數。
兩位數的十位數和各位數的表示:int a=23;b=a/10表示a的十位數的數字。c=a%10表示a的各位數。
短路:在一個邏輯表示式中,如果存在||運算,且||運算子前面的邏輯結果為1,則整個邏輯表示式的結果肯定是1,這個稱為短路;
斷路:在一個邏輯表示式中,如果存在&&運算,且&&運算子前面的邏輯結果為0,則整個邏輯表示式的結果必然為0,這個稱為斷路;
c語言表達的正確方式
#include
main ()/*這是主函式 程式的執行都是從這裡開始 定義函式 可以定義又返回值得函式,也可以無 返回值 但要在main 前加void ,這裡是預設無返回值*/
#include
main ()
{
int i,n,sum,t;
sum=0;
printf(“please input n \n”);
scanf(“%d”,&n);
for(i=1,i<=n,i++)
sum=sum+i;
printf(“sum=%d”,sum);
}