Προγραμματισμός ΙΙ

E-mail Εκτύπωση PDF

Εβδομαδιαίες ώρες διδασκαλίας:   2 θεωρία + 1 ασκήσεις πράξεις + 1 εργαστήριο

Τυπικό εξάμηνο διδασκαλίας:         B

Διδασκαλία: Η διδασκαλία του μαθήματος έχει τη μορφή 13 διαλέξεων και ισάριθμων εργαστηριακών ασκήσεων, στο πλαίσιο των οποίων υπάρχει η δυνατότητα ανάληψης εργασιών.

Ενδεικτικά προαπαιτούμενα: Προγραμματισμός Ι

Διδακτικές μονάδες: 6

Σκοπός και στόχοι του μαθήματος:

 

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

Περίγραμμα μαθήματος:

 

Φιλοσοφία του δομημένου προγραμματισμού, έννοια της δομής, δήλωση, ορισμός και απόδοση αρχικών τιμών.

Αρθρωτός σχεδιασμός, δήλωση και ορισμός συνάρτησης, σώμα και παράμετροι συνάρτησης.

Κλήση συνάρτησης κατά τιμή, εμβέλεια μεταβλητών, τοπικές και καθολικές μεταβλητές.

Διάρκεια μεταβλητών, κλήση συναρτήσεων με πίνακες και δομές.

Η έννοια της αναδρομής, αναδρομικές συναρτήσεις.

Δείκτες, δήλωση και ιδιότητές τους, δυναμική εκχώρηση μνήμης.

Εφαρμογή δεικτών, δείκτες και συναρτήσεις, κλήση συνάρτησης κατ’ αναφορά.

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

Δείκτες και συμβολοσειρές.

Κανάλια εισόδου, εξόδου, ενδιάμεση μνήμη (buffer), γενικά περί αρχείων, δυαδικά και ASCII αρχεία, άνοιγμα, κλείσιμο αρχείου, παράμετροι προσδιορισμού πρόσβασης σε αρχείο.

Μορφοποιημένη ανάγνωση και εγγραφή σε αρχείο, ανάγνωση και εγγραφή χαρακτήρα, συμβολοσειρών και ανά γραμμή.

Διεπαφές (interfaces), σύγγραφή διεπαφής, αρχεία κεφαλίδας και αρχεία βιβλιοθήκης.

Ανάπτυξη δομημένων προγραμμάτων, εφαρμογή σε πραγματικό πρόβλημα.

 

 

Βασική Βιβλιογραφία:

 

  1. H. Deitel, P. Deitel, C Προγραμματισμός, Εκδόσεις Γκιούρδα, 2010.
  2. Π. Μαστοροκώστας, Διαδικαστικός Προγραμματισμός, Τ.Ε.Ι. Σερρών, 2006.
  3. E. Ούτσιος, Δομημένος Προγραμματισμός: Σημειώσεις Εργαστηρίου, Τ.Ε.Ι. Σερρών, 2003.
  4. E. Roberts, H Τέχνη και Επιστήμη της C, Εκδόσεις Κλειδάριθμος, 2004.

 

 

Συμπληρωματική Βιβλιογραφία:

 

  1. Collopy, Introduction to C Programming: A Modular Approach, Prentice Hall, 2002.
  2. H. Deitel, P. Deitel, Ασκήσεις - Προγράμματα σε C, Εκδόσεις Γκιούρδα, 2005.
  3. Κλ. Θραμπουλίδης, Διαδικαστικός Προγραμματισμός - C (Τόμος Α), Εκδόσεις Τζιόλα, 2003.
  4. Αλ. Καράκος, Αλγοριθμική Επίλυση Ασκήσεων με τη Γλώσσα Προγραμματισμού C, 2010.
  5. Κ.Ν. King, C Programming: A Modern Approach, W.W. Norton & Company, 1996.
  6. B.W. Kernighan, D.M. Ritchie, Η γλώσσα προγραμματισμού C, Εκδόσεις Κλειδάριθμος, 1990.
  7. D.E. Knuth, Τhe Art of Computer Programming, 3rd ed., Addison-Wesley, 1997.
  8. D. Martin, Πλήρης Οδηγός Χρήσης της C, Εκδόσεις Γκιούρδα, 2000.
  9. H. Schildt, Εγχειρίδιο εκμάθησης Turbo C, Εκδόσεις Κλειδάριθμος, 1989.
  10. Γ. Τσελίκης, Ν. Τσελίκας, C από τη Θεωρία στην Εφαρμογή, 2010.
  11. P. Van der Linden, Expert C Programming, Prentice Hall, 1994.
  12. M. Waite, S. Prata, D. Martin, Πλήρης Οδηγός Χρήσης της C, 6η έκδοση, Εκδόσεις Γκιούρδα, 2000.
  13. Ν. Χατζηγιαννάκης, Η Γλώσσα C σε Βάθος, 3η Έκδοση, Εκδόσεις Κλειδάριθμος, 2009.

 

 

Ηλεκτρονικές Υπηρεσίες