ΠΛΗ10 Ενότητα 3: Η Γλώσσα Προγραμματισμού C


Σημείωση: Το υλικό αυτό απευθύνεται τόσο στους φοιτητές της ΠΛΗ10 (της οποίας το σημαντικότερο μέρος είναι η C) όσο και σε οποιονδήποτε άλλο ενδιαφερόμενο.

  • Για την επιτυχία στην ΠΛΗ10 απαιτείται να διαβαστεί καλά μέχρι και το μάθημα 14 της C σύμφωνα με το πρόγραμμα διαβάσματος της ενότητας. Τα περαιτέρω είναι “εκτός ύλης”. Ωστόσο απευθύνω ισχυρή σύσταση να μελετηθούν όλα, διότι μια καλή γνώση της C θα είναι απολύτως απαραίτητη και στη συνέχεια των σπουδών σας.
    • Απαιτείται να κάνετε και τα μαθήματα 1-4 των αλγορίθμων στην C, αλλά και τα τεστ που έχουν πολλά παραδείγματα προγραμμάτων που ζητούνται στις εξετάσεις.
Γλώσσα C - Μάθημα 1 - Το Πρώτο μας Πρόγραμμα σε C

Γλώσσα C - Μάθημα 1 - Το Πρώτο μας Πρόγραμμα σε C

 Στόχοι του Μαθήματος Στο μάθημα αυτό: Κάνουμε το πρώτο βήμα (που είναι και το σημαντικότερο!) δηλαδή εγκαθιστούμε το μεταγλωττιστή της C και γράφουμε το πρώτο μας πρόγραμμα σε C! Το πρόγραμμα συμβολικά θα βγάλει το μήνυμα "Hello World!" έτσι ώστ...
Γλώσσα C - Μάθημα 2 - Βασικά Στοιχεία ενός προγράμματος C

Γλώσσα C - Μάθημα 2 - Βασικά Στοιχεία ενός προγράμματος C

 Στόχοι του Μαθήματος Στο μάθημα αυτό: Κάνουμε το δεύτερο βήμα (που είναι εξίσου σημαντικό με το πρώτο 😉 ) δηλαδή βλέπουμε πιο αναλυτικά τα στοιχεία που θα συναντήσουμε σε κάθε πρόγραμμα C (main,αρχεία κεφαλίδας, μεταβλητές, εντολές εισόδου-εξόδ...
Γλώσσα C - Μάθημα 3 - Μεταβλητές και Σταθερές

Γλώσσα C - Μάθημα 3 - Μεταβλητές και Σταθερές

  Στόχοι του Μαθήματος Στο μάθημα αυτό: Βλέπουμε την έννοια της μεταβλητής και τα χαρακτηριστικά της  (όνομα, τύπος δεδομένων, χώρος αποθήκευσης, τιμή της μεταβλητης) Καταγράφουμε τους τύπους δεδομένων της C Μαθαίνουμε τη χρήση της ty...
Γλώσσα C - Μάθημα 4 - Τελεστές και η Δομή Ελέγχου (if...else)

Γλώσσα C - Μάθημα 4 - Τελεστές και η Δομή Ελέγχου (if...else)

 Στόχοι του Μαθήματος  Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: Α) Τελεστές Α.1) Παραστάσεις στην C Α.1.1) Απλές Παραστάσεις Α.1.2) Σύνθετες Παραστάσεις Α.2) Ο τελεστής καταχώρησης Α.3) Μαθηματικοί Τελεστές Α.3.1) Διμελείς Μαθηματικοί...
Γλώσσα C - Μάθημα 5 - Δομές Επανάληψης

Γλώσσα C - Μάθημα 5 - Δομές Επανάληψης

 Στόχοι του Μαθήματος Εδώ μελετούμε τις τρεις δομές επανάληψης της C: for, while και do..while!  Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: Α. Πίνακες Α.1) Εισαγωγή στους Πίνακες Α.1.1) Μονοδιάστατοι Πίνακες Α.1.2) Παράδειγμα B. Δομές Επανά...
Γλώσσα C - Μάθημα 6 - Συναρτήσεις και Αναδρομή

Γλώσσα C - Μάθημα 6 - Συναρτήσεις και Αναδρομή

 Στόχοι του Μαθήματος Στο μάθημα αυτό, βλέπουμε το συντακτικό των συναρτήσεων στην γλώσσα C. Έπειτα εστιάζουμε το ενδιαφέρον μας σε συναρτήσεις που είναι αναδρομικές και βλέπουμε κλασικά παραδείγματα αναδρομών (Παραγοντικό, Fibonacci, ΜΚΔ Ευκλειδη)  Αναλυτι...
Γλώσσα C - Μάθημα 7 - Πίνακες

Γλώσσα C - Μάθημα 7 - Πίνακες

 Στόχοι του Μαθήματος Στο μάθημα αυτό βλέπουμε πως ορίζονται και πως χρησιμοποιούνται οι πίνακες στην γλώσσα C μίας ή περισσοτέρων διαστάσεων. Επίσης βλέπουμε πως μπορούμε να παράξουμε τυχαίους αριθμούς.  Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡ...
Γλώσσα C - Μάθημα 8 - Δείκτες

Γλώσσα C - Μάθημα 8 - Δείκτες

  Στόχοι του Μαθήματος Στο μάθημα αυτό γίνεται μια εισαγωγή στους Δείκτες. Συγκεκριμένα βλέπουμε τον ορισμό τους και την βασική χρήση τους με απλές μεταβλητές και έπειτα βλέπουμε την σχέση τους με τους πίνακες. Τέλος μαθαίνουμε τους δύο τρόπους ...
Γλώσσα C - Μάθημα 9 - Εισαγωγή στην Είσοδο/Έξοδο Δεδομένων

Γλώσσα C - Μάθημα 9 - Εισαγωγή στην Είσοδο/Έξοδο Δεδομένων

 Στόχοι του Μαθήματος Στο μάθημα αυτό γίνεται βλέπουμε αναλυτικά τις βασικές εντολές εισόδου/εξόδου printf και scanf. Ειδικά για την printf βλέπουμε περαιτέρω λεπτομέρειες και μελετούμε την τυπική της διατύπωση, ώστε να μπορούμε  να δ...
Γλώσσα C - Μάθημα 10 - Χαρακτήρες και Συμβολοσειρές

Γλώσσα C - Μάθημα 10 - Χαρακτήρες και Συμβολοσειρές

 Στόχοι του Μαθήματος Στο μάθημα αυτό γίνεται βλέπουμε τον τύπο δεδομένων char (χαρακτήρας) και ορίζουμε ότι μία συμβολοσειρά είναι ένας πίνακας από χαρακτήρες.   Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡΙΕΧΟΜΕΝΑ ΜΑΘΗ...
Γλώσσα C - Μάθημα 11 - Έλεγχος Ροής Προγράμματος

Γλώσσα C - Μάθημα 11 - Έλεγχος Ροής Προγράμματος

 Στόχοι του Μαθήματος Στο μάθημα αυτό βλέπουμε εποπτικά την continue, την break και την switch τις οποίες χρησιμοποιούμε για να δημιουργούμε όμορφα μενού στα προγράμματά μας.  Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡΙΕΧΟΜΕΝΑ ΜΑΘΗΜΑΤΟΣΑ....
Γλώσσα C - Μάθημα 12 - Δυναμική Δέσμευση Μνήμης

Γλώσσα C - Μάθημα 12 - Δυναμική Δέσμευση Μνήμης

  Στόχοι του Μαθήματος Στο μάθημα αυτό βλέπουμε τις εντολές malloc και free. Έπειτα βλέπουμε τον τρόπο χρήσης τους για να δεσμεύσουμε μεταβλητές, μονοδιάστατους και διδιάστατους πίνακες.   Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡΙΕΧ...
Γλώσσα C - Μάθημα 13 - Δομές

Γλώσσα C - Μάθημα 13 - Δομές

 Στόχοι του Μαθήματος Το μάθημα αυτό είναι ιδιαίτερα σημαντικό. Πραγματεύεται την χρήση των δομών (structs) που είναι το βασικό εργαλείο για την οργάνωση των δεδομένων ενός προγράμματος C.  Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡΙΕΧ...
Γλώσσα C - Μάθημα 14 - Εμβέλεια Μεταβλητών

Γλώσσα C - Μάθημα 14 - Εμβέλεια Μεταβλητών

 Στόχοι του Μαθήματος Στο μάθημα αυτο μαθαίνουμε την στοίβα και βλέπουμε την υλοποίησή της και μερικές εφαρμογές (δεκαδικό σε δυαδικό και υπολογισμός μεταθεματικής παράστασης)  Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡΙΕΧΟΜΕΝΑ ΜΑΘ...
Γλώσσα C - Μάθημα 15 - Είσοδος/Έξοδος: Συναρτήσεις Εισόδου

Γλώσσα C - Μάθημα 15 - Είσοδος/Έξοδος: Συναρτήσεις Εισόδου

 Στόχοι του Μαθήματος Στόχος του μαθήματος είναι να εξερευνήσουμε τις συναρτήσεις εισόδου που μας παρέχονται εκτός της scanf. Για τον σκοπό αυτό πρέπει πρώτα να κατανοήσουμε τον μηχανισμό ροών (streams) με τα οποία επικοινωνεί το πρόγραμμά μας με τις ...
Γλώσσα C - Μάθημα 16 - Είσοδος/Έξοδος: Συναρτήσεις Εξόδου

Γλώσσα C - Μάθημα 16 - Είσοδος/Έξοδος: Συναρτήσεις Εξόδου

 Στόχοι του Μαθήματος Στόχος του μαθήματος είναι να εξερευνήσουμε τις συναρτήσεις εξόδου που μας παρέχονται εκτός της scanf και συγκεκριμένα τις putc,fputc,putchar,gets,fgets και fprintf  Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡΙΕΧΟΜΕΝΑ ΜΑ...
Γλώσσα C - Μάθημα 17 - Είσοδος/Έξοδος: Επικοινωνία με το Λειτουργικό Σύστημα

Γλώσσα C - Μάθημα 17 - Είσοδος/Έξοδος: Επικοινωνία με το Λειτουργικό Σύστημα

  Στόχοι του Μαθήματος Στόχος του μαθήματος είναι να μάθουμε την διοχέτευση ορισμάτων γραμμής εντολής στο πρόγραμμά μας (argc+argv) και την ανακτεύθυνση εισόδου-εξόδου.   Αναλυτική Παρουσίαση Περιεχόμενα του Μαθήματος: ΠΕΡΙΕΧΟΜΕΝΑ ΜΑ...
Γλώσσα C - Μάθημα 18 - Η Βιβλιοθήκη string.h

Γλώσσα C - Μάθημα 18 - Η Βιβλιοθήκη string.h

 Στόχοι του Μαθήματος Στόχος του μαθήματος είναι η μελέτη των συναρτήσεων της βιβλιοθήκης string.h για το χειρισμό συμβολοσειρών.   Αναλυτική Παρουσίαση ΠΕΡΙΕΧΟΜΕΝΑ ΜΑΘΗΜΑΤΟΣ Α. Η Βιβλιοθήκη string.h 1) Εισαγωγή 2) Βασικές Συναρτήσεις του string.h ...
Βοηθητικό Υλικό: Αλγόριθμοι σε C

Βοηθητικό Υλικό: Αλγόριθμοι σε C

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