Adım Adım C Dr. Hidayet Takcı
İlk C Programı #include <stdio.h> #include <conio.h> main() printf("merhaba Dünya"); getch();
Program hakkında İlk program C de ekrana nasıl yazı yazdıracağınızı göstermektedir. printf fonksiyonu bu işe yaramaktadır. İlk C programında başlık dosyaları ile getch() fonksiyonu da tanıtılmıştır. Başlık dosyaları programda kullanılacak fonksiyonları programa ilave etmek için kullanılır. getch() fonksiyonu ise ekrandaki mesajı okuyabilmek için ekranı dondurmaktadır.
Klavyeden Veri Girişi #include <stdio.h> #include <conio.h> char isim[15]; main() printf("isminizi giriniz"); scanf("%s",isim); printf("merhaba %s",isim); getch();
Program Hakkında char isim[15]; Bu programda başta string veri tipinde bir değişken tanımlanmıştır. String, karakter dizisi olduğundan string veri tipi char veri tipinin bir dizisi olarak verilmiştir. scanf("%s",isim); Programda yapılan bir diğer iş klavyeden veri girişidir. Bu sebeple scanf() fonksiyonu kullanılmıştır. printf("merhaba %s",isim); Ayrıca %s kontrol karakteri ile kontrol karakterlerinin printf() ve scanf() fonksiyonlarında nasıl kullanıldığı gösterilmiştir.
Doğum Tarihi Bulma #include <stdio.h> #include <conio.h> int yas; main() printf("yasinizi giriniz"); scanf("%d",&yas); printf("dogum tarihiniz %d",2004-yas); getch();
Program Hakkında int yas; Bu programda tamsayı tipli bir değişken tanımlanmış ve klavyeden o değişkene sayısal veri girilmiştir. scanf("%d",&yas); Örnekte & işaretinin scanf ile birlikte kullanılışı görülmektedir. Sayısal verilerin alınmasında & işareti kullanılmak zorundadır. printf("dogum tarihiniz %d",2004-yas); Bu örnekte ayrıca klavyeden girilen verinin işlenmesi konusunda da bir işlem yapılmıştır.
Dört İşlem #include <stdio.h> #include <conio.h> int say1, say2; main() say1=5; say2=6; printf("\ntoplam %d", say1+say2); printf("\nfark %d", say1-say2); printf("\ncarpim %d", say1*say2); printf("\nbolum %f", (float (say1)/float (say2))); getch();
Program Hakkında printf("\ntoplam %d", say1+say2); printf("\nfark %d", say1-say2); printf("\ncarpim %d", say1*say2); printf("\nbolum %f", (float (say1)/float (say2))); C de matematiksel işlemlerin nasıl yapıldığı ile ilgili bir örnek, özellikle bölme işleminde kullanılan tip dönüşüm işlemi önemli.
10 dan Küçük Tek Sayıların Toplamı #include <stdio.h> #include <conio.h> int indis, toplam; main() indis=0; while (indis<10) indis++; if (indis % 2 ==1) toplam=toplam+indis;printf("\neklenen sayi %d",indis); printf("\ntoplam %d", toplam); getch();
Program Hakkında Bu örnekteki farklı özellikler şunlardır. while (indis<10) Döngü örneği. if (indis % 2 ==1) Karşılaştırma ve modüler işlem.
Üç sayıdan en büyüğünü bulma #include <stdio.h> #include <conio.h> int a=6, b=4, c=7; main() if (a>b && a>c) printf("en büyük a"); else if (b>c) printf("en büyük b"); else printf("en büyük c"); getch();
Program Hakkında if (a>b && a>c) printf("en büyük a"); else if (b>c) printf("en büyük b"); else printf("en büyük c"); Bu programda if-else-if yapısı üç sayıdan en küçüğünü bulmada kullanılmaktadır.
Kök Bulma #include <stdio.h> #include <conio.h> #include <math.h> int a,b,c; float delta,x1,x2; main() printf("klavyeden uc sayi giriniz :"); scanf("%d %d %d", &a,&b,&c); delta=sqrt(b*b-4*a*c); if (delta<0) printf ("Kök Yoktur"); else x1=(-b+delta)/(2*a);x2=(-b-delta)/(2*a); printf("kökler x1=%f x2=%f",x1,x2); getch();
Program Hakkında #include <math.h> Sqrt fonksiyonu kullanıldığı için math.h kütüphanesi eklenmiştir. if (delta<0) printf ("Kök Yoktur"); else printf ( Kök Vardır"); Delta değerine bağlı olarak dallanmalar vardır.
Faktoriyel Hesabı // Normal #include <stdio.h> #include <conio.h> int fakt (int); main() printf("7 sayisinin faktoriyeli %d",fakt(7)); getch(); int fakt (int n) int sonuc=1,indis; for (indis=1;indis<n+1;indis++) sonuc=sonuc*indis; return sonuc;
Program Hakkında int fakt (int); Fonksiyon prototipi printf("7 sayisinin faktoriyeli %d",fakt(7)); Ana programdan çağrılışı int fakt (int n) int sonuc; return sonuc; Fonksiyonun kendisi
Faktoriyel hesabı // Rekürsif #include <stdio.h> #include <conio.h> int fakt (int); main() printf("7 sayisinin faktoriyeli %d",fakt(7)); getch(); int fakt (int n) if (n<2) return 1; else return n*fakt(n-1);
Program Hakkında int fakt (int n) if (n<2) return 1; else return n*fakt(n-1); Bu program faktöriyel hesabının rekürsif yöntemle yapıldığı bir örnektir. Rekürsif programlarda fonksiyon kendi kendini çağırmaktadır.
Üs alma, power (x,y) #include <stdio.h> #include <conio.h> int power (int, int); main() printf("3 üssü 4 = %d",power(3,4)); getch(); int power (int x, int y) int sonuc=1,indis; for (indis=1;indis<y+1;indis++) sonuc=sonuc*x; return sonuc;