Powtórka – wyzwanie nr 2
Część sekcji Podstawy ścieżki C w Coddy. Lekcja 52 z 63.
Wyzwanie
ŚredniNapisz program w C, który implementuje prosty kalkulator przy użyciu funkcji. Twój program powinien:
- Implementować następujące funkcje:
add(int a, int b): zwraca sumę a i bsubtract(int a, int b): zwraca różnicę między a i bmultiply(int a, int b): zwraca iloczyn a i bdivide(int a, int b): zwraca iloraz a podzielonego przez b (obsłuż dzielenie przez zero)
- Implementować funkcję
calculate(int a, int b, char operation), która przyjmuje jako argumenty dwie liczby całkowite i znak operacji (+, -, *, /), wywołuje odpowiednią funkcję i zwraca wynik. - W funkcji main odczytać dwie liczby całkowite i znak oddzielone spacjami (np.
10 5 +); znakiem będzie jeden ze znaków operatorów albo znakq; jeśli odczytaszq, zakończ program. Użyjscanf("%d %d %c", &a, &b, &op), aby odczytać dane wejściowe. - Użyć funkcji
calculate, aby wykonać operację i wyświetlić wynik - Obsłużyć nieprawidłowe operacje i dzielenie przez zero, wyświetlając
Invalid input
Zalecamy użycie prototypów funkcji, aby zadeklarować wszystkie powyższe funkcje przed funkcją main, a następnie zdefiniowanie samych funkcji pod funkcją main, dzięki czemu kod będzie bardziej czytelny i przejrzysty
Spróbuj swoich sił
#include <stdio.h>
// Zadeklaruj tutaj swoje funkcje
int main() {
// Wpisz tutaj swój kod
return 0;
}
// Zaimplementuj tutaj swoje funkcjeWszystkie lekcje w sekcji Podstawy
4Sterowanie przepływem
Instrukcja ifIf - elseElse-ifInstrukcja switch-caseOperator warunkowy (ternary)Wyzwanie podsumowująceZagnieżdżone if - else7Funkcje
Deklarowanie funkcjiTypy zwracaneParametryPowtórka – wyzwanie nr 1Podstawy rekurencjiPrototypy funkcjiPowtórka – wyzwanie nr 22Zmienne
Typy danychLiczby całkowiteLiczby zmiennoprzecinkowe — float i doubleZnakiWartości logiczneStałePodstawy printfZasady nazewnictwa zmiennychKonwersja typów — część 1Konwersja typów — część 2Wyzwanie podsumowujące3Operatory
Operatory arytmetyczneOperator moduloInkrementacja/dekrementacjaOperatory przypisaniaOperatory relacyjneOperatory logiczne — część 1Operatory logiczne — część 2Operatory logiczne — część 3Wyzwanie podsumowującePoćwicz samodzielnie: Kompilator C online