C# Programlama Formatlı Çıktı

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
▃ ▅ ησ ♥ яєѕρєcт ▅ ▃
Süper Üye
Katılım
24 Eyl 2016
Mesajlar
600
Tepki puanı
10
Ödüller
9
9 HİZMET YILI
Formatlı Çıktı
Bundan önceki programlardaki değişkenler serbest biçimde (free format), yani derleyicinin belirlediği biçimde ekrana yazdırılmıştı. Bazen giriş ve çıkışın biçimi kullanıcı tarafından belirlenmesi gerekebilir. Bu işlem:
Tamsayılarda %d yerine %wd
Gerçel sayılarda %f yerine %w.kf
Stringlerde %s yerine %ws
biçimindeki kullanım ile sağlanır. Burada w yazılacak olan sayının alan genişliği olarak adlandırılır. Gerçel bir değişken ekrana yazılacaksa, değişkenin virgülden sonra kaç basamağının yazdırılacağı k sayısı ile belirlenir. Ancak w > k + 2 olmalıdır.
    int i=583,j=1453;

    printf("%d %d\n",i,j);    /* serbest biçim */
    printf("%5d %8d\n",i,j);  /* formatlı */

program parçasının ekran çıktısı şöyledir:
ÇIKTI

583 1453
 583     1453


Birinci satır serbest formatta ikinci satır ise formatlı yazılmıştır. i değişkeninin tuttuğu 583 sayısı %5d formatıyla yazdırılınca, bu sayı için 5 alan genişliği tanımlanır arakasından sağdan başlayarak sayı bu alana yazılır. Benzer olarak j değişkeni, 8 alan genişlikli bir bölgeye yazılır.
Gerçel sayılarda iş biraz daha karışık. Örneğin:
    int x=123.456;

    printf("%f\n",x);     /* serbest biçim */
    printf("%8.2f\n",x);  /* formatlı */

program parçası çalıştırıldığında aşağıdaki sonuç gözlenir:
ÇIKTI

123.456001
 123.46


Birinci satır serbest formatta ikinci satır ise formatlı yazılmıştır. İkinci satırda x değişkeni için ayrılan alan genişliği 8 ve noktadan sonra 2 basamağa kadar hassasiyet önemsenmiştir. Dikkat edilirse noktadan sonra sayı uygun bir şekilde yuvarlanmış ve sayı sağa dayalı olarak yazılmıştır.
Son olarak formatlı çıktı ile ilgili bir örnek Program 4.4'de verilmiştir. İnceleyiniz.
Bağlantıları görmek için lütfen Giriş Yap
 printf() in formatlı kullanımı

01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:

/* 04prg04.c: Formatlı çıktı */

#include <stdio.h>

main()
{
  float  x = 7324.25, y = 244.531;
  int    i = 1299;
  char  *c = "Merhaba C";

  printf("%10d\n"  ,i);
  printf("%10s\n"  ,c);

  printf("%10.5f\n",x);
  printf("%10.1f\n",y);

 return 0;
}


ÇIKTI

     1299
Merhaba C
7324.25000
    244.5
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst