Para sa Baguhan: Gabay sa C printf – Mula Simula Hanggang Advanced

1. Panimula|printf ano ito?

Kapag nagsimulang mag-aral ng C language, ang unang nakikita ay ang function na printf. Ginagamit ang function na ito upang mag-output ng teksto at mga halaga ng variable sa console. Napakahalaga ito para kumpirmahin ang pag-andar ng programa at hindi mawawala sa debugging.
#include <stdio.h>

int main(void) {
    printf("Kamusta, Mundo!n");
    return 0;
}
Ang “Hello, World!” ay isang simbolikong code na naglalarawan ng unang hakbang patungo sa mundo ng programming. Ito ay madalas na unang programang sinusulat ng mga baguhan, ngunit dito matutunan natin ang mga pangunahing gamit ng printf.

2. printf Pangunahing Sintaks

printf ay isang malakas na function na madaling mag-output ng teksto o data. Narito ang pangunahing paggamit.
printf("Kumusta, mundo!n");
Sa code sa itaas, ipapakita sa console ang “Kumusta, mundo!” at magka-line break dahil sa n. Sa C, hindi awtomatikong naglalagay ng line break kapag nag-ooutput, kaya kung kailangan ay dapat mong manu-manong idagdag ang line break code.

3. Pag-unawa sa Format Specifier

printf ay sumusuporta sa paglabas ng iba’t ibang uri ng data gamit ang mga format specifier. Narito ang mga pangunahing halimbawa ng format specifier.
  • %d: Ipinapakita ang integer.
  • %f: Ipinapakita ang decimal (hanggang anim na digit pagkatapos ng decimal point).
  • %s: Ipinapakita ang string.
  • %c: Ipinapakita ang isang karakter.

Halimbawa: Sabay-sabay na paglabas ng maraming uri ng data

int age = 25;
float height = 175.5;
char initial = 'A';
char name[] = "Taro";

printf("Pangalan: %snEdad: %dnTaas: %.1fnInisyal: %cn", name, age, height, initial);
Ang resulta ng output ay ang mga sumusunod:
Pangalan: Taro
Edad: 25
Taas: 175.5
Inisyal: A
Maaari mong gamitin ang maraming format specifier upang pagsamahin at maglabas ng iba’t ibang uri ng data.

4. Pagkontrol ng Output | Pagtatakda ng Lapad ng Field at Katumpakan

Sa printf, maaari mong kontrolin nang mas detalyado ang format ng output sa pamamagitan ng pagtukoy ng lapad ng field at katumpakan.

Lapad ng Field

Sa pamamagitan ng pagtukoy ng lapad ng field, tinatakda mo ang pinakamababang lapad ng output. Ang sumusunod na code ay maglalabas ng numero na may lapad ng field na 5 na digit.
printf("%5d", 123);
Ang resulta ng output ay ganito:
  123

Pagtatakda ng Katumpakan

Ginagamit ang pagtatalaga ng katumpakan upang kontrolin ang bilang ng mga digit pagkatapos ng decimal point sa mga floating-point na numero.
printf("%.2f", 3.14159);
Ang resulta ay ipapakita ng ganito:
3.14

5. Mga Advanced na Tampok | Mga Flag at Opsyon sa Format

Sa printf, maaaring gamitin ang mga flag para sa mas mataas na kontrol ng output.

Pag-align sa kaliwa at zero padding

Upang i-left align ang output, gamitin ang flag -, at upang mag-zero pad sa unahan ng numero, gamitin ang flag 0.
printf("%-5d", 123);  // pag-align sa kaliwa
printf("%05d", 123);  // zero padding
Resulta ng output:
123  
00123

Paglabas ng Hexadecimal at Octal

Sa printf, maaari mong i-output ang mga numero bilang hexadecimal o octal.
printf("%x", 255);  // hexadecimal
printf("%o", 255);  // octal
Ang resulta ay ganito:
ff
377
Napaka-kapaki-pakinabang na tampok ito para sa system programming at debugging.

6. Karaniwang mga Pagkakamali at Mga Paraan ng Pag-iwas

Isa sa mga karaniwang pagkakamali sa printf ay ang hindi pagtutugma ng format specifier at data type. Halimbawa, kung gagamit ng floating-point specifier para sa isang integer, magdudulot ito ng error.
int age = 25;
printf("%f", age);  // NG: age ay integer
Gumamit ng tamang specifier upang matugma ang data type at format specifier.

7. Halimbawa | Halimbawa na Pinagsama ang Lahat

Dito, ipinapakita ang isang konkretong halimbawa na pinagsasama ang mga natutunan.
#include <stdio.h>
int main() {
    printf("Pangalan: %-10s Edad: %3dn", "Alice", 30);
    printf("Presyo: %7.2fn", 123.456);
    return 0;
}
Ang programang ito ay maglalabas ng ganito:
Pangalan: Alice      Edad:  30
Presyo:  123.46
Sa ganitong paraan, sa pamamagitan ng mahusay na paggamit ng mga format specifier, field width, precision, at flag ng printf, makakamit mo ang malinaw na output.

8. Buod

printf ay napakalakas sa wikang C, at nagbibigay-daan sa flexible na pag-customize ng output. Sa pamamagitan ng mahusay na paggamit ng mga format specifier, field width, at precision, ang output ay magiging mas maayos. Sa debugging at pag-verify ng mga resulta, gamitin mo ang mga teknik na natutunan mo sa artikulong ito!

9. Magbigay ng feedback

Kung nabasa mo ang gabay na ito at may mga hindi malinaw o karagdagang impormasyon, mangyaring ibahagi ang iyong opinyon sa seksyon ng komento. Sa pamamagitan ng inyong feedback, magsusumikap kaming maghatid ng mas maganda pang nilalaman!