Operatörler, bir değer veya değişken üzerinde çalışan sembollerdir. Örneğin: – çıkarma işlemini gerçekleştiren bir operatördür.
C, çeşitli işlemleri gerçekleştirmek için geniş bir operatör yelpazesine sahiptir.
Bu makalede, örnekler yardımıyla C programlamadaki farklı operatörleri öğreneceksiniz.
C Aritmetik Operatörler
Operatör | Operatörün Anlamı |
+ | toplama |
– | çıkarma |
* | çarpma |
/ | bölme |
% | bölümden kalan |
Örnek 1: Aritmetik Operatörler
// Aritmetik Operatörlerin Çalışması
#include <stdio.h>
int main()
{
int a = 14,b = 4, c;
c = a+b;
printf("a+b = %d \n",c);
c = a-b;
printf("a-b = %d \n",c);
c = a*b;
printf("a*b = %d \n",c);
c = a/b;
printf("a/b = %d \n",c);
c = a%b;
printf("a'nin b'ye bölümünden kalan = %d \n",c);
return 0;
}
Çıktı:
a+b = 18
a-b = 10
a*b = 56
a/b = 3
a'nin b'ye bölümünden kalan = 2
Operatörler +
, -
, *
beklediğiniz gibi sırasıyla toplama, çıkarma ve çarpma işlemlerini hesaplar.
Normal hesaplamada, 14/4 = 3.5 ‘tur. Ancak programdaki çıktı 3’tür.
Çünkü her iki a ve b değişkeni de tam sayılardır. Bu nedenle çıktı da bir tam sayıdır. Derleyici ondalık noktasından sonraki terimi saymaz ve 3.5 yerine 3 gösterir.
%
operatörü kalanı hesaplar. a=14
‘ün b=4
ile bölümünden kalan 2’dir. %
operatörü sadece tam sayılarla kullanılabilir.
C Artırma ve Azaltma Operatörleri
C programlama, bir sabit veya değişken değerini ++
ile 1 artırma ve --
ile 1 azaltma operatörüne sahiptir.
Arttırma değeri ++
1 arttırır, azaltma --
ise değeri 1 azaltır. Bu iki operatör tekli operatörlerdir, yani sadece tek bir işlenen üzerinde çalışırlar.
Örnek 2: Artırma ve Azaltma Operatörleri
// Artırma ve Eksiltme Operatörlerinin Çalışması
#include <stdio.h>
int main()
{
int a = 8, b = 88;
float c = 8.5, d = 88.5;
printf("++a = %d \n", ++a);
printf("--b = %d \n", --b);
printf("++c = %f \n", ++c);
printf("--d = %f \n", --d);
return 0;
}
Çıktı:
++a = 9
--b = 87
++c = 9.500000
--d = 87.500000
Burada ++
ve --
operatörleri önek olarak kullanılmıştır. Bu iki operatör ayrıca a++
ve a--
olarak da kullanılabilir.
C Atama Operatörleri
Bir değişkene değer atamak için atama operatörü kullanılır. En yaygın atama operatörü =
Operatör | Örnek | Aynı Sonuç |
= | a = b | a = b |
+= | a += b | a = a+b |
-= | a -= b | a = a-b |
*= | a *= b | a = a*b |
/= | a /= b | a = a/b |
%= | a %= b | a = a%b |
Örnek 3: Atama Operatörleri
// Atama Operatörlerinin Çalışması
#include <stdio.h>
int main()
{
int a = 6, c;
c = a; // c = 5
printf("c = %d\n", c);
c += a; // c = 12
printf("c = %d\n", c);
c -= a; // c = 6
printf("c = %d\n", c);
c *= a; // c = 36
printf("c = %d\n", c);
c /= a; // c = 6
printf("c = %d\n", c);
c %= a; // c = 0
printf("c = %d\n", c);
return 0;
}
Çıktı:
c = 6
c = 12
c = 6
c = 36
c = 6
c = 0
C İlişkisel Operatörler
İlişkisel bir operatör, iki işlenen arasındaki ilişkiyi kontrol eder. İlişki doğruysa 1 döndürür; ilişki yanlışsa, 0 değerini döndürür.
Operatör | Operatörün Anlamı | Örnek |
== | Eşittir | 7 == 3 0 olarak değerlendirilir. |
> | Büyüktür | 7 > 3 1 olarak değerlendirilir. |
< | Küçüktür | 7 < 3 0 olarak değerlendirilir. |
!= | Eşit değil | 7 != 3 1 olarak değerlendirilir. |
>= | Büyük veya eşit | 7 >= 3 1 olarak değerlendirilir. |
<= | Küçük veya eşit | 7 <= 3 0 olarak değerlendirilir. |
Örnek 4: İlişkisel Operatörler
// İlişkisel Operatörlerin Çalışması
#include <stdio.h>
int main()
{
int a = 7, b = 7, c = 12;
printf("%d == %d sonuc %d \n", a, b, a == b);
printf("%d == %d sonuc %d \n", a, c, a == c);
printf("%d > %d sonuc %d \n", a, b, a > b);
printf("%d > %d sonuc %d \n", a, c, a > c);
printf("%d < %d sonuc %d \n", a, b, a < b);
printf("%d < %d sonuc %d \n", a, c, a < c);
printf("%d != %d sonuc %d \n", a, b, a != b);
printf("%d != %d sonuc %d \n", a, c, a != c);
printf("%d >= %d sonuc %d \n", a, b, a >= b);
printf("%d >= %d sonuc %d \n", a, c, a >= c);
printf("%d <= %d sonuc %d \n", a, b, a <= b);
printf("%d <= %d sonuc %d \n", a, c, a <= c);
return 0;
}
Çıktı:
7 == 7 sonuc 1
7 == 12 sonuc 0
7 > 7 sonuc 0
7 > 12 sonuc 0
7 < 7 sonuc 0
7 < 12 sonuc 1
7 != 7 sonuc 0
7 != 12 sonuc 1
7 >= 7 sonuc 1
7 >= 12 sonuc 0
7 <= 7 sonuc 1
7 <= 12 sonuc 1
C Mantıksal Operatörler
Mantıksal işaret içeren bir ifade, ifadenin doğru veya yanlış olmasına bağlı olarak 0 veya 1 döndürür.
Operatör | Operatörün Anlamı | Örnek |
&& | Ve. Yalnızca tüm işlemler doğruysa doğrudur. | c = 7 ve d = 3 ise, ifade((c==7) && (d>7)) 0’a eşittir. |
|| | Veya. Yalnızca işlemlerden biri doğruysa doğrudur. | c = 7 ve d = 3 ise, ifade((c==7) || (d>7)) 1’e eşittir. |
! | Değil. Yalnızca işlenen 0 ise doğrudur. | c = 7 ise, ifade!(c==7) 0’a eşittir. |
Örnek 5: Mantıksal Operatörler
// Mantıksal Operatörlerin Çalışması
#include <stdio.h>
int main()
{
int a = 5, b = 5, c = 10, sonuc;
sonuc = (a == b) && (c > b);
printf("(a == b) && (c > b) = %d \n", sonuc);
sonuc = (a == b) && (c < b);
printf("(a == b) && (c < b) = %d \n", sonuc);
sonuc = (a == b) || (c < b);
printf("(a == b) || (c < b) = %d \n", sonuc);
sonuc = (a != b) || (c < b);
printf("(a != b) || (c < b) = %d \n", sonuc);
sonuc = !(a != b);
printf("!(a != b) = %d \n", sonuc);
sonuc = !(a == b);
printf("!(a == b) = %d \n", sonuc);
return 0;
}
Çıktı:
(a == b) && (c > b) = 1
(a == b) && (c < b) = 0
(a == b) || (c < b) = 1
(a != b) || (c < b) = 0
!(a != b) = 1
!(a == b) = 0