Picproje Elektronik Sitesi

SERBEST BÖLGE => Programlama ve Algoritma => Konuyu başlatan: tbt777 - 01 Ağustos 2015, 19:04:09

Başlık: c de formatlı yazdırma sorunu
Gönderen: tbt777 - 01 Ağustos 2015, 19:04:09
iyi günler

printf("%s %7s %s %2s %10s %2s\n",'NUMARA','ISIM', 'SOYISIM' ,'VIZE', 'FINAL', 'ORTALAMA');
printf("__________________________________________ _____________\n");
for(k = 0 ; k < i ; k++){
printf("%u %7s %2s %10d %2d %.2f\n",ogr[k].numara, ogr[k].isim, ogr[k].soyisim, ogr[k].vize, ogr[k].final, ort[k]);
}
şeklinde yazdırınca;http://imgur.com/pICleZ0 (http://imgur.com/pICleZ0) şeklinde bir çıktı alıyorum.

yani isimlerin uzunluğu vize yi sağa kaydırıyor.
hepsini alt alta düzenli bir şekilde nasıl yazdırabilirim?
Başlık: Ynt: c de formatlı yazdırma sorunu
Gönderen: mufitsozen - 01 Ağustos 2015, 20:35:01
Alıntı yapılan: tbt777 - 01 Ağustos 2015, 19:04:09
iyi günler

printf("%s %7s %s %2s %10s %2s\n",'NUMARA','ISIM', 'SOYISIM' ,'VIZE', 'FINAL', 'ORTALAMA');
printf("__________________________________________ _____________\n");
for(k = 0 ; k < i ; k++){
printf("%u %7s %2s %10d %2d %.2f\n",ogr[k].numara, ogr[k].isim, ogr[k].soyisim, ogr[k].vize, ogr[k].final, ort[k]);
}
şeklinde yazdırınca;http://imgur.com/pICleZ0 (http://imgur.com/pICleZ0) şeklinde bir çıktı alıyorum.

yani isimlerin uzunluğu vize yi sağa kaydırıyor.
hepsini alt alta düzenli bir şekilde nasıl yazdırabilirim?

%7s ve %2s yerine gercek alan boylarini ve left justify yapmak icin - koyunuz

or: %-20s ve %-15s gibi
Başlık: Ynt: c de formatlı yazdırma sorunu
Gönderen: sovalye - 01 Ağustos 2015, 21:02:57
Hocam eğer ekrana bastırdınız string belirttiğiniz yerden daha uzunsa yer belirtme işleminiz dikkate alınmaz.
Başlık: Ynt: c de formatlı yazdırma sorunu
Gönderen: seyityildirim - 02 Ağustos 2015, 11:59:38
Eğer soruyu doğru anladıysam
printf("%s/t%s/t" ,isim,soyisim) gibi her %s den sonra bir tab boşluk bırakın gerekirse 2 tab boşluk bırakın