printf() Fonksiyonu

Hüseyin Pektaş
Program içinde istenen değerleri çıktı birimlerine göndermek için kullanılır.  Normal kullanımında çıktı birimi olarak ekran kabul edilir. Kullanım biçimi:


  prinf( kontrol, )
ile belirtilen bilgiye göre parametreleri yazar. Kontrol metini iki kısımdan oluşur.


     o  sıradan karakterler: doğrudan yazılırlar.
     o  dönüşüm/biçim belirleyici karakterler: Değerlerin nasıl yazılacağı bildirilir.


  printf(” sonuç =  %d”, k);
                             —  integer değer yazılacaktır
              ———          ekrana aynen aktarılır


Dönüşüm belirlemek için önce % karakteri ve ardından dönüşümün nasıl
olacağını belirten karakter verilir. Bu karakterlerden bazıları:


         d yada i : decimal (integer)
         u : unsigned decimal
         c : char (tek karakter)
         s : string
         e : float/double sayıyı bilimsel gösterimde yaz
         f : float/double sayıyı [-] mmm.nnnnn biçiminde yaz
        ld : long integer
        lu : unsigned long integer
        Le,Lf : long double


ESC dizileri :
  : satır başı,   a : zil   , : tab,   : bir karakter geri



program parçası                        ekranda görünen / imleçin konumu
i = 5 ;
printf(“%d”,i) ;                           5
printf(“‘i=%d”,i) ;                      i=5
printf(“i=”) ;
printf(“%d”,i) ;                           i=5 –


printf(“i=
“) ;                             i=
printf(“%d”,i) ;                           5     alt satıra geçer
                                                   
printf(‘i=%d
“,i) ;                         i=5  alt satıra geçer


printf(“%d  –  %d”,i, 5*i);                5  –  25



Biçimli yazdırma


% karakteri ile dönüşüm karakteri arasına aşağıdaki karakterler de kullanılabilir.


        –  : sola dayalı yaz
        m  : yazılacak değer için ayırılan alan
        n  : değerin kaç karekteri yazılacağı


    s = “ABCDEF”
   printf(“%10s  “,s);                     . . . . A B C D E F
                                        
   printf(“%10.3s  “,s);                 . . . . . . . A B C


x = 128.5 ;                                            
printf(“%7.2f”,x) ;                                 # 128.50
                   
x = 85.47 ;                                          
printf(“%6.3f”,x) ;                                85.470


printf(“%6.1f”,x) ;                               ## 85.5                                                   


Örnek 2.8.1 : Yarıçapı belli dairenin alanını hesaplayan programı yazınız. (ilk yazılan program)
#include
main()
{
const float PI=3.14;                                               
float   r, alan;
r = 7;
alan := PI*r*r;                                  
printf((‘Alan = %f’, alan);   
}


Örnek 2.8.2 : En fazla dört basamak olabilen sayının basamak değerlerini yazdır. % ve / işlemlerinin  kullanımı.

#include
main()
{
  int i,y;
    
       y=1985;
       i= y / 1000;
       printf(“%d”,i);
       y= y-i*1000;
       i= y / 100;
       printf(” %d”,i);
       y = y-i*100;
       i= y / 10;
       printf(” %d”,i);
       y = y-i*10;
       printf(” %d
“,y);
       i = 1985;
       printf(“%d “,i / 1000);
       printf(“%d “,(i / 100) % 10);
       printf(“%d “,(i / 10) % 10);
       printf(“%d
“,i  % 10);   
}


Örnek 2.8.3: ax2+bx+c=0 tipi bir denklemin köklerini veren programı yazınız.
Girdi : a, b ve c katsayıları
Çıktı : denklemim kökleri
Algoritma :
1. a, b ve c katsayılarını oku.
2. Delta=  değerini hesapla.
3. x1 ve x2 değerlerini hesapla.
4. Kökleri yaz.


Programın kodlanması:

#include              /* printf işlevi için */
#include              /* sqrt işlevi için     */
main()
{
   float a, b, c;
   float x1, x2;
   float d;


   a = 1;
   b = -3;
   c = 2;
   d = b * b – 4 * a * c;
   x1 = (-b + sqrt(d)) / (2 * a);
   x2 = (-b – sqrt(d)) / (2 * a);


   printf(“Kökler = %f ,  %f”,x1, x2);
 }


C dilinde karekök almak için bir deyim yoktur. Örnekte bunu yerine getiren C diline eklenmiş olan sqrt() fonksiyonu kullanılmştır.  Aşağıda buna benzer artık C derleyecilerinde  standart olmuş bazı fonksiyonlar verilmiştir. Bu işlevler math.h başlık dosyasında tanımlıdır.


Fonksiyon                x ,y             Sonuç


abs(x) int int x’in mutlak değeri 
fabs(x) double double x’in mutlak değeri 
pow(x, y) double double xy 
sqrt(x) double double x’in karekökü 
exp(x) double double               ex değeri 
log(x) double double               ln(x) değeri 
log10(x) double double               log10(x) değeri 
ceil(x) double double x ten büyük ilk tamsayı 
floor(x) double double x ten küçük ilk tamsayı



Örnekler:
ceil(5) 5
ceil(5.2) 6
ceil(-5.2) -5
floor(5) 5
floor(5.2) 5
floor(-5.2) -6


belgesi-381

Belgeci , 2280 belge yazmış

Cevap Gönderin