FizzBuzz
Diese Einsteigerübung trainiert grundlegende Syntax und Problemlösung anhand von FizzBuzz.
Was ist FizzBuzz?
Diese Einsteigerübung trainiert grundlegende Syntax und Problemlösung anhand von FizzBuzz.
Löse FizzBuzz mit ausführbarem Code in C und C++.
Wichtige Punkte
- Aktiviere Compiler-Warnungen und behebe sie vollständig.
- Kenne Typ und Lebensdauer jedes Werts.
- Prüfe Eingaben und Array-Grenzen explizit.
Codebeispiele in C und C++
main.c
#include <stdio.h>
int main(void) {
for (int n = 1; n <= 15; ++n) {
// Check the most specific condition first.
if (n % 15 == 0) puts("FizzBuzz");
else if (n % 3 == 0) puts("Fizz");
else if (n % 5 == 0) puts("Buzz");
else printf("%d\n", n);
}
}
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
main.cpp
#include <iostream>
int main() {
for (int n = 1; n <= 15; ++n) {
// Check the most specific condition first.
if (n % 15 == 0) std::cout << "FizzBuzz\n";
else if (n % 3 == 0) std::cout << "Fizz\n";
else if (n % 5 == 0) std::cout << "Buzz\n";
else std::cout << n << '\n';
}
}
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
Vergleich zwischen C und C++
Vergleiche die C- und C++-Implementierung, ändere die Eingaben und teste zusätzliche Randfälle.
C
C stellt kleine prozedurale APIs und Repräsentationsdetails offen dar.
C++
C++ behält das Low-Level-Modell und ergänzt sicherere Bibliothekstypen.
Übungsaufgaben
Führe beide Versionen aus und untersuche die unterschiedlichen Garantien.
- Füge ungültige und Grenzwerte hinzu.
- Kompiliere mit -Wall -Wextra -Wpedantic.
- Teile Deklaration und Implementierung auf.