C# Değişkenler ve Veri Türleri
C# programlarında verileri kullanabilmek için bu verileri bilgisayar belleğinde saklamamız gerekir. Kullanıcının adı, yaşı, sınav notu veya bir işlemin sonucu gibi bilgiler değişkenlerde tutulur. Değişkenin türü ise hangi türde veri saklayacağını belirler.
Bu makalede C# değişkenlerinin nasıl tanımlandığını, temel veri türlerini, değişkenlere değer atamayı ve bu değerleri Console uygulamasında kullanmayı örneklerle öğreneceğiz.
1. Değişken Nedir?
Değişken, program çalışırken kullanılacak bir bilgiyi bellekte saklamak için verilen isimdir. Bir değişkenin içinde saklanan değer, programın ihtiyacına göre okunabilir veya değiştirilebilir.
Örneğin bir öğrencinin yaşını saklamak için yas, adını saklamak için ad isminde değişkenler tanımlayabiliriz.
int yas = 16;
string ad = "Zeynep";
Bu örnekte yas değişkeninde 16 sayısı, ad değişkeninde ise Zeynep metni saklanır.
2. Değişken Tanımlama ve Değer Atama
C# dilinde değişken tanımlarken önce veri türü, sonra değişkenin adı yazılır. Değişkene ilk değer verilecekse eşittir işaretinden sonra değer belirtilir.
veriTuru degiskenAdi = deger;
Örnek:
int sinif = 10;
string ders = "Bilişim Teknolojileri";
double ortalama = 84.5;
Değişken tanımlanırken int, string ve double veri türlerini; sinif, ders ve ortalama değişken adlarını belirtir. Eşittir işaretinin sağındaki değerler değişkenlere atanır.
Değişkeni önce tanımlayıp değerini daha sonra da atayabiliriz:
int puan;
puan = 90;
İlk satırda puan adında bir tam sayı değişkeni tanımlanır. İkinci satırda değişkene 90 değeri atanır.
3. C# Temel Veri Türleri
Her değişken belirli bir veri türüne sahiptir. Veri türü; değişkende hangi türde bir değer tutulacağını ve bu değerle hangi işlemlerin yapılabileceğini belirler.
| Veri türü |
Sakladığı veri |
Örnek |
| int |
Tam sayılar |
int yas = 16; |
| double |
Ondalıklı sayılar |
double boy = 1.72; |
| decimal |
Hassas ondalıklı sayılar |
decimal fiyat = 125.50m; |
| string |
Metinler |
string ad = "Mert"; |
| char |
Tek bir karakter |
char harf = 'A'; |
| bool |
Doğru veya yanlış bilgisi |
bool gectiMi = true; |
4. Tam Sayılar: int
int, kesirli kısmı olmayan tam sayıları saklamak için kullanılır. Yaş, sınıf seviyesi, öğrenci numarası ve sayma işlemlerinde kullanılabilir.
int yas = 16;
int ogrenciNumarasi = 245;
int kitapSayisi = 3;
int değişkenine tam sayı olarak yazılan değerler atanır. Örneğin 16 bir tam sayıdır. 16.5 gibi ondalıklı bir değer ise int türünde saklanamaz.
5. Ondalıklı Sayılar: double ve decimal
double, ondalıklı sayıları saklamak için kullanılan yaygın bir veri türüdür. Ölçüm, ortalama ve matematiksel hesaplamalarda kullanılabilir.
double boy = 1.72;
double sinavOrtalamasi = 86.5;
decimal de ondalıklı sayıları saklar ve özellikle para gibi hassas ondalık değerlerle yapılan işlemlerde tercih edilir. Decimal değerlerin sonuna m harfi eklenir.
decimal urunFiyati = 125.50m;
decimal bakiye = 2500.75m;
Türkçe sayı biçiminde ondalık ayıracı virgül olsa da C# kodunda ondalıklı sayılar yazılırken nokta kullanılır. Örneğin 86,5 yerine 86.5 yazılır.
6. Metinler: string
string, bir veya birden fazla karakterden oluşan metinleri saklamak için kullanılır. Ad, soyad, şehir, ders adı ve kullanıcıdan alınan yazılar string türünde tutulabilir.
string ad = "Elif";
string soyad = "Demir";
string sehir = "Ankara";
String değerler çift tırnak içinde yazılır. Metin değişkenlerini Console.WriteLine() ile ekrana yazdırabiliriz:
Console.WriteLine(ad);
Console.WriteLine("Öğrenci: " + ad + " " + soyad);
String değişkenleri + işaretiyle birleştirerek tek bir metin oluşturabiliriz.
7. Tek Karakter: char
char, yalnızca bir karakter saklamak için kullanılır. Bir harf, rakam veya sembol char türünde olabilir.
char sube = 'A';
char sembol = '?';
char değerleri tek tırnak içinde yazılır. string ile char arasındaki temel fark, string'in metinleri; char'ın ise tek bir karakteri tutmasıdır.
- char ilkHarf = 'E'; — tek karakter
- string isim = "Ece"; — bir metin
8. Doğru veya Yanlış: bool
bool veri türü yalnızca iki değer alabilir: true (doğru) veya false (yanlış). Bir koşulun gerçekleşip gerçekleşmediğini belirtmek için kullanılır.
bool dersGectiMi = true;
bool kayitliMi = false;
Bool değişkenler çoğunlukla if koşullarıyla birlikte kullanılır. Koşul ve karar yapıları sonraki makalelerde ayrıca ele alınabilir.
9. Değişkenin Değerini Değiştirme
Program çalışırken bir değişkene yeni bir değer atanabilir. Yeni değer atandığında değişkenin önceki değeri silinir ve son atanan değer saklanır.
int puan = 70;
Console.WriteLine(puan);
puan = 85;
Console.WriteLine(puan);
Ekran çıktısı:
70
85
İlk ekrana yazdırma işleminde puan 70'tir. Daha sonra değişkene 85 değeri atanır ve ikinci yazdırma işleminde yeni değer görüntülenir.
10. Değişken İsimlendirme Kuralları
Değişken adları, programın okunmasını kolaylaştıracak şekilde seçilmelidir. C# dilinde değişken adı oluştururken şu temel kurallara dikkat edilir:
- Değişken adı harf veya alt çizgi (_) ile başlamalıdır.
- Değişken adında boşluk kullanılmaz.
- Değişken adı sayı ile başlayamaz; ancak sayı adın devamında kullanılabilir.
- C# diline ait özel anahtar kelimeler değişken adı olarak kullanılamaz.
- Değişken adları, saklanan bilgiyi anlatacak şekilde seçilmelidir.
Geçerli ad örnekleri:
ad
ogrenciYasi
sinav_notu
urun2
Geçersiz ad örnekleri:
2urun
ogrenci adi
class
Birden fazla kelimeden oluşan değişken adlarında kelimeleri bitişik yazıp sonraki kelimenin ilk harfini büyük yazabiliriz. Örneğin ogrenciAdi ve sinavNotu.
11. Değişkenleri Ekrana Yazdırma
Bir değişkenin değerini görmek için Console.WriteLine() veya Console.Write() kullanılabilir.
string ad = "Mert";
int yas = 17;
Console.WriteLine("Ad: " + ad);
Console.WriteLine("Yaş: " + yas);
C# dilinde metin içine değişken yerleştirmenin bir diğer yolu string interpolation yöntemidir. Metnin başına $ işareti eklenir ve değişkenler süslü parantez içinde yazılır:
Console.WriteLine($"{ad} {yas} yaşındadır.");
İki yöntem de değişken değerlerini ekranda gösterebilir.
12. Uygulama: Öğrenci Bilgilerini Ekrana Yazdırma
Aşağıdaki örnekte farklı veri türleriyle öğrenci bilgileri tanımlanır ve konsol ekranına yazdırılır:
string ad = "Zeynep";
string soyad = "Yılmaz";
int yas = 16;
char sinifSubesi = 'A';
double notOrtalamasi = 87.5;
bool aktifOgrenciMi = true;
Console.WriteLine("Öğrenci Bilgileri");
Console.WriteLine("Ad Soyad: " + ad + " " + soyad);
Console.WriteLine("Yaş: " + yas);
Console.WriteLine("Şube: " + sinifSubesi);
Console.WriteLine("Not Ortalaması: " + notOrtalamasi);
Console.WriteLine("Aktif öğrenci mi: " + aktifOgrenciMi);
Ekran çıktısı:
Öğrenci Bilgileri
Ad Soyad: Zeynep Yılmaz
Yaş: 16
Şube: A
Not Ortalaması: 87.5
Aktif öğrenci mi: True
Bu programda her değişken, sakladığı bilgiye uygun bir veri türüyle tanımlanmıştır. Ad ve soyad için string, yaş için int, şube harfi için char, not ortalaması için double ve öğrencinin aktif olup olmadığını belirtmek için bool kullanılmıştır.
13. var Anahtar Kelimesi
C# dilinde değişken tanımlarken var anahtar kelimesi de kullanılabilir. Bu durumda değişkenin türünü derleyici, atanan ilk değere bakarak belirler.
var sehir = "Ankara";
var sayi = 25;
var ortalama = 78.5;
Bu örnekte sehir string, sayi int ve ortalama double türünde olur. var kullanıldığında başlangıçta bir değer verilmelidir; çünkü C# türü bu değerden anlar.
Öğrenme aşamasında veri türünü açıkça yazmak, değişkende hangi türde bilgi saklandığını görmeyi kolaylaştırır. Bu nedenle temel örneklerde int, string ve benzeri türleri doğrudan kullanmak yararlıdır.
14. const ile Sabit Değer Tanımlama
Program boyunca değişmemesi gereken bir değeri tanımlamak için const anahtar kelimesi kullanılır. Sabit tanımlanırken ilk değer verilmelidir ve bu değer daha sonra değiştirilemez.
const double pi = 3.14;
Console.WriteLine(pi);
pi sabitine programın devamında yeni bir değer atanamaz. Değişmesi beklenmeyen değerlerde const kullanmak, yanlışlıkla değer değiştirilmesini önler.
15. Değişkenler ve Veri Türleri Kullanırken Dikkat Edilmesi Gerekenler
- Saklanacak bilgiye uygun veri türünü seçin.
- Metin değerlerini çift tırnak, tek karakterleri tek tırnak içinde yazın.
- Ondalıklı değerleri C# kodunda nokta kullanarak yazın.
- Para değerlerinde decimal kullanırken sayının sonuna m ekleyin.
- Değişkenlere anlaşılır ve görevini belirten isimler verin.
- Bir değişkene yeni değer atandığında önceki değerinin değişeceğini unutmayın.
16. Konunun Özeti
- Değişken: Programda kullanılacak veriyi bellekte saklamak için tanımlanan isimdir.
- int: Tam sayıları saklar.
- double: Ondalıklı sayılar için sık kullanılır.
- decimal: Hassas ondalıklı ve para değerleri için uygundur.
- string: Metinleri saklar.
- char: Tek bir karakter saklar.
- bool: true veya false değerlerinden birini saklar.
- var: Değişkenin türünün ilk değerden belirlenmesini sağlar.
- const: Sonradan değiştirilemeyen sabit değer tanımlar.
C# programlarında değişkenler verileri saklamamızı, veri türleri ise bu verilerin yapısını belirlememizi sağlar. Uygun türü seçip anlamlı değişken adları kullanarak programlarımızı daha anlaşılır hâle getirebiliriz. Kullanıcıdan alınan metinleri sayısal türlere dönüştürme konusu ise tür dönüşümleri başlığında ayrıca ele alınacaktır.
Öğrenciler için uygulama: Bir kitap için kitap adı, yazar adı, sayfa sayısı, fiyatı ve kitabın ödünçte olup olmadığını değişkenlerde saklayın. Ardından bu bilgileri Console ekranında düzenli biçimde gösterin.