tft每日頭條

 > 生活

 > c語言基本算術運算符

c語言基本算術運算符

生活 更新时间:2024-09-28 22:14:27

C 語言的運算符包括算術運算符、關系運算符、邏輯運算符、位運算符、賦值運算符和其他運算符。

算術運算符

c語言基本算術運算符(語言的運算符之算術運算符)1

算術運算符

實例

請看下面的實例,C 語言中所有可用的算術運算符:

#include <stdio.h>

int main()

{

int a = 21;

int b = 10;

int c ;

c = a b;

printf("Line 1 - c 的值是 %d\n", c );

c = a - b;

printf("Line 2 - c 的值是 %d\n", c );

c = a * b;

printf("Line 3 - c 的值是 %d\n", c );

c = a / b;

printf("Line 4 - c 的值是 %d\n", c );

c = a % b;

printf("Line 5 - c 的值是 %d\n", c );

c = a ; // 賦值後再加 1 ,c 為 21,a 為 22

printf("Line 6 - c 的值是 %d\n", c );

c = a--; // 賦值後再減 1 ,c 為 22 ,a 為 21

printf("Line 7 - c 的值是 %d\n", c );

}

當上面的代碼被編譯和執行時,它會産生下列結果:

Line 1 - c 的值是 31

Line 2 - c 的值是 11

Line 3 - c 的值是 210

Line 4 - c 的值是 2

Line 5 - c 的值是 1

Line 6 - c 的值是 21

Line 7 - c 的值是 22

上面的例子,大部分很好理解。我們來講講需要注意的地方與難以理解的地方。

需要注意的是 / 除号 與 % 取餘号

/ 除号說明

Eg:

int a1 = 100;

int b = 30;

double c = a1 / b;

實際上是 c=3.000000的。為什麼不是3.333333呢。因為/ 除号 兩邊的數值都是整型,所以得的值也是整型,這裡我們隻是用double類型去接收而已。怎麼能得出正确的3.33333這個值呢。隻要把除數或被除數任何一個改成double類型即可,因為/除号在運算時,會自動把兩邊的數據由低類型轉換為高類型。 double 類型比int 類型高

Eg :

int a1 = 100;

double b = 30;

double c = a1 / b;

這樣就得出c=3.333333

double a1 = 100;

int b = 30;

double c = a1 / b;

也能得出正确值 。在計算機的運算過程中,會把int b轉為double 類型,再計算。

如 int b=100.5,是不是程序也會把b 轉成double ,答案是不會。這種是我們強制把double賦值給int,計算機不會自動把高類型轉為低類型。

% 取餘号 說明

% 取餘号 要求 兩邊的數據類型為int 類型。注意 % 取餘号隻針對于整型進行運算。就是取餘數

double‬ a1 = 100;

int b = 30;

int c = a1 % b;

這樣寫是錯誤的。編譯不過

++,-- 自增,自減符号的理解。

int a1 = 10;

int b = a;//b=11,a=11

int c = a ;//c=11,a=12

int d = ( a) ;//d=13,a=14

int e = c b;//e=22;c=12;

int f = b b;//f=24;b=12

其實很好理解。記住一句話 放前面自加1後再用。放後面用了後再自加1。

再來一個難。

int aa = 2;

int g = aa aa;//g=6;a=4

++在後面先用再自加1。aa=2參與計算(先用,就是用于計算),再aa自加1變成3;然後++aa,++在前面先自加1,aa變成了由3變成了4,再用(用于計算)。所以g=2+4=6;aa=4。

就這麼簡單。同理--也一樣。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved