ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ (ICE1-1004)

ΝΙΚΟΛΑΟΣ ΒΑΣΙΛΑΣ - ΝΙΚΟΛΑΟΣ ΖΑΧΑΡΗΣ - ΠΑΡΙΣ ΜΑΣΤΟΡΟΚΩΣΤΑΣ

Περιγραφή

Δομή Υπολογιστή. Αρχές Δομημένου Προγραμματισμού. Μεταγλώττιση. Σύνδεση. Εκτελέσιμα προγράμματα. Η γλώσσα προγραμματισμού C. Μεταβλητές, τύποι δεδομένων, παραστάσεις και εκχωρήσεις. Απλή είσοδος/έξοδος. Βρόχοι. Κατασκευές ελέγχου. Πίνακες. Συναρτήσεις. Εμβέλεια μεταβλητών. Αναδρομή. Δείκτες. Δυναμική δέσμευση μνήμης. Συμβολοσειρές. Δομές. Μορφοποιημένη είσοδος/έξοδος. Ο προεπεξεργαστής της C. Μακροεντολές. Ανακατεύθυνση εισόδου/εξόδου. Ροές δεδομένων. Αρχεία κειμένου. Δυαδικά αρχεία. Σειριακή/τυχαία προσπέλαση αρχείων. Ειδικά θέματα (τα ορίσματα της main(), απαριθμητοί τύποι δεδομένων, ενώσεις). Εργαστήριο σε προγραμματιστικό περιβάλλον της C για την εμπέδωση της γλώσσας.

Προστατεύονται όλα τα δικαιώματα
Μαθησιακοί στόχοι

Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής / τρια πρέπει να:

  • κατανοεί το συντακτικό και να έχει εξοικείωση με το προγραμματιστικό περιβάλλον της C (π.χ. editor, compiler, βιβλιοθήκες λογισμικού, εγχειρίδια αναφοράς, online help)
  • χειρίζεται με σχετική ευκολία τις βασικές προγραμματιστικές κατασκευές: τύπους δεδομένων, μεταβλητές, σταθερές, εκχωρήσεις τιμών, παραστάσεις, βρόχους και κατασκευές ελέγχου
  • κατανοεί και να μπορεί να χρησιμοποιήσει τους αφηρημένους τύπους δεδομένων (πίνακες, συμβολοσειρές), τις συναρτήσεις, την αναδρομή, την εμβέλεια των μεταβλητών, τους δείκτες και τις δομές
  • χρησιμοποιεί και να είναι εξοικειωμένος με την μορφοποιημένη είσοδο/έξοδο, τον προεπεξεργαστή της C, τα αρχεία και τα ορίσματα της main
  • είναι ικανός να αναλύει υπάρχοντα δομημένα προγράμματα υπολογιστών σε γλώσσα C και να καθορίζει τη λειτουργία τους
  • είναι ικανός να σχεδιάσει και να εφαρμόσει λύσεις προβλημάτων στον υπολογιστή μέσω προγραμματισμού στη γλώσσα C.
Βιβλιογραφία
  1. Kernighan B., RitchieD., Η Γλώσσα Προγραμματισμού C, 2η έκδ., Κλειδάριθμος, 1990.
  2. Χατζηγιαννάκης, Ν., Η Γλώσσα C σε Βάθος, 5η έκδ., Κλειδάριθμος, 2017.
  3. Τσελίκης Γ., Τσελίκας Ν., C Από τη Θεωρία στην Εφαρμογή, 3η έκδ., 2016.
  4. Aitken P., Jones, Πλήρες Εγχειρίδιο της C, 6η έκδ., Γκιούρδας, 2006.
  5. Roberts E., Η Τέχνη και Επιστήμη της C, Κλειδάριθμος, 2004.
  6. M., DeitelP.J., C Προγραμματισμός, Γκιούρδας, 2003.
  7. Μαστοροκώστας, Π., Διαδικαστικός Προγραμματισμός – Η Γλώσσα C, ΣΕΑΒ, 2015.
  8. Καρανικόλας, Ν., Εμβάθυνση στον Προγραμματισμό με τη Γλώσσα C, Εκδόσεις Νέων Τεχνολογιών, 2009.
  9. Καρολίδηs Δ., Μαθαίνετε εύκολα C, εκδ. Άβακας, 2013.
  10. PrataS., CPrimerPlus, 5thed., TheWaiteGroup, SAMS, 2004.
  11. Harbison S.P., Steele G.L., C: A Reference Manual, 5thed.,Prentice Hall, 2002.
  12. Bronson G.J., A First Book of ANSI C, 4th ed., Course Technology, 2006.
  13. Wikibooks, Programming in C, (A comprehensive look at the C programming language and its features ) -http://en.wikibooks.org/wiki/Programming:C
Μέθοδοι αξιολόγησης

Ι. Γραπτή τελική εξέταση (60%) που περιλαμβάνει:

- Ερωτήσεις σύντομης απάντησης

- Ερωτήσεις πολλαπλής επιλογής

- Επίλυση προβλημάτων

ΙΙ. Εκπόνηση εργαστηριακών ασκήσεων και τελική εξέταση εργαστηρίου (40%)

ΣΗΜΕΙΩΝΕΤΑΙ ΟΤΙ ΓΙΑ ΤΗΝ ΟΛΟΚΛΗΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΕΙΝΑΙ ΥΠΟΧΡΕΩΤΙΚΗ Η ΕΠΙΤΥΧΗΣ ΕΠΙΔΟΣΗ ΤΟΣΟ ΣΤΗ ΘΕΩΡΙΑ (Θ) ΟΣΟ ΚΑΙ ΣΤΟ ΕΡΓΑΣΤΗΡΙΟ (Ε). ΑΥΤΟ ΣΗΜΑΙΝΕΙ ΟΤΙ ΓΙΑ ΝΑ ΥΠΟΛΟΓΙΣΤΕΙ Ο ΤΕΛΙΚΟΣ ΒΑΘΜΟΣ (ΤΒ) ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΠΡΕΠΕΙ Θ >= 5 και Ε >= 5. Ο ΤΕΛΙΚΟΣ ΒΑΘΜΟΣ ΣΤΗΝ ΠΕΡΙΠΤΩΣΗ ΑΥΤΗ ΥΠΟΛΟΓΙΖΕΤΑΙ ΩΣ   ΤΒ = 0.6*Θ + 0.4*Ε   ΚΑΙ ΑΥΤΟΣ ΕΙΝΑΙ Ο ΕΝΙΑΙΟΣ ΒΑΘΜΟΣ ΠΟΥ ΕΜΦΑΝΙΖΕΤΑΙ ΣΤΟ ΦΟΙΤΗΤΟΛΟΓΙΟ. ΑΝ ΔΕΝ ΕΧΟΥΝ ΟΛΟΚΛΗΡΩΘΕΙ ΜΕ ΕΠΙΤΥΧΙΑ ΚΑΙ ΤΑ ΔΥΟ ΜΕΡΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ, ΔΕΝ ΘΑ ΔΙΝΕΤΑΙ ΒΑΘΜΟΣ ΓΙΑ ΤΟ ΦΟΙΤΗΤΟΛΟΓΙΟ.

Ενότητες

Το μάθημα της Πέμπτης 16/12 και της Παρασκευής 17/12 θα διεξαχθούν δια ζώσης χωρίς διαχωρισμό σε δύο τμήματα.

Ο Καθηγητής

Ν. Ζάχαρης

Ημερολόγιο

Ανακοινώσεις