Linux Mint 18 Üzerinde C Denemeleri


001 - Merhaba Dünya

#include <stdio.h>	

int main()                           
{									 
 printf("Merhaba Dünya\n");      
 return 0;                        
}   							  
// #include <stdio.h> ile programımıza stdio.h başlık dosyasını ilave ettik
// int main() ile temel fonksiyonumuzun çıkış değerinin tamsayı (integer) olacağını bildirmiş olduk
// main() fonksiyonu temel fonksiyonumuz yani tüm programın yürütüldüğü asıl fonksiyonumuzdur
// printf("Merhaba Dünya\n"); ile ekrana "Merhaba Dünya" yazdırdık ve "\n" ile alt satıra geçiş yaptık
// return 0; ile Programın döndürdüğü çıkış değerini 0 olarak atamış olduk


/*
Programla ilgili yorumlarınızı yukarıdaki ve
aşağıdaki iki işaretin arasına yazabilirsiniz.
*/

// "Tek satırlık yorumlar için // işaretini de birçok derleyicide kullanabilirsiniz."
// 001.c dosyasıdır.

Programımızı konsolda gcc derleyicisi ile derleyip, çalıştırabiliriz:
Merhaba Dünya


Geany veya benzeri bir program da derleme için kullanılabilir. Program derlendikten sonra yeni dosya oluşturulmuş olacaktır.
Geany ile Merhaba Dünya


Ayrıca geany programı ile kaynak kodunuzu direkt çalıştırmayı deneyebilir veya derleme-inşa-çalıştırma komutlarını dilediğiniz şekilde düzenleyebilirsiniz.
Geany_c_derleme geany derleme-inşa-çalıştırma


C ile İlgili Bilinmesi Gerekenler:
* Büyük-küçük harf duyarlılığı vardır. Yani "D" ile "d" aynı kabul edilmez.
* Programda kullanılan sabitler ve değişkenler kesinlikle tanımlanmalıdır.
* Gerekli satır sonlarında noktalı virgül işareti unutulmamalıdır.
* Programda kullanılacak fonksiyonların bulunduğu kütüphane dosyaları programın başında ilave edilmelidir.
* main() fonksiyonu, c programlarının kalbidir, olmazsa olmaz.
* Fonksiyonlardan önce açıklama eklemek faydalı olacaktır.
* İşlevlerin döndürdüğü değer belirtilmelidir. Bir değer döndürmüyorsa "void" olarak belirtilmelidir.
* Virgül kullanmak özellikle for döngülerinde birden çok değişkene değer vermek için faydalıdır.
* Programların 1000 satırlık kütüklere bölünmesi yararlı olacaktır.



002 - 20'lik Çarpım Tablosu

#include <stdio.h>	

int main()
{
 int i,j;
 for (i=1; i<=20; i++) 
  {
   for (j =1; j<=20; j++)
   printf("%4.0d",i*j);	
   printf("\n");	
  }	
 return 0;  
}

// ilk for döngümüzde ilk tanım başlangıç değerini, ikinci tanım sonlandırma durumunu, üçüncü tanım ise döngüdeki değişikliği bildirmektedir.
// i'nin ilk değeri 1 olarak atandı.
// i 20'ye eşitlendiğinde bu son döngü olacaktır.
// i 20'ye eşitlenene kadar her döngüde değerini 1 arttıracaktır. i++ i=i+1 anlamındadır.
// for döngümüzün içerisindeki for döngüsünde de j tamsayısı için aynı durum vardır.
// İki döngü içiçe olduğundan elde edilen sonuçlardan "20 satır x 20 sütun" oluşacaktır.
// Elde edilen değerler bize 20'ye kadar olan sayıların birbirleri ile çarpımlarını vermektedir.

Programımızı konsolda gcc derleyicisi ile derleyip, çalıştırdığımızda elde ettiğimiz sonuç:
20'lik Çarpım Tablosu



003 - Beş İşlem

#include <stdio.h>
#include <stdlib.h>


int main(int args, char **argv)
{
int s1, s2;
float sonuc;
char op;

if(args != 4)
{
 printf("Eksik veya fazla parametre !\n");
 printf("Kullanımı: besislem <sayi1> <operator> <sayi2>\n");
 return 1;
}

s1 = atoi(argv[1]);
op = argv[2][0];
s2 = atoi(argv[3]);

switch(op)
{
 case '+':
  sonuc = s1 + s2;
  break;

 case '-':
  sonuc = s1 - s2;
  break;

 case '.':
  sonuc = s1 * s2;
  break;

 case '/':
  sonuc = (float) s1 / s2;
  break;

 case '%':
  sonuc = s1 % s2;
  break;

 default:
  sonuc = 0.0;
  printf("Yanlış operatör %c\n",op);
  printf("Operatörler: +, -, ., / veya %%\n");
}

printf("sonuc = %f\n",sonuc);

return 0;
}

/* Komut satırından girilen iki sayı üzerinde 5 işlem yapar.
Çarpma işlemi . ile kullanılmalıdır.
Operatörler: . (çarpma); + (toplama); - (çıkarma); / (bölme); % (kalan);
Kullanımı: besislem <sayi1> <operator> <sayi2>
*/

/* s1: 1. parametre yani sayi1 */
/* op: 2. parametrenin ilk karakteri: operatör */
/* s2: 3. parametre yani sayi2 */
// Komut satırındaki diğer komutların nasıl çalıştığını anlamak açısından parametreli bir örnek verdik.
// Kodumuzu 003.c veya besislem.c isimli tekst dosyamıza kaydedelim.
// geany ile kodumuzu derleyelim. Olusan programın ismini "besislem" olarak değiştirelim.
// İsim komut satırında kullanacağımız komut olacaktır. Yani komutumuzu adı ile çağıracağız, kaynak dosyamızın içerisinde ismi besilem olarak tanımladığımızdan bu adı koyduk, kodu değiştirerek farklı isimlerde verebilirsiniz elbette.
// Örnek komut : ./besislem 4 . 5
// Komutumuzu şimdi sadece bulunduğu dizinden çalıştırabiliyoruz.
// Şimdi home dizinimizde bin isimli dosyayı bulup (yoksa oluşturalım) "besislem" programımızı içerisine atalım.
// "besislem" programının çalıştırma izni olduğunu kontrol edelim, yoksa bu izni verelim.
// Bu işi dosyaya sağ tıklayarak Özellikler:Erişim Hakları:Çalıştır seçeğini işaretleyerek yapabiliriz.
// Şimdi yetki sahibi olduğunuz herhangi bir dizinden programı çağırabilirsiniz.
// Ayrıca kendiniz bir dizin oluşturup bunu ev dizininizdeki .profile gizli dosyanıza tanıtarak kendi özel dosyanız vasıtasıyla da komutunuzu diğer dizinlerden çağırabilirsiniz. Bunun için örneğin mypath isimli dizininizi tanıtmak için .profile dosyasının sonuna şu satırı ekleyebilirsiniz:
PATH=$PATH:/home/aa/mypath
// Bu işlemden sonra mypath isimli klasöre attığınız programları diğer dizinlerden çağırabilirsiniz.
// Konsoldan echo $PATH komutunu çağırın, mypath dizininizde orada listeleniyor olmalıdır.

Programımızı konsolda denediğimizde elde ettiğimiz sonuç:
Konsoldan beş işlem



Yukarıdaki üç programın kaynak dosyalarını indirmek için lütfen tıklayınız...

Programları çalıştırabilmek için Türkçe dil ayarlarının sisteminize yüklenmiş olması gerekmektedir. Eğer Türkçe karakterlerden dolayı hata alıyorsanız veya Windows'ta yukarıdaki ilk iki programı denemek istiyorsanız kaynak dosyalarını indirmek için lütfen tıklayınız... Windows'ta ise Dev-C++ programını öneririz. Bu programın son sürümünü http://www.bloodshed.net/dev/devcpp.html adresinden indirebilirsiniz.

C programlama hakkında daha fazla bilgi için GNU C Kütüphanesi Başvuru Kılavuzu adlı 1017 sayfalık pdf formatındaki çalışmaya göz atabilirsiniz.

Yazı Tarihi: 12/2017




ANA SAYFA PROGRAMLAMA C ve C++