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



Σχετικά έγγραφα
Τύποι Δεδομένων Είσοδος/Έξοδος

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

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

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

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

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

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

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

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

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

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

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

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

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

Η δήλωση πού δηµιουργεί αποθήκευση τών δεδοµένων ονοµαζεται ορισµός τής µεταβλητής.

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

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

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

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΕΞΕΤΑΣΗ IOYNIOY 2018 ΘΕΜΑΤΑ Α ΟΝΟΜΑΤΕΠΩΝΥΜΟ:... ΑΕΜ: ΕΞΑΜΗΝΟ:

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

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

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

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

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

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

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

Συναρτήσεις πρότυπης βιβλιοθήκης 1. Μερικές συνήθεις συναρτήσεις βιβλιοθήκης int atoi(const char *p) int fclose(file *fp)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

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

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

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

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

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

ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

1η+2η εβδομάδα. 1 Ιστορία της C. 5 Μαρτίου 2012

ιαφάνειες παρουσίασης #6 (β)

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

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

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

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

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

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

Εισαγωγή στους Αλγόριθμους και τον Προγραμματισμό. 4η Διάλεξη Πίνακες Συναρτήσεις

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΚΑΙ ΠΙΝΑΚΕΣ

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

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

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

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

Α Β Γ static; printf("%c\n", putchar( A +1)+2); B DB BD. int i = 0; while (++i); printf("*");

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

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

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

Συναρτήσεις και διαδικασίες

ΤΕΜ-101 Εισαγωγή στους Η/Υ Εξεταστική Ιανουαρίου 2011 Θέματα Β

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

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

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

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

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

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

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

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

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

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

1. ΕΙΣΑΓΩΓΗ ΣΤΗ ΓΛΩΣΣΑ C

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

ΣΥΝΑΡΤΗΣΕΙΣ (Functions)

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

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

Γ7.2 Συμβολοσειρές (Strings) Γ Λυκείου Κατεύθυνσης

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Εναλλακτικές εντολές για ανάγνωση/εγγραφή

Εισαγωγή στον Υπολογισμό - Τελεστές & Είσοδος/Έξοδος

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

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

Transcript:

Γλώσσες Προγραμματισμού Εργαστήριο 2ο Τύποι Δεδομένων - Είσοδος / Έξοδος Εργαστήριο 2ο Περίγραμμα Εργαστηριακής Άσκησης Εργαστήριο 2ο...1 Θεωρία εργαστηρίου...2 Τύποι δεδομένων...2 Η συνάρτηση printf()...3 Η συνάρτηση scanf()...3 Παραδείγματα...4 Ασκήσεις...6 1/6

Θεωρία εργαστηρίου Σκοπός του εργαστηρίου αυτού είναι η εισαγωγή μας στους τύπους δεδομένων της C και η εξοικείωση μας με συναρτήσεις του ρεπερτορίου της ANSI C σχετικές με είσοδο και έξοδο δεδομένων σε ένα πρόγραμμα. Συγκεκριμένα οι συναρτήσεις που θα μας απασχολήσουν είναι η printf() και η scanf(). Τύποι δεδομένων Η C έχει πέντε βασικούς τύπους δεδομένων: char (character), int (integer), float (floating point), double (double floating point), void (no value). Όλοι οι άλλοι τύποι της C βασίζονται σ' αυτούς. Όλοι οι βασικοί τύποι εκτός από τον τύπο void μπορεί ν' αλλάξουν γράφοντας πριν από τον τύπο τον κατάλληλο μετασχηματισμό. Οι μετασχηματισμοί αυτοί είναι οι: signed, unsigned, long, και short. Το μέγεθος και τα διαστήματα τιμών των τύπων της C εξαρτάται από τον επεξεργαστή. Στον πίνακα δίνουμε τους τύπους δεδομένων όπως ορίζονται από το πρότυπο ANSI. Tύπος μέγεθος σε bits διάστημα τιμών Char Unsigned char Signed char Int Unsigned int Signed int Short int Unsigned short int Signed short int Long int Signed long int Unsigned long int Float Double Long double Δηλώσεις μεταβλητών 64 12-12..127 0..255-127..127-767..767 0..65535-767..767-767..767 0..65535-767..767-214743647..214743647 0..4294967295 Τα αναγνωριστικά στη C μπορούν να έχουν όσους χαρακτήρες θέλουμε. Αν το αναγνωριστικό είναι εξωτερικό όνομα (όνομα συνάρτησης η καθολική μεταβλητή) τότε μόνο οι έξι πρώτοι χαρακτήρες 2/6

είναι σημαντικοί διαφορετικά για εσωτερικά ονόματα οι πρώτοι 31 χαρακτήρες είναι σημαντικοί. Τα κεφαλαία γράμματα στην C είναι διαφορετικά από τα μικρά. Η δήλωση μιας μεταβλητής έχει την γενική μορφή: <τύπος> Παραδείγματα int i=0,j; char q='?'; short int si; float f,g; <λίστα μεταβλητών> Η συνάρτηση printf() Η printf(), χρησιμοποιείται για την εκτύπωση δεδομένων στην έξοδο του προγράμματος. Συγκεκριμένα, δέχεται ως όρισμα ένα αλφαριθμητικό π.χ. Hello, world\n. Η γενική μορφή της printf() είναι printf( αλφαριθμητικό ελέγχου, λίστα ορισμάτων) Στη συνάρτηση printf(), το αλφαριθμητικό ελέγχου περιέχει ή χαρακτήρες που θα εμφανιστούν στην οθόνη, ή διαταγές φόρμας που λένε στην printf() πως να εμφανίσει τα ορίσματα, ή και τα δύο. Οι κωδικοί φόρμας φαίνονται στο 1ο παράδειγμα. Παραδείγματα 1. printf( %s %d, Να ένα αλφαριθμητικό, 100); 2. printf( Να ένα αλφαριθμητικό %d, 100) 3. printf( ο αριθμός %d είναι int και ο %f είναι float, 10, 110.79) Η συνάρτηση scanf() Η scanf(), χρησιμοποιείται για την εισαγωγή δεδομένων από το πληκτρολόγιο σε μεταβλητές του προγράμματος.. Η γενική μορφή της scanf() είναι scanf( αλφαριθμητικό ελέγχου, λίστα ορισμάτων) Η λίστα ορισμάτων πρέπει να περιέχει τόσα ακριβώς ορίσματα όσοι και οι κωδικοί φόρμας που περιέχονται στο αλφαριθμητικό ελέγχου. Στη λίστα ορισμάτων πρέπει να υπάρχει ένα & πριν από τις μεταβλητές που θα δεχτούν τις τιμές που διαβάζονται από πληκτρολόγιο. Παραδείγματα 1. scanf( %d, &number); 2. scanf( %f, &number); 3/6

Παραδείγματα Στα παρακάτω παραδείγματα βλέπουμε την λειτουργία των συναρήσεων printf() και scanf() καθώς επίσης και τους διακόπτες που έχουμε στην διάθεση μας για να χειριστούμε τα διάφορα είδη μεταβλητών. /******************* printf() ***********************************/ //Header file: //Ορισμός: int printf(const char *format,...); //Επιστρέφει: τον αριθμό των χαρακτήρων που τυπώνονται στην οθόνη. Αρνητική τιμή σημαίνει σφάλμα. // Τα ορίσματα της printf() //Φορμά ανάλογα με την προς εκτύπωση μεταβλητή //%c: Χαρακτήρας. //%d: Προσημασμένοι ακέραιοι. //%i: Προσημασμένοι ακέραιοι. //%e: Επιστημονική γραφή αριθμών (μικρό e). //%E: Επιστημονική γραφή αριθμών (κεφαλαίο Ε). //%f: Δεκαδικός αριθμός με υποδιαστολή. //%o: Οκταδικός χωρίς πρόσημο. //%s: Συμβολοσειρά. //%u: Μη προσημασμένοι ακέραιοι. //%x: Μη προσημασμένοι δεκαεξαδικοί (μικρά γράμματα). //%X: Μη προσημασμένοι δεκαεξαδικοί (Κεφαλαία γράμματα). //%p: Εμφάνιση δείκτη. //%%: Εκτύπωση του συμβόλου επί τοις 100 (%). int main(void) printf("hi %c %d %s", 'c', 10, "there!"); /* Hi c 10 there!*/ /******************* scanf() ***********************************/ //Header file: //Declaration: int scanf(const char *format,...); // Τα ορίσματα της scanf() //Φορμά ανάλογα με την προς ανάγνωση μεταβλητή //%c: Ανάγνωση ενός χαρακτήρα //%d: Ανάγνωση ενός δεκαδικού ακέραιου //%i: Ανάγνωση ενός ακέραιου σε δεκαδική ή οκταδική ή δεκαεξαδική μορφή //%e: Ανάγνωση ενός αριθμού κινητής υποδιαστολής //%E: Το ίδιο με το %e 4/6

//%f: Ανάγνωση ενός αριθμού κινητής υποδιαστολής //%g: Ανάγνωση ενός αριθμού κινητής υποδιαστολής //%G: Το ίδιο με %g //%o: Ανάγνωση ενός οκταδικού αριθμού //%s: Ανάγνωση μιας συμβολοσειράς //%x: Ανάγνωση ενός δεκαεξαδικού αριθμού //%X: Το ίδιο με %x //%p: Ανάγνωση ενός δείκτη //%n: Αποδοχή μιας ακέραιας τιμής ίσης με το πλήθος τον χαρακτήρων που έχουν αναγνωστεί μέχρι στιγμής //%u: Ανάγνωση ενός μη προσημασμένου δεκαδικού ακέραιου //%[ ]: Αναγνώριση συνόλου χαρακτήρων //%%: Ανάγνωση του συμβόλου επί τοις εκατό (%) int main(void) char str[0], str2[0]; int i; scanf("%79s", str); //scanf μέχρι 79 χαρακτήρες μέσα στην μεταβλητή str return 0; Στο παρακάτω πρόγραμμα βλέπουμε πως μπορούμε να τυπώσουμε στην οθόνη του ΗΥ το περιεχόμενο μιας μεταβλητής τύπου ακεραίου (int). main() int number=42; printf("the answer is %i\n", number); Το ίδιο πρόγραμμα με το παραπάνω με την διαφορά ότι πλέον κάνοντας χρήση της scanf() μπορούμε στην ακέραια μεταβλητή να αποθηκεύσουμε οποιαδήποτε τιμή κατά την εκτέλεση του προγράμματος (και όχι πριν την μεταγλώττιση όπως γίνεται παραπάνω). main() int number; scanf( %d, &number); printf("the answer is %i\n", number); 5/6

Φτιάξτε ένα πρόγραμμα το οποίο να μετατρέπει μια δοθείσα θερμοκρασία σε κλίμακα Κελσίου σε Φαρενάιτ. void main () int celcius; double farenheit; printf("give the temperature (C): "); scanf("%d", &celcius); farenheit = 9.0 * celcius / 5.0 +.0; printf("%d degrees Celcius "is %lf degrees Farenheit", celcius, farenheit); Ασκήσεις 1. Να δίνονται από το πληκτρολόγιο το ΑΜ του σπουδαστή, η ηλικία του και το εξάμηνο του. Να τυπώνονται με κατάλληλα μηνύματα. 2. Να γίνεται ο μέσος όρος τριών πραγματικών αριθμών (οι αριθμοί αυτοί μπορούν να εισάγονται από το πληκτρολόγιο. 3. Να εμφανίζεται η προπαίδεια πχ. εισάγουμε το 6 και να εμφανίζεται το εξής: 1x6=6 2x6=12 3x6=1 6/6