|
Bu program ekrana 'printf' komutu yardımıyla "
Bu benim ilk programım " cümlesini yazar. 'printf' komutunun çalışabilmesi için
'stdio.h' başlık dosyasının programın başında belirtilmesi gerekir.
|
#include <stdio.h>
int main(void)
{
printf ("Bu benim ilk C programım. \n");
return(0);
}
|
Bu program ekrana "Bu benim ilk C programım
yazar." cümlesini yazar. exit() fonksiyonu 'stdlib.h' başlık dosyası vasıtasıyla
kullanılıyor. Exit() fonksiyonu programdan çıkmayı sağlar.
|
#include <stdlib.h> /* exit() komutu için */
#include <stdio.h>
int main(void)
{
printf ("Bu benim ilk C programım .\n");
exit(0);
}
|
Bu program bir önceki fonksiyonu içeriyor. İlk
önce fonksiyon tanımlanıyor daha sonra fonksiyon main() ana fonksiyonu
içerisinden çağrılıyor. Printf komutu içerisindeki %d 'toplam' değişkenini
yazdırmak için kullanılmıştır.
|
#include <stdio.h>
int tamsayi_top( int x, int y )
{
int sonuc;
sonuc = x + y;
return sonuc;
}
int main(void)
{
int toplam;
toplam =tamsayi_top( 5, 12);
printf("5 ile 12'nin toplami %d dir \n ", toplam);
return(0);
}
|
'char' komutu c1 ve c2 değişkenlerini
karakter olarak tanımlıyor. Daha sonra printf komutu yardımıyla yazdırılıyor.
Printf içerisindeki '%c' parametresi değişkenlerin ekrana karakter olarak
yazılması için kullanılır.
|
#include <stdio.h>
int main(void)
{
char c1;
char c2;
c1 = 'A';
c2 = 'a';
printf("c1 degiskeninin degeri: %c \n", c1);
printf("c2 degiskeninin degeri: %c \n", c2);
return(0);
}
|
Bu program ASCII kodu bilinen herhangi
bir değişkenin ekrana karakter olarak yazılmasını sağlar. 'printf' in içindeki
%c parametresine dikkat!
|
#include <stdio.h>
int main(void)
{
char c1;
char c2;
c1 = 65;
c2 = 97;
printf("ASCII kodu 65 olan karakter: %c \n", c1);
printf("ASCII kodu 97 olan karakter: %c \n", c2);
return(0);
}
|
İlk iki satırda bölme işleminde
kullanılan değişkenler tamsayı oldukları için elde ettiğimiz sonuçlar da
tamsayılardır. Sonraki işlemlerde değişkenlerden herhangi birinin reel olarak
ifade edilmesinden dolayı ara sonuçlar reeldir. Ancak sonuçların değişken
tanımlarına göre çıktıları da farklıdır.
İşlem ara sonuç çıktı
1. Satır : 32/10 ===> 3 ===> 3
2. Satır : 32/10 ===> 3 ===> 3.000000
3. Satır : 32.0/10 ===> 3.200000 ===> 3
4. Satır : 32.0/10 ===> 3.200000 ===> 3.200000
5. Satır : 32/10.0 ===> 3.200000 ===> 3
6. Satır : 32/10.0 ===> 3.200000 ===> 3.200000
|
#include <stdio.h>
int main(void)
{
int tam_sayi1, tam_sayi2, tam_sayi3; /* Tamsayı
tanimlari */
float reel_sayi1, reel_sayi2, reel_sayi3; /* Reel
sayi tanimları */
tam_sayi1 = 32 / 10; /* Bolen ve bolunen tamsayi
*/
reel_sayi1 = 32 / 10;
tam_sayi2 = 32.0 / 10; /* Bolen tamsayi */
reel_sayi2 = 32.0 / 10;
tam_sayi3 = 32 / 10.0; /* Bolunen tamsayi */
reel_sayi3 = 32 / 10.0;
printf("32/10 isleminin tamsayi olarak sonucu: %d\n",
tam_sayi1);
printf("32/10 isleminin reel olarak sonucu : %f\n",
reel_sayi1);
printf("32.0/10 isleminin tamsayi olarak sonucu:
%d\n", tam_sayi2);
printf("32.0/10 isleminin reel olarak sonucu: %f\n",
reel_sayi2);
printf("32/10.0 isleminin tamsayi olarak sonucu:
%d\n", tam_sayi3);
printf("32/10.0 isleminin reel olarak sonucu: %f\n",
reel_sayi3);
return 0;
}
|
Getc(stdin) komutu klavyeden girilen bir
karakteri okur. Eğer karakter yerine bir string girilirse ilk karakteri okur.
|
#include <stdio.h>
int main(void)
{
int ch;
printf("Lutfen bir karakter yaziniz :\n");
ch = getc( stdin );
printf("Yazdiginiz karakter : %c\n", ch);
return(0);
}
|
Bu programda getc(stdin) komutu ile getchar()
komutunun aynı amaçla kullanıldığı gösterilmiştir. İlk karakter getc(stdin)
ikinci karakter ise getchar() ile okutulmuş sonrada ekrana yazdırılmıştır.
|
#include <stdio.h>
int main(void)
{
int ch1, ch2;
printf("Lutfen yanyana iki karakter giriniz:\n");
ch1 = getc( stdin );
ch2 = getchar( );
printf("Ilk karakter : %c\n", ch1);
printf("Ikinci karakter : %c\n", ch2);
return(0);
}
|
Bu program ilkönce 'A' karakterini yazar. Daha
sonra putch(10) komutu ile yeni satıra atlar. 'B' karakterini putch(66) ile
yazar. Yine putch(10) ile bir satır atlar. 'C' karakterini yazdıktan sonra yine
satır atlayarak durur.
|
#include <stdio.h>
int main(void)
{
putchar(65);
putchar(10);
putchar(66);
putchar(10);
putchar(67);
putchar(10);
return 0;
}
|
Bu program 0 ile 15 arasındaki rakamların
hexadecimal ( 16 lık sistem) karşılıklarını yazar. Bu iş için printf komutu
içindeki %X parametresini kullanır. %x parametresi ise sonuçların küçük
karakterlerle yazılmasını sağlar.
|
#include <stdio.h>
int main(void)
{
printf("16'lık taban(buyuk) 16'lık taban(kucuk)
10'luk taban\n");
printf("%X %x
%d\n", 0, 0, 0);
printf("%X %x
%d\n", 1, 1, 1);
printf("%X %x
%d\n", 2, 2, 2);
printf("%X %x
%d\n", 3, 3, 3);
printf("%X %x
%d\n", 4, 4, 4);
printf("%X %x
%d\n", 5, 5, 5);
printf("%X %x
%d\n", 6, 6, 6);
printf("%X %x
%d\n", 7, 7, 7);
printf("%X %x
%d\n", 8, 8, 8);
printf("%X %x
%d\n", 9, 9, 9);
printf("%X %x
%d\n", 10, 10, 10);
printf("%X %x
%d\n", 11, 11, 11);
printf("%X %x
%d\n", 12, 12, 12);
printf("%X %x
%d\n", 13, 13, 13);
printf("%X %x
%d\n", 14, 14, 14);
printf("%X %x
%d\n", 15, 15, 15);
return 0;
}
|
Bu programda ASCII kodu
65 olan 'A' karakteri 'putc' komutu vasıtası ile ekrana yazdırıldı.
Putc(değişken,stdout) komutu değişkeni ekrana yazdırır.
|
#include <stdio.h>
int main()
{
int ch;
ch = 65;
printf("ASCII kodu 65 olan karakter :");
putc(ch, stdout);
printf("\n");
return (0);
}
|
İlk iki durumda iki
tamsayı da normal formatta yazılır. Üçünçü durumda 12 sayısı için %5d
parametresi ile 5 hanelik yer açılır ve rakam sağa dayalı olarak yazılır.
Dördüncü durumda %05d parametresi yine 5 hanelik yer ayırır ancak boş hanelere 0
yazar. Son durumda %2d parametresi iki hanelik yer açar ancak rakam 5 haneli
olduğu için tamamı yazılır.
|
#include <stdio.h>
int main(void)
{
int sayi1,sayi2;
sayi1 = 12;
sayi2 = 12345;
printf("%d\n", sayi1);
printf("%d\n", sayi2);
printf("%5d\n", sayi1);
printf("%05d\n", sayi1);
printf("%2d\n", sayi2);
return 0;
}
|
Bu program ilk sütundaki
sayıları sağa dayalı, ikinci sütundaki sayılarıda sola dayalı olarak yazar. Sola
dayalı yazma işlemini %-8d parametresi ile yapar.
|
#include <stdio.h>
int main()
{
int sayi1, sayi2, sayi3, sayi4, sayi5;
sayi1 = 1;
sayi2 = 12;
sayi3 = 123;
sayi4 = 1234;
sayi5 = 12345;
printf("%8d %-8d\n", sayi1, sayi1);
printf("%8d %-8d\n", sayi2, sayi2);
printf("%8d %-8d\n", sayi3, sayi3);
printf("%8d %-8d\n", sayi4, sayi4);
printf("%8d %-8d\n", sayi5, sayi5);
return(0);
}
|
Bu program ilk sütundaki
sayıları sağa dayalı, ikinci sütundaki sayıları da sola dayalı olarak yazar.
Sola dayalı yazma işlemini %-8d parametresi ile yapar.
|
#include <stdio.h>
int main()
{
int sayi1, sayi2, sayi3, sayi4, sayi5;
sayi1 = 1;
sayi2 = 12;
sayi3 = 123;
sayi4 = 1234;
sayi5 = 12345;
printf("%8d %-8d\n", sayi1, sayi1);
printf("%8d %-8d\n", sayi2, sayi2);
printf("%8d %-8d\n", sayi3, sayi3);
printf("%8d %-8d\n", sayi4, sayi4);
printf("%8d %-8d\n", sayi5, sayi5);
return(0);
}
|
İlk satırda tamsayıyı
hiçbir değişiklik yapmadan yazar. İkinci durumda tamsayı için %2.8d parametresi
ile en çok 8 hane ayırır. Üçüncü durumda real sayıyı değişiklik yapmadan yazar.
Son durumda %-10.2f parametresi ile rakamı sola dayalı yazar ve noktadan sonrası
için 2 öncesi için 10 hane ayırır.
|
#include <stdio.h>
int main(void)
{
int tam_sayi;
double reel_sayi;
tam_sayi = 123;
reel_sayi = 123.456789;
printf("Normal tamsayi duzeni : %d\n", tam_sayi);
printf("Ozel formatli tamsayi hali: %2.8d\n",
tam_sayi);
printf("Normal reel sayi duzeni: %f\n",
reel_sayi);
printf("Ozel fomatli reelsayi hali: %-10.2f\n",
reel_sayi);
return(0);
}
|
Programın başında x=1,
y=3 ,z=10 değerleri atandı. Her işlem satırında x,y ve z değişkenleri aşağıdaki
gibi değişir. Programda da görüldüğü gibi x += y işlemi x = x + y işlemine
denktir. Aynı şekilde z *=x+y işlemi z = z*(x+y) işlemine denktir. Matematiksel
işlemlerde parantez belirtilmediği takdirde işlemler sırası *, / , +, - sırasına
göre gider.
|
#include <stdio.h>
int main(void)
{
int x, y, z;
x = 1;
y = 3;
z = 10;
printf("İlk degerler : x = %d, y = %d, and z =
%d,\n", x, y, z);
x = x + y;
printf("x = x + y isleminin sonucu olan %d x'e
atandi;\n", x);
x = 1;
x += y;
printf("x += y isleminin sonucu olan %d x'e
atandi;\n", x);
x = 1;
z = z * x + y;
printf("z = z * x + y isleminin sonucu olan %d z'ye
atandi;\n", z);
z = 10;
z = z * (x + y);
printf("z = z * (x + y) isleminin sonucu olan %d z'e
atandi;\n", z);
z = 10;
z *= x + y;
printf("z *= x + y isleminin sonucu olan %d z'ye
atandi.\n", z);
return(0);
}
|
Daha fazlasını bilgisayarınıza download etmek
için tıklayınız.
|