C ile programlamaya başlangıç - 2

Merhabalar arkadaşlar . Bir önceki dersimizde C programlama diline giriş yaptık ve merhaba technopat yazan bir program yapmıştık. Hatırladığınız gibi, yazıyı ekrana basabilmek için printf komutunu kullanmıştık. Bugün de printf komutunun kaçış dizileri, değişken kavramı ve değişkenler. Son olarakta, klavyeden girilen verilerin okunmasından bahsedeceğim.

İlk olarak eski kodlarımızı bir hatırlayalım.

Kod:
#include <stdio.h>
int main()
{
printf("Merhaba Technopat");

getchar();
getchar();
return 0;
}

burada bir mesaj vermiştik. Ancak biz alt satırda yeni bir mesaj daha vermek istiyorum. Yani bizim programımız ilk satırda Merhaba Techopat , İkinci satırda ise "C ögreniyorum" yazsın istiyoruz. Evet düşündüğümüz printf komutunun altına bir printf komutu daha ekler içine de yeni mesajı yazarım.


Kod:
#include <stdio.h>
int main()
{
printf("Merhaba Technopat");
printf("C ogreniyorum");

getchar();
getchar();
return 0;
}

Yazdığımız kodlar doğrudur. Ancak, bu programın çıktısı aşağıdaki gibi olacaktır
ders2-1.fw.png

İşte burada printf komutunun kaçış dizeleri devreye giriyor. İlk serimizin ilk elemanı ( /n ) bir satır alta geçmek isteğimiz zaman kullanılır.


Kod:
#include <stdio.h>
int main()
{
printf("Merhaba Technopat\n");
printf("C ogreniyorum");

getchar();
getchar();
return 0;
}
ders2-2.fw.png


Bir diğer dizin elamanı ise ( \t ) 'dir. Bir tab uzunluğunda boşluk bırakır.
Kod:
#include <stdio.h>
int main()
{
printf("Merhaba Technopat\t");
printf("C ogreniyorum");

getchar();
getchar();
return 0;
}

ders2-3.fw.png


Son olarak ta \a 'dır . (\a)' ise bize bios sesi verir.

Arkadaşlar şimdi değişken konusuna giriş yapalım, Değişkenler nedir ? Bir niceliği ifade etmek için kullanılan sembolik ifadelerdir. Tek değişkenli bir denklemi göz önüne alalım. x+2 = 5 denklemi çözdüğümüzde x=3 ifadesini ortaya çıkar. Aslında ben denklemi ilk yazdığım andan beri x içinde 3 barındırıyordu. Bilgisayar bilimlerinde de olay aynısı değişkentipi sembolü dediğimde , compile etmeye başladığımda. Compiler gidiyor işletim sistemine diyor ki; Kardeşim benim programın bazı değişkenleri tutacak bana ram'den yer ayırtır. Ayrılan yere ya siz değer girersiniz yada programınız hesaplar oraya girer. Karışık gibi dursa da aşağıda ki örneklerde rahatça anlayacaksınız.

İlk değişken tipi tam sayıları tutacağımız int değişkten tipi. Nedir int değişken tipi ? İngilizce integer tamsayı anlamına geldiğinden dolayı kısaltmasıdır. Complier, int değimini gördüğünde ramden 4byte'lık yer açar ve biz oraya : -32767 den 32767'e kadar sayı girebiliriz. Hadi ilk programımız yazalım.
Kod:
#include <stdio.h>
int main()
{
    int ilksayim = 3;
    int ikincisayim = 3;
    printf("Ilk sayim :%d \nIkincisayi:%d",ilksayim,ikincisayim);
    getchar();
    getchar();
    return 0;
}

Burada dikkat edeceğimiz noktalar, İlk orak int diyerek değikenimizin tipimizi tamsayı (int) olarak belirledik ve onlara ilksayi ve ikincisayi ismini verdik. Sonra onlara 3 sayısı atadık. Önemli noktalardan bir diğeri ise değişkenin ekrana yazdırılması. C dilinde yazdırmak istediğimiz her değişken türüne göre yazdırma operatörü vardır. printf komutuna dikkat edersek %d ifadesini dikkat çekecektir. %d decimal yani ondalık sayı sistemini temsil eder. Yani bizim compilerimiz %d 'yi gördümü buraya tamsayı geleceğini düşünür ve tırnak işaretinden sonra virgül arar gelen değişkenin değerini basar. Yani Birinci %d ile 1. değişken , İkinici %d ile 2. değişken şeklinde de eşleştirir.

ders2-4.fw.png


Bir diğer veri türümüz ise char, char değişkeni 1 byte lık yani harf tutan değişkenlere denir. Tanımlaması char adiminilkharfi şeklindedir ve tek bir harf tutarlar ve bir harf atama yaparken, tek tırnak içinde yazılmalı. Printf'de kullanılacak olan operatörü ise %c dir. Hadi adımızın ilk harfi ve adımızdaki harf sayısını tutan bir program yazalım.
Kod:
#include <stdio.h>
int main()
{
    char ilkharf = 'b';
    int aduzunluğu = 5;
    printf("Adimin ilk harfi : %c\tadiminuzulugu:%d", ilkharf, aduzunluğu);
    getchar();
    getchar();
    return 0;
}
ders2-5.fw.png

Bir değişken veri türü ise float. Bu türdeki değişkenler kesirli sayıları tutmaktadır. Örnek vermek gerekirse, float pi=3.14; ve float veri türü ram üzerinde 4 byte yer ayırmaktadır. Printf de kullanılan operatörü ise %f 'dir
Kod:
#include <stdio.h>
int main()
{
    float pi = 3.14;
    printf("Pi sayisi %f'dir ",pi);
    getchar();
    getchar();
    return 0;
}
Bu programı çalıştırdığımızda. Virgülden sonraki sıfırların bir anlamı olmadığı için, aşağıdaki gibi sıfırlı bir şekilde yazacaktır.
ders2-6.fw.png

Eğer ki, biz sıfırlı görünmesini istemiyorsak. Operatörü üzerinde bir kaç değişiklik yapmak zorundayız.
Kod:
printf(pi sayisi %f'dir)
yerine
Kod:
printf("Pi sayisi %0.2f'dir");
eğer böyle yazarsak virgülden sonra 2 rakam yazar. Eğer %0.2f yerine %0.3 yazsaydık 3 rakam yazacaktı. Aşağıdaki örnekte %0.2f kullanılmıştır.
ders2-7.fw.png

Son veri türümüz ise double . Float ile aynıdır. Ancak, float 4byte yer tutarken double 8 byte yer tutar. Operatörü ise %f 'dir

Bugün ki son konumuz scanf'e geldik. Scanf 'i printf 'in ters fonksiyonu olarak düşünebilirsin. Nasıl ki printf'de ekrana basıyorsak scanf'de de ekrana yazılanları programa yazar. Scanf ile ilk programımız ile inceleyelim.
Kod:
#include <stdio.h>
int main()
{
    char ilkharf;
    int benimrakamım;
    double pi;
    float euler;
    printf("Bir harf giriniz");
    scanf("%c", &ilkharf);
    printf("Lütfen bir rakam giriniz");
    scanf("%d", &benimrakamım);
    printf("lütfen pi sayisini giriniz");
    scanf("%f", &pi);
    printf("Lütfen euler sayisini giriniz ");
    scanf("%f", &euler);
    getchar();
    getchar();
    return 0;
}

Dikkat ettiyseniz bu sefer değişkenlere değer atamadık, bunun sebebi ise değerlerini kullanıcıdan yani programa girilen değeri tutacak. Bu yüzden int benimrakamım diyerek ram üzerinden sadece yer ayırıyoruz. scanf kullanıma gelince, önce operatörünü yazdık, sonra & işareti koyuyoruz. &işareti c dilinde ramdeki adressini tutar. Değişkenin önüne yazıyoruz ki gelen veri gideceği yeri bilsin.

İyi çalışmalar. Bir sonraki derste görüşmek üzere
  • ders2-4.fw.png
    ders2-4.fw.png
    16,3 KB · Görüntüleme: 507
  • ders2-5.fw.png
    ders2-5.fw.png
    16,2 KB · Görüntüleme: 529
  • ders2-6.fw.png
    ders2-6.fw.png
    16,2 KB · Görüntüleme: 528
  • ders2-7.fw.png
    ders2-7.fw.png
    16,1 KB · Görüntüleme: 511
  • ders2-1.fw.png
    ders2-1.fw.png
    16,4 KB · Görüntüleme: 766
  • ders2-2.fw.png
    ders2-2.fw.png
    16,3 KB · Görüntüleme: 539
  • ders2-3.fw.png
    ders2-3.fw.png
    16,3 KB · Görüntüleme: 470
  • Beğen
İfadeler: 3 kişi

Yorumlar


Blog girdisi detayları

Ekleyen
byanigli
Okuma süresi
4 dakika okuma
Görüntüleme
839
Yorumlar
3
Son güncelleme

Genel kategorisindeki diğer girdiler

byanigli adlı kullanıcının diğer girdileri

Bu girdiyi paylaş

Geri
Yukarı