計算の演算子
計算をするためにの演算子の取り扱い方を紹介します。
算術演算子とは、四則演算、余りを求めるための演算子
代入演算子は変数に値を代入するための演算子
インクリメント演算子 と デクリメント演算子
変数や数値などの値を比較する条件式に使われる演算子を比較演算子
複雑な条件を組み合わせて表すときに使うのが論理演算子
算術演算子とは、四則演算、余りを求めるための演算子です。
-
- 四則演算
加算 7+3
減算 7-3
乗算 7*3
除算 7/3
剰余算 7%3
- 四則演算
《 test008.c》
#include <stdio.h>
int main(){
printf(" 加 算 7+3 = %d \n", 7+3);
printf(" 減 算 7-3 = %d \n", 7-3);
printf(" 乗 算 7*3 = %d \n", 7*3);
printf(" 除 算 7/3 = %d \n", 7/3);
printf(" 剰余算 7%3 = %d \n", 7%3);
}
結果
定数の代わりに変数を使います。
-
- 四則演算
加算 7+3
減算 7-3
乗算 7*3
除算 7/3
剰余算 7%3
- 四則演算
《 test009.c》
#include <stdio.h>
int main(){
int x=7;
int y=3;
printf(" 加 算 7+3 = %d \n", x+y);
printf(" 減 算 7-3 = %d \n", x-y);
printf(" 乗 算 7*3 = %d \n", x*y);
printf(" 除 算 7/3 = %d \n", x/y);
printf(" 剰余算 7%3 = %d \n", x%y);
}
結果
代入演算子は変数に値を代入するための演算子です
-
- 四則演算
加算して代入 x+=y ・・・ 7+3と同じ
減算して代入 x-=y ・・・ 7-3と同じ
乗算して代入 x*=y ・・・ 7*3と同じ
除算して代入 x/=y ・・・ 7/3と同じ
余り
剰余算して代入 x%=y ・・・ 7%3と同じ
- 四則演算
《 test010.c 》
#include <stdio.h>
int main(){
int z=0,a1=7,a2=3,a3=7,a4=3,a5=7,a6=3;
int a7=7,a8=3,a9=7,a10=3;
printf(" 加 算 7+3 = %d \n", a1+=a2);
printf(" 減 算 7-3 = %d \n", a3-=a4);
printf(" 乗 算 7*3 = %d \n", a5*=a6);
printf(" 除 算 7/3 = %d \n", a7/=a8);
printf(" 剰余算 7%3 = %d \n", a9%=a10);
}
インクリメント演算子とデクリメント演算子は、整数の変数の値に1つ増加または減少するさせる演算子です。
-
- 変数の値に1増 X++
++X - 変数の値に1減 X--
--X
- 変数の値に1増 X++
《 test011.c》
#include <stdio.h>
int main(){
int x=30,y=50;
printf(" x = %d \n", x);
printf(" x = %d \n", ++x);
printf(" x = %d \n", x);
printf(" x = %d \n", x++);
printf(" x = %d \n", x);
printf(" y = %d \n", y);
printf(" y = %d \n", --y);
printf(" y = %d \n", y);
printf(" y = %d \n", y--);
printf(" y = %d \n", y);
}
結果
![](https://www.msyoukai.com/wp-content/uploads/2021/08/g0115-1-300x171.png)
変数や数値などの値を比較する条件式に使われる演算子を比較演算子といいます。
複数の条件を組み合わせたいときに使用し、真(式が正しい)または偽(式が正しくない)のどちらかの結果を返す。
-
- 等しい x==y
小なり x<y
大なり x>y
以下 x<=y
以上 x>=y
等しくない x!=y
- 等しい x==y
条件式や代入式はそれ自体で値を持っています。
-
-
- 条件が成立した場合 ・・・ 真 true 1
- 条件が成立しない場合 ・・・ 偽 false 0
-
《 test012.c 》
#include<stdio.h>
int main(){
int x = 7, y = 3;
printf(" 等しい x==y 結果 %d \n", x==y );
printf(" 小なり x<y 結果 %d \n", x<y );
printf(" 大なり x>y 結果 %d \n", x>y ) ;
printf(" 以下 x<=y 結果 %d \n", x<=y );
printf(" 以上 x>=y 結果 %d \n", x>=y );
printf(" 等しくない x!=y 結果 %d \n", x!=y ) ;
}
結果
《 test013.c 》
int main(){
int x=5;
printf(" AND 結果 %d \n",(x>=2)&&(x<7));
printf(" OR 結果 %d \n",(x==2)||(x==5));
printf(" NOT 結果 %d \n",!(x==5)) ;
}
結果
-
-
- (条件式) ? <式2> : <式3>
例
y=(x % 2) ? 0:1
- (条件式) ? <式2> : <式3>
-
《 test014.c 》
int main(){
int a=1,b=2,x = 0,y=0,yy=0,z=0;
char m[5];
x=7;
printf(" この値 %d は \n" , x);
printf(" 結果1 %s \n" , (x % 2)? "奇数": "偶数");
y=(x % 2) ? 0:1;
printf(" 結果2 %d \n",y);
yy=(x % 2) ? a:b;
printf(" 結果3 %d \n",yy);
z=(x % 2) ? a*x:b*x;
printf(" 結果4 %d \n",z);
strcpy( m, (x % 2)? "奇数": "偶数");
printf(" 結果5 %s \n",m);
}
結果