5.2 Παράμετροι συναρτήσεων στην γλώσσα C

Στη γλώσσα C, μπορούμε να μεταβιβάσουμε πληροφορία στις συναρτήσεις χρησιμοποιώντας παραμέτρους. Οι παράμετροι λειτουργούν ως μεταβλητές μέσα στη συνάρτηση και χρησιμοποιούνται για τη μεταφορά πληροφορίας στον κώδικα της συνάρτησης.

Οι παράμετροι ορίζονται μετά το όνομα της συνάρτησης, εντός παρενθέσεων. Μπορούμε να προσθέσουμε όσες παραμέτρους θέλουμε, χωρίζοντάς τες με κόμμα.

Η σύνταξη για την ορισμένη συνάρτηση με παραμέτρους είναι η εξής:

return_type function_name(parameter1_type parameter1_name, parameter2_type parameter2_name, ...) {
    // function body
}

όπου:

  • return_type είναι ο τύπος της τιμής που επιστρέφεται από τη συνάρτηση, όπως int, double, void, κλπ.
  • function_name είναι το όνομα της συνάρτησης.
  • parameter1_type και parameter2_type είναι οι τύποι των παραμέτρων.
  • parameter1_name και parameter2_name είναι τα ονόματα των παραμέτρων.

Επίσης, μπορείτε να προσθέσετε όσες παραμέτρους θέλετε, αρκεί να τις χωρίζετε με κόμμα.

Ας υποθέσουμε ότι θέλουμε να ορίσουμε μια συνάρτηση που πραγματοποιεί την πράξη της πρόσθεσης δύο ακεραίων αριθμών και επιστρέφει το αποτέλεσμα. Ένα παράδειγμα κώδικα που περιλαμβάνει την παραπάνω συνάρτηση μπορεί να είναι το εξής:

#include <stdio.h>

// Δήλωση της συνάρτησης πρόσθεσης
int add(int a, int b) {
    int result = a + b;
    return result;
}

int main() {
    int x = 3;
    int y = 5;
    int sum = add(x, y); // Κλήση της συνάρτησης add με τις μεταβλητές x και y ως παραμέτρους

    printf("Το άθροισμα των %d και %d είναι %d\n", x, y, sum);

    return 0;
}

Ο παραπάνω κώδικας περιλαμβάνει μια συνάρτηση πρόσθεσης (add) και τη χρησιμοποιεί στη συνάρτηση main για να υπολογίσει το άθροισμα δύο ακεραίων αριθμών.

Ας δούμε πιο αναλυτικά τη λειτουργία του κώδικα:

  1. Στην αρχή, γίνεται η δήλωση της συνάρτησης add, η οποία δέχεται δύο ακεραίους αριθμούς ως παραμέτρους και επιστρέφει έναν ακέραιο αριθμό.
  2. Στη συνέχεια, η συνάρτηση main ξεκινάει την εκτέλεσή της.
  3. Δημιουργούνται δύο μεταβλητές x και y με τιμές 3 και 5 αντίστοιχα.
  4. Καλείται η συνάρτηση add και της περνάμε ως παραμέτρους τις μεταβλητές x και y.
  5. Η συνάρτηση add εκτελείται και πραγματοποιεί την πρόσθεση των δύο αριθμών.
  6. Το αποτέλεσμα της πρόσθεσης αποθηκεύεται στη μεταβλητή sum.
  7. Χρησιμοποιώντας τη συνάρτηση printf, εκτυπώνεται στην οθόνη το αποτέλεσμα με τη χρήση της μορφοποίησης %d για τα ακέραια αριθμητικά δεδομένα.
  8. Το πρόγραμμα ολοκληρώνεται και επιστρέφει την τιμή 0.

Έτσι, ο κώδικας υπολογίζει το άθροισμα των δύο αριθμών 3 και 5, και το εκτυπώνει στην οθόνη ως “Το άθροισμα των 3 και 5 είναι 8”.

Η παρακάτω συνάρτηση παίρνει ένα αλφαριθμητικό με το όνομα ως παράμετρο. Όταν η συνάρτηση καλείται, περνάμε ένα όνομα, το οποίο χρησιμοποιείται μέσα στη συνάρτηση για να εκτυπώσει το μήνυμα “Hello” και το όνομα του ατόμου.

#include <stdio.h>

// Δήλωση συνάρτησης που εκτυπώνει το καλωσόρισμα με βάση το όνομα που δίνεται ως όρισμα
void sayHello(char name[]) {
    printf("Hello %s\n", name);
}

int main() {
    // Δημιουργία πίνακα χαρακτήρων για το όνομα
    char myName[] = "John";

    // Κλήση της συνάρτησης sayHello και πέρασμα του πίνακα myName ως όρισμα
    sayHello(myName);

    return 0;
}

Ο παραπάνω κώδικας εκτελεί τις παρακάτω ενέργειες:

  1. Ορίζει τη συνάρτηση sayHello, η οποία δέχεται έναν πίνακα χαρακτήρων name ως όρισμα και εκτυπώνει το μήνυμα “Hello” ακολουθούμενο από το όνομα που περνιέται σαν όρισμα.
  2. Στη συνάρτηση main, δημιουργείται ένας πίνακας χαρακτήρων myName με το όνομα “John”.
  3. Καλείται η συνάρτηση sayHello και περνιέται ο πίνακας myName ως όρισμα.
  4. Η συνάρτηση sayHello εκτελείται και εκτυπώνει το μήνυμα “Hello John” στην οθόνη.
  5. Το πρόγραμμα ολοκληρώνεται και επιστρέφει την τιμή 0.

Συνολικά, ο κώδικας αυτός εκτυπώνει το μήνυμα “Hello John” στην οθόνη.

[adinserter block=”2″]

Μέσα στη συνάρτηση, μπορείτε να προσθέσετε όσες παραμέτρους θέλετε:

#include <stdio.h>

// Ορισμός συνάρτησης που προσθέτει τρεις ακέραιους αριθμούς
int addNumbers(int x, int y, int z) {
    int result = x + y + z; // Υπολογισμός αθροίσματος
    return result; // Επιστροφή αποτελέσματος
}

int main() {
    int a = 5, b = 10, c = 15; // Δήλωση και αρχικοποίηση μεταβλητών
    int sum = addNumbers(a, b, c); // Κλήση της συνάρτησης addNumbers με παραμέτρους
    printf("The sum of %d, %d, and %d is %d\n", a, b, c, sum); // Εκτύπωση αποτελέσματος
    return 0; // Επιστροφή τιμής 0
}

Ο παραπάνω κώδικας στη γλώσσα C πραγματοποιεί την πρόσθεση τριών ακεραίων αριθμών και εκτυπώνει το αποτέλεσμα.

Αρχικά, ορίζεται η συνάρτηση addNumbers η οποία παίρνει τρεις παραμέτρους τύπου int (ακέραιους αριθμούς). Εντός της συνάρτησης, οι τρεις αριθμοί προστίθενται μεταξύ τους και το αποτέλεσμα αποθηκεύεται στη μεταβλητή result. Τέλος, η συνάρτηση επιστρέφει την τιμή της μεταβλητής result.

Στη συνέχεια, η συνάρτηση main χρησιμοποιείται ως σημείο εκκίνησης του προγράμματος. Εντός της συνάρτησης, δημιουργούνται τρεις μεταβλητές a, b και c, οι οποίες αρχικοποιούνται με τις τιμές 5, 10 και 15 αντίστοιχα. Στη συνέχεια, καλείται η συνάρτηση addNumbers με τις μεταβλητές a, b και c ως παραμέτρους, και το αποτέλεσμα της πρόσθεσης αποθηκεύεται στη μεταβλητή sum. Τέλος, εκτυπώνεται το αποτέλεσμα με τη χρήση της συνάρτησης printf, όπου εμφανίζεται η τιμή των μεταβλητών a, b, c και sum.

Έτσι, ο

κώδικας πραγματοποιεί την πρόσθεση των αριθμών 5, 10 και 15, και εκτυπώνει το αποτέλεσμα “The sum of 5, 10, and 15 is [αποτέλεσμα]”.

Όταν εκτελεστεί ο παραπάνω κώδικας, θα εμφανιστεί στην οθόνη το ακόλουθο αποτέλεσμα:

The sum of 5, 10, and 15 is 30

Αυτό συμβαίνει επειδή ο κώδικας προσθέτει τους ακέραιους αριθμούς 5, 10 και 15, και το αποτέλεσμα είναι 30. Στη συνέχεια, με τη χρήση της συνάρτησης printf, το αποτέλεσμα εμφανίζεται στην οθόνη μαζί με τα υπόλοιπα μηνύματα.

Μπορείτε επίσης να περάσετε πίνακες σε μια συνάρτηση ως παραμέτρους:

#include <stdio.h>

// Συνάρτηση που εκτυπώνει τα στοιχεία ενός πίνακα
void printArray(int arr[], int size) {
    for(int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
}

int main() {
    int myArray[] = {1, 2, 3, 4, 5};
    int size = sizeof(myArray) / sizeof(myArray[0]);
    printArray(myArray, size); // Κλήση της συνάρτησης printArray για τον πίνακα myArray
    return 0;
}

Ο παραπάνω κώδικας πραγματοποιεί την εκτύπωση των στοιχείων ενός πίνακα στην οθόνη. Ακολουθούν τα βήματα που ακολουθεί ο κώδικας:

  1. Ορίζεται η συνάρτηση printArray που δέχεται έναν πίνακα arr και το μέγεθος του πίνακα size ως παραμέτρους. Η συνάρτηση επαναλαμβάνει τον πίνακα και εκτυπώνει τα στοιχεία του.
  2. Στη συνάρτηση main, ορίζεται ένας πίνακας myArray με τιμές {1, 2, 3, 4, 5}.
  3. Υπολογίζεται το μέγεθος του πίνακα myArray χρησιμοποιώντας τον τελεστή sizeof και διαιρώντας το μέγεθος του πίνακα με το μέγεθος ενός στοιχείου του πίνακα.
  4. Καλείται η συνάρτηση printArray με ορίσματα τον πίνακα myArray και το μέγεθος size. Η συνάρτηση εκτελείται και εκτυπώνει τα στοιχεία του πίνακα στην οθόνη.

Έτσι, ο κώδικας εκτυπώνει τα στοιχεία του πίνακα myArray στην οθόνη, που στην περίπτωση αυτή θα είναι: “1 2 3 4 5”.

Η λέξη-κλειδί “void”, που είδαμε στα προηγούμενα παραδείγματα, υποδηλώνει ότι μια συνάρτηση δεν επιστρέφει κάποια τιμή. Αν επιθυμείτε να έχετε μια συνάρτηση που επιστρέφει μια τιμή, μπορείτε να χρησιμοποιήσετε έναν συγκεκριμένο τύπο δεδομένων (όπως int ή float) αντί για τη λέξη-κλειδί “void” και να χρησιμοποιήσετε τη λέξη-κλειδί “return” μέσα στη συνάρτηση.

Παράδειγμα

#include <stdio.h>

// Ορισμός της συνάρτησης που προσθέτει δύο αριθμούς
int addNumbers(int x, int y) {
    int result = x + y;
    return result;
}

int main() {
    int a = 5, b = 10; // Δημιουργία και αρχικοποίηση δύο μεταβλητών ακεραίου
    int sum = addNumbers(a, b); // Κλήση της συνάρτησης addNumbers με τις μεταβλητές a και b ως ορίσματα
    printf("The sum of %d and %d is %d\n", a, b, sum); // Εκτύπωση του αποτελέσματος
    return 0;
}

Ο παραπάνω κώδικας περιέχει μια συνάρτηση addNumbers, η οποία προσθέτει δύο ακέραιους αριθμούς και επιστρέφει το αποτέλεσμα. Στη συνέχεια, στη συνάρτηση main, δημιουργούνται δύο μεταβλητές a και b, οι οποίες αρχικοποιούνται με τιμές 5 και 10 αντίστοιχα. Στη συνέχεια, καλείται η συνάρτηση addNumbers με τις μεταβλητές a και b ως ορίσματα, και το αποτέλεσμα αποθηκεύεται στη μεταβλητή sum. Τέλος, με τη χρήση της συνάρτησης printf, εκτυπώνεται το αποτέλεσμα, δηλαδή η προσθήκη των αριθμών a και b.

Συνολικά, ο κώδικας υπολογίζει και εκτυπώνει το άθροισμα των δύο αριθμών 5 και 10, που είναι 15.

Αυτό το παράδειγμα επιστρέφει το άθροισμα δύο παραμέτρων της συνάρτησης:

#include <stdio.h>

int sum(int a, int b) {
    return a + b;
}

int main() {
    int x = 5; // Ορισμός της μεταβλητής x με τιμή 5
    int y = 3; // Ορισμός της μεταβλητής y με τιμή 3
    int result = sum(x, y); // Κλήση της συνάρτησης sum με τις μεταβλητές x και y ως ορίσματα
    printf("The sum of %d and %d is %d\n", x, y, result); // Εκτύπωση του αποτελέσματος
    return 0;
}

Ο παραπάνω κώδικας ορίζει μια συνάρτηση sum, η οποία παίρνει δύο ακέραιες παραμέτρους a και b και επιστρέφει το άθροισμά τους.

Στη συνέχεια, η συνάρτηση main ορίζει τις μεταβλητές x και y με τιμές 5 και 3 αντίστοιχα. Στη συνέχεια, καλεί τη συνάρτηση sum με τις μεταβλητές x και y ως ορίσματα και αποθηκεύει το αποτέλεσμα στη μεταβλητή result. Τέλος, εκτυπώνει το αποτέλεσμα χρησιμοποιώντας τη συνάρτηση printf.

Συνολικά, ο κώδικας υπολογίζει το άθροισμα των μεταβλητών x και y και το εκτυπώνει. Στην περίπτωση του παραδείγματος, το αποτέλεσμα θα είναι 8, καθώς 5 + 3 = 8.

[adinserter block=”3″]

Μπορείτε επίσης να αποθηκεύσετε το αποτέλεσμα σε μια μεταβλητή:

#include <stdio.h>

int sum(int a, int b) {
    return a + b;
}

int main() {
    int x = 5;  // Ορισμός της μεταβλητής x με τιμή 5
    int y = 3;  // Ορισμός της μεταβλητής y με τιμή 3
    int result = sum(x, y);  // Κλήση της συνάρτησης sum με τις μεταβλητές x και y ως ορίσματα
    printf("The sum of %d and %d is %d\n", x, y, result);  // Εκτύπωση του αποτελέσματος
    return 0;
}

Ο παραπάνω κώδικας πραγματοποιεί τις παρακάτω ενέργειες:

  1. Ορίζει μια συνάρτηση με όνομα sum, η οποία παίρνει δύο ακέραιες παραμέτρους (a και b) και επιστρέφει το άθροισμά τους.
  2. Στη συνάρτηση main, ορίζονται τρεις ακέραιες μεταβλητές: x, y και result.
  3. Η μεταβλητή x ανατίθεται με την τιμή 5 και η μεταβλητή y ανατίθεται με την τιμή 3.
  4. Η συνάρτηση sum καλείται με τις μεταβλητές x και y ως ορίσματα και το αποτέλεσμα αποθηκεύεται στη μεταβλητή result.
  5. Χρησιμοποιώντας τη συνάρτηση printf, εκτυπώνεται το αποτέλεσμα, δηλαδή το άθροισμα των μεταβλητών x και y, μαζί με τις τιμές των x, y και result.
  6. Το πρόγραμμα ολοκληρώνεται με την επιστροφή της τιμής 0 από τη συνάρτηση main.

Έτσι, ο κώδικας υπολογίζει το άθροισμα των μεταβλητών x και y και το εκτυπώνει στην οθόνη. Στην περίπτωση του παραδείγματος, το αποτέλεσμα που θα εκτυπωθεί είναι “The sum of 5 and 3 is 8”.

.

20 Ιουνίου, 2023
top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων