ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ



Σχετικά έγγραφα
Δομή Προγράμματος C++, Χειρισμός Μεταβλητών και Συναρτήσεις Εισόδου - Εξόδου

ΑΣΚΗΣΗ 2: ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΣΤΗ C

Απλά Προγράμματα. Βήματα: 1. Καθορισμός παράστασης δεδομένων στη μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων

Διαδικασιακός Προγραμματισμός

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

Διαδικασία Ανάπτυξης Λογισμικού

C Programming EPL032 Maria Stavrinou Ioannou Εισαγωγή στη Γλώσσα C

Εργαστήριο 2ο. Περίγραμμα Εργαστηριακής Άσκησης

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1

Ανάπτυξη και Σχεδίαση Λογισμικού

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Βήματα: μνήμη 2. Αλγόριθμος βήματα που περιγράφουν την επεξεργασία των δεδομένων. Δομές Δεδομένων + Αλγόριθμοι = Προγράμματα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Εξοικ Εξ ε οικ ίωση ε με το το πρόγ ραμμα πρόγ DEV C++ Επικοι Επικ νωνία οι Χρήσ Χρήστη τη Υπολ Υπο ογισ λ τή

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Δομημένος Προγραμματισμός (ΤΛ1006)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

Οικονόμου Βαγγέλησ Διάλεξη Νο 2. Δομημένοσ Προγραμματιςμόσ - Διάλεξη 2

ΕΡΓΑΣΤΗΡΙΟ 1 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Τµήµα Πληροφορικής και Τηλεπικοινωνιών

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου. ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Η γλώσσα προγραμματισμού C

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Εισαγωγή στον Προγραμματισμό

Η γλώσσα προγραμματισμού C

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή

Εισαγωγή στον προγραμματισμό. Τμήμα Πληροφορικής & Επικοινωνιών ΤΕΙ Σερρών Εργαστήριο 2

ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ (ΜΕΣΟΛΟΓΓΙ) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ

Βασικές Αρχές Προγραμματισμού

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ

printf Οι κωδικοί (format codes) του printf για διάφορους τύπους δεδοµένων είναι:

Τύποι Δεδομένων Είσοδος/Έξοδος

scanf() scanf() stdin scanf() printf() int float double %lf float

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Είσοδος/ Έξοδος

Διαδικασιακός Προγραμματισμός

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7)

Προγραμματισμός Ι (ΗΥ120)

Διαδικασιακός Προγραμματισμός

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

lab2 -Στην printf να βάζεις \n έτσι ώστε να αλλάζει γραµµή όποτε σου εµφανίζει κάποιο µήνυµα.

ΕΡΓΑΣΤΗΡΙΟ 2 ΕΙΣΑΓΩΓΗ ΣΤΗ C. Εργαστήριο 2. Τµήµα Πληροφορικής και Τηλεπικοινωνιών

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006)

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-2

TMHMA TEXNΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛ/ΝΙΩΝ Προγραμματισμός Ι ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ , Α ΕΞΑΜΗΝΟ Βασίλης Μποζαντζής. Βασίλης Μποζαντζής

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

Κεφάλαιο , 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Προγραμματισμός Η/Υ (ΤΛ2007 )

7. Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου

Δομημένος Προγραμματισμός

Προγραμματισμός I (Θ)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

int abs( int x ), επιστρέφει την απόλυτη τιμή του ακεραίου x Πχ abs( 11) ισούται με 11, abs(34) ισούται με 34 double fb( fabs( double x ), επιστρέφει

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C

επιµέλεια Θοδωρής Πιερράτος

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Προγραμματισμό για ΗΜΥ

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 2 Ο. Εισαγωγή στην C Εντολές εξόδου Εντολές εισόδου Μορφοποιητές ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Δομημένος Προγραμματισμός

Η γλώσσα προγραμματισμού C

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τύποι δεδομένων, μεταβλητές, πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Εισαγωγή στον Προγραμματισμό

Η γλώσσα προγραμματισμού C

Εισαγωγή στη γλώσσα προγραμματισμού C++

ΥΠΟΛΟΓΙΣΤΕΣ ΙΙ. Τύποι δεδομένων ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΠΡΑΞΕΙΣ ΜΕΤΑΒΛΗΤΕΣ. Ακέραιοι αριθμοί (int) Πράξεις μεταξύ ακεραίων αριθμών

Προγραμματισμό για ΗΜΥ

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

5. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Β' μέρος: while - do..while)

Ινστιτούτο Επαγγελµατική Κατάρτιση Κορυδαλλού "ΤΕΧΝΙΚΟΣ ΣΥΣΤΗΜΑΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ" (Ερωτήσεις Πιστοποίησης στην γλώσσα προγραµµατισµού C)

Η βασική συνάρτηση προγράμματος main()

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

CE 120. Φροντιστήριο 14/10/2011

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

Προγραμματισμός Η/Υ (ΤΛ2007 )

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

7. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Εισαγωγή στον Προγραμματισμό

Προγραμματισμός Υπολογιστών με C++

ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for)

Διάλεξη 2: Επανάληψη Προγραμματισμού Συμβολοσειρές (strings) Διδάσκων: Παναγιώτης Ανδρέου

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Ηβασικήσυνάρτηση προγράμματος main()

ΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

char name[5]; /* define a string of characters */

Transcript:

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας Προγραµµατισµού C: τη δοµή των προγραµµάτων της, τους βασικούς τύπους δεδοµένων που υποστηρίζει, τις δηλώσεις μεταβλητών και σταθερών, τις εντολές ανάθεσης και τις βασικές εντολές εισόδου/εξόδου printf και scanf. ΔΟΜΗ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΤΗ C Η Γλώσσα Προγραµµατισµού C, όπως και κάθε άλλη δοµηµένη γλώσσα, απαιτεί τα προγράµµατα της να έχουν µια συγκεκριµένη δοµή. Πριν παρουσιάσουµε τη δοµή του προγράµµατος, αξίζει να αναφέρουµε ότι η γλώσσα C ξεχωρίζει τους πεζούς από τους κεφαλαίους χαρακτήρες. Το 1 ο τμήμα ενός προγράμματος C ξεκινά με τις εντολές προεπεξεργαστή. Είναι εντολές που ξεκινούν με το χαρακτήρα # και δεν τελειώνουν με ;. Εμείς θα χρησιμοποιήσουμε τις #include <αρχείο> και #define ετικέττα. (Εντολές τέτοιου τύπου προκαλούν την ενεργοποίηση διαφόρων πριν την έναρξη της διαδικασίας µεταγλώττισης.) Η οδηγία #include <αρχείο.h> χρησιµοποιείται για να διαβάσει το συγκεκριµένο αρχείο επικεφαλίδας (header file) και να το ενσωµατώσει στο πρόγραµµα που γράφουµε σαν να ήταν αναπόσπαστο τµήµα του. Τα αρχεία αυτά περιέχουν τις δηλώσεις κάποιων συναρτήσεων που θα χρειαστούμε, όπως οι scanf(), printf(), system(), sqrt() κλπ. Κάθε φορά που συµπεριλαµβάνουµε ένα αρχείο επικεφαλίδας, εµπλουτίζουµε το πρόγραµµά µας µε µια γκάµα βιβλιοθηκών/συναρτήσεων (εντολών) που περιέχονται σε αυτό. Έτσι ανάλογα µε τις συναρτήσεις που θέλουµε να χρησιµοποιήσουµε ενεργοποιούµε το αντίστοιχο αρχείο µέσω της εντολής #include. Τέλος θα πρέπει να αναφέρουµε ότι κάθε χρήστης έχει τη δυνατότητα να δηµιουργήσει δικά του αρχικά αρχεία επικεφαλίδων (βιβλιοθήκες) τα οποία μπορεί να ενσωµατώσει στα προγράµµατά του. To 2o και κύριο μέρος του προγράμματος συνίσταται στη δήλωση της συνάρτησης main(). Συνολικά η δομή των προγραμμάτων C που θα υλοποιήσουμε, τουλάχιστον στα πρώτα μαθήματα, είναι η εξής: Δηλώσεις προεπεξεργαστή Δηλώσεις μεταβλητών Ακολουθία εντολών system ( pause ); Παρατήρηση: η συνάρτηση/εντολή system( pause ); παγώνει την εκτέλεση μέχρι να πατηθεί ένα πλήκτρο. Τη βάζουμε πάντα πριν το τέλος για να μην κλείσει το παράθυρο της εφαρμογής και να προλάβουμε να δούμε τα αποτελέσματα, αλλά μπορεί να μπεί και σε άλλα σημεία, για παρόμοιο λόγο, αν δηλ. θέλουμε να παγώσει το πρόγραμμα προσωρινά. Σχόλια (Comments) στη C Τα σχόλια προστίθενται ενδιάμεσα γιά να βοηθήσουν στη τεκμηρίωση και αναγνωσιμότητα του προγράμματος. Τα σχόλια απευθύνονται στον αναγνώστη του κώδικα του προγράμματος. Δεν απευθύνονται στον χρήστη του προγράμματος, δηλαδή δεν είναι μηνύματα που εμφανίζονται στην οθόνη. Επίσης δεν απευθύνονται στον Compiler (μεταφραστή), αφού αγνοούνται τελείως από αυτόν. Ένα σχόλιο της C ξεκινά με τον συνδυασμό χαρακτήρων '/*' και τελειώνει με τον συνδυασμό '*/'. Σε κάποιους compilers (MS, BloodShed) επίσης μπορεί να ξεκινά με διπλή δεξιά κάθετο ("//"), οπότε τελειώνει στο τέλος της γραμμής.

Περιοχή κώδικα κυρίας συνάρτησης (κυρίως πρόγραµµα, main program) Όλα τα προγράµµατα της C είναι στην ουσία ένα σύνολο από συναρτήσεις. Η βασική συνάρτηση που θα περιέχει το κυρίως πρόγραµµα ονοµάζεται main και η επικεφαλίδα της συντάσσεται ως int main(), δηλαδή η συνάρτηση αυτή επιστρέφει ακέραιο αριθμό. Οι διάφορες δηλώσεις και ο κώδικας που θα ενσωµατωθούν πρέπει υποχρεωτικά να παρέχονται µεταξύ των συµβόλων "" και "" τα οποία και θέτουν το αρχικό και τελικό της όριο µέσα στο πρόγραµµα C. Πριν κλείσει η main(), δηλαδή πριν το βάζουμε την εντολή, ώστε να γνωρίζει το λειτουργικό σύστημα ότι, αν το πρόγραμμα επέστρεψε την τιμή μηδέν, έχει φτάσει στην τελευταία γραμμή και συνεπώς έχει τελειώσει κανονικά την εκτέλεση όλων των εντολών του. Περιοχή Δήλωσης Μεταβλητών Σε αυτό το τµήµα δηλώνουµε µεταβλητές και σταθερές οι οποίες µπορούν να χρησιµοποιηθούν µόνο στη συνάρτηση της main. Οι µεταβλητές δηλώνονται αµέσως µετά την εισαγωγή του συµβόλου στην συνάρτηση main. Οι µεταβλητές που δηλώνουµε ανήκουν στους τύπους δεδοµένων που υποστηρίζει η C. Κάθε µεταβλητή περιλαµβάνει τα παρακάτω χαρακτηριστικά: Τύπο της µεταβλητής Όνοµα της µεταβλητής Τιµή που της εκχωρείται Τύποι Μεταβλητών Οι µεταβλητές µπορούν να περιέχουν διάφορους τύπους δεδοµένων. Ο παρακάτω πίνακας δίνει τις πιο σηµαντικούς τύπους µεταβλητών στη C, το εύρος τιµών (ελάχιστη τιµή - µέγιστη τιµή που µπορεί να καταχωρηθεί σε µία µεταβλητή) καθώς και το πεδίο τιμών τους. Τύπος Δεδομένων στη C Περιγραφή Πεδίο Ορισμού char χαρακτήρας '!','@',,'1',, 'a', 'A',. int ακέραιος αριθμός, θετικός ή αρνητικός [-2147483646, 2147483647] unsigned int θετικός ακέραιος αριθμός [0, 2 32 ) = [0, 4294967295] float δεκαδικός απλής ακρίβειας (-3.4 10 38, 3.4 10 38 ) double δεκαδικός διπλής ακρίβειας (-1.7 10 308, 1.7 10 308 ) Δήλωση μεταβλητών: Περιορισμοί: Μήκος ονόματος μεταβλητής: 1-31 χαρακτήρες Επιτρέπονται γράμματα, αριθμοί και το underscore ('_', κάτω παύλα). Πρέπει το αρχικό γράμμα να είναι χαρακτήρας. Δεν πρέπει να χρησιμοποιούνται δεσμευμένες λέξεις της C ή ονόματα συναρτήσεων. Αλλαγή έστω κι ενός γράμματος από πεζό σε κεφαλαίο ή αντίστροφα, αλλάζει τη μεταβλητή (case sensitivity) Εκχώρηση ή Ανάθεση Μεταβλητών Για να αποθηκεύσουμε σε μια μεταβλητή μια τιμή η οποία υπολογίζεται από το αποτέλεσμα μιας παράστασης, γράφουμε: Mεταβλητή = Παράσταση; Αυτή η εντολή ονομάζεται ανάθεση ή εκχώρηση. Προφανώς, οι πιο απλές περιπτώσεις ανάθεσης είναι αν έχουμε αντί για ολόκληρη παράσταση μια μόνο μεταβλητή ή μια σταθερά. Το αποτέλεσμα της παράστασης πρέπει να είναι ίδιου τύπου δεδομένων με τη μεταβλητή. Π.χ.

/* Υπολογισμός Περιμέτρου και Εμβαδού κύκλου*/ const double PI = 3.1415926; //δήλωση της σταθεράς π float r = 3; //δήλωση και αρχικοποίηση της ακτίνας float s, perimeter; /* δήλωση των άλλων δύο μεταβλητών του προβλήματος */ s = PI * r * r; perimeter = 2 * PI * r; Παρατηρήστε τη δήλωση του π: Όταν ένας προσδιοριστής δεν πρέπει να αλλάξει κατά την εκτέλεση, μπορούμε να τον δηλώσουμε ως σταθερά (αντί για μεταβλητή), οπότε στη δήλωση βάζουμε τη λέξη const πριν τον τύπο δεδομένων. Τις σταθερές συνηθίζουμε να τις δηλώνουμε με κεφαλαία γράμματα, και τις μεταβλητές με πεζά. Εναλλακτικά, θα μπορούσαμε αντί να δηλώσουμε const double PI = 3.1415926; να δώσουμε στην αρχή την οδηγία προεπεξεργαστή (προσέξτε, χωρίς = και ; ): #define PI 3.1415926 Συναρτήσεις Εισόδου / Εξόδου H συνάρτηση printf() Η printf() είναι η βασική συνάρτηση παρουσίασης ενός µηνύµατος ή την τιµή µιας µεταβλητήςπαράστασης στην οθόνη του υπολογιστή. H συνάρτηση printf() περιλαµβάνεται στην βιβλιοθήκη <stdio.h.>. Η σύνταξη της συνάρτησης printf() είναι η ακόλουθη: printf("<συµβολοσειρά>", <ακολουθία μεταβλητών>); Στη συµβολοσειρά, εκτός από τους χαρακτήρες που πρόκειται να εκτυπωθούν, μπορούν να παρεμβάλλονται και: μη εκτυπώσιμοι χαρακτήρες, οι οποίοι ξεκιονούν με backslash ('\') και έχουν τις εξής σημασίες: \n νέα γραμμή \t στηλοθέτης (tab) \a ηχητικό σήμα (beep) \b backspace \\ εκτύπωση ενός \ \" εκτύπωση ενός διπλού εισαγωγικού \' εκτύπωση ενός μονού εισαγωγικού κλπ. προσδιοριστές, που ξεκινούν με το χαρακτήρα %, πρέπει να είναι όσες και οι μεταβλητές που ακολουθούν (διαχωρισμένες με κόμμα). Κάθε προσδιοριστής δείχνει πως πρέπει να εκτυπωθεί η αντίστοιχη μεταβλητή. Συγκεκριμένα: %d ακέραιος στο δεκαδικό σύστημα. Αν πρόκειται για μεταβλητή τύπου χαρακτήρα θα εκτυπωθεί ο αντίστοιχος ASCII κωδικός του! %f πραγματικός αριθμός %c χαρακτήρας Η ακολουθία μεταβλητών είναι προαιρετική π.χ. στις 3 πρώτες γραμμές στο Παράδειγμα 1 δεν υπάρχουν μεταβλητές, αφού δεν υπάρχουν προσδιοριστές, όπως %d μέσα στη συμβολοσειρά.

ΠΑΡΑΔΕΙΓΜΑ 1: #include <stdio.h> // Περιέχει την scanf() #include <stdlib> // Περιέχει την system() printf("line 1\tStili2\n"); printf("line 2\t_-Stili2\n"); printf("line 3\t\t Stili3\n"); printf("%7.1f\n", 5/3.); printf("%7.3f\n", 5/3.); system( pause ); Στην οθόνη του υπολογιστή εµφανίζεται το παρακάτω µήνυµα Line1 Stili2 Line1 _-Stili2 Line1 Stili3 1.7 1.667 Η συνάρτηση scanf () Περιλαµβάνεται στην βιβλιοθήκη <stdio.h>. Χρησιμοποιείται για την εισαγωγή τιμών από το πληκτρολόγιο. Οι τιμές αυτές αποθηκεύονται μια προς μία σε αντίστοιχες μεταβλητές, που περιλαμβάνονται στην scanf(). Η συνάρτηση scanf(), που µοιάζει µε την printf(), δέχεται ως πρώτο όρισμα (μέσα σε διπλά εισαγωγικά) µια συµβολοσειρά ελέγχου και στη συνέχεια τα ονόματα των μεταβλητών που θα λάβουν τιμές από το πληκτρολόγιο. Η συµβολοσειρά ελέγχου περιγράφει στη C ακριβώς τι είναι οι τιµές που πληκτρολογούνται και τον τύπο τους. Η σύνταξη της scanf() είναι η ακόλουθη: scanf("<συµβολοσειρά Ελέγχου>",< λίστα μεταβλητών>); Αν και η σύνταξή της είναι παρόμοια με της printf(), στη συμβολοσειρά ελέγχου της scanf επιτρέπονται μόνο προσδιοριστές και όχι άλλοι χαρακτήρες, εκτυπώσιμοι ή μη. Προσοχή: Πρίν το όνομα κάθε μεταβλητής μπαίνει, χωρίς κενό, ο χαρακτήρας '&' (που σημαίνει "διεύθυνση της μεταβλητής"). H συνάρτηση scanf() γνωρίζει πότε τερµατίζεται η είσοδος µε το πάτηµα του πλήκτρου Enter. Επειδή δεν µπορείτε να ελέγχετε τον τρόπο πληκτρολόγησης του χρήστη, η ακρίβεια δεν είναι πάντα εγγυηµένη. Έτσι, µπορείτε να ζητήσετε από το χρήστη να γράψει έναν ακέραιο και µετά µια τιµή κινητής υποδιαστολής, αλλά ο χρήστης να γράψει κάτι άλλο. Αν συµβεί αυτό, δεν µπορείτε να κάνετε πολλά. Τα αποτελέσµατα θα είναι λανθασµένα, αλλά το πρόγραµµα C δεν διαθέτει µέθοδο ελέγχου της ακρίβειας του χρήστη πριν την εκτέλεση του.

ΠΑΡΑΔΕΙΓΜΑ 2: #include <stdio.h> #include <stdlib.h> float totalsale; float tax; printf("enter the sales amount:\n"); scanf("%f",&totalsale); tax=totalsale*0.07; printf("the sales tax for %.2f\t is %.2f\n",totalSale,tax); system ("pause"); ΑΣΚΗΣΕΙΣ 1. Να γραφεί πρόγραµµα που µετατρέπει τιµές θερµοκρασίας από βαθµούς Fahrenheit σε βαθµούς Κελσίου µε βάση τον ακόλουθο µαθηµατικό τύπο: Celsius = ( fahrenheit 32) * (5 / 9) και να εκτυπώνει πλήρες και κατατοπιστικό μήνυμα. 2. Να γραφεί πρόγραµµα που να εκτελεί τις παρακάτω διαδικασίες: a) Να διαβάζει από το πληκτρολόγιο 2 πραγµατικούς αριθµούς, και 2 ακέραιους b) Για τους δύο πραγματικούς να εκτελεί τις πράξεις πρόσθεση και διαίρεση και να τυπώνει τα αποτελέσµατα µε τη µορφή 3+5=8, κλπ. c) Για τους 2 ακέραιους να να εκτελεί τις πράξεις ακέραια διαίρεση και επιστροφή υπολοίπου. d) Να υπολογίζει το άθροισµα των δύο πρώτων, του 30% του τρίτου αριθµού και του τετραγώνου του 4ου και να τυπώνει το συνολικό αποτέλεσµα 3. Να γραφεί πρόγραµµα που να διαβάζει την ηλικία σε έτη και να την μετατρέπει σε μήνες, σε ηµέρες, σε ώρες και σε λεπτά, (ανεξάρτητα μεταξύ τους) και να την τυπώνει ως εξής: H HLIKIA EINAI:20 years, or 480 months, or 17539305 days, or 185200 hours, or 10512000 mins, or 630720000 sec.