Προγραμματισμός σε C. Αρχεία κειμένου (Text files)
|
|
- Λαδων Μαλαξός
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Προγραμματισμός σε C Αρχεία κειμένου (Text files)
2 Εισαγωγή Στη C έχουμε ειδικές συναρτήσεις για να επεξεργαζόμαστε αρχεία κειμένου που αποθηκεύονται στο δίσκο Τα αρχεία είναι σημαντικά για μόνιμη αποθήκευση «κειμένου» Αποθηκεύουν «απεριόριστη» πληροφορία. Μπορείτε να τα θεωρήσετε ως ένα μεγάλο string που φυλάσσεται στον δίσκο και όχι στη μνήμη Όμως ΔΕΝ είναι σαν τα strings διότι π.χ. Το μέγεθός του μόνο αυξάνεται, δεν αφαιρείται τίποτε Δεν μπορείς να πας άμεσα σε όποιο στοιχείο (χαρακτήρα) θέλεις συνήθως ξεκινάς από την αρχή και προχωράς Επομένως δεν μπορείς να το χειριστείς με δείκτες. Προκειμένου να αποθηκευτεί / διαβαστεί πληροφορία σε αρχείο, απαιτείται η χρήση ρευμάτων εισόδου/εξόδου (streams) ένα ρεύμα εξόδου μπορείτε να το φαντάζεστε σαν χώρο μνήμης στον οποίο το πρόγραμμα μόνο αποθηκεύει δεδομένα (χρησιμοποιώντας γνωστές συναρτήσεις printf, fprintf, puts, fputs) τα οποία εν συνεχεία τα παραλαμβάνει το λειτουργικό και τα στέλνει στο δίσκο. ένα ρεύμα εισόδου μπορείτε να το φαντάζεστε σαν χώρο μνήμης στον οποίο το λειτουργικό αποθηκεύει δεδομένα από το δίσκο και εν συνεχεία το πρόγραμμα μπορεί να παραλάβει αυτά τα δεδομένα για επεξεργασία χρησιμοποιώντας γνωστές συναρτήσεις (scanf, gets, fscanf, fgets ). 2
3 Ειδικά ρεύματα stdout γράφω σε ρεύμα που γίνεται flush στην οθόνη stdin διαβάζω από ρεύμα στο οποίο γίνονται flush τα δεδομένα που περνάω από το πληκτρολόγιο stdout stdin main() { FILE *fp; printf( );... scanf(.); 3
4 Ρεύματα που κατευθύνονται στο δίσκο Για να χρησιμοποιήσω από ένα πρόγραμμα κάποιο αρχείο χρειάζομαι ένα ρεύμα εισόδου/εξόδου το οποίο το δημιουργώ μέσω ενός δείκτη σε FILE. FILE *fp; stdout stdin main() { FILE *fp; printf( ); fp = fopen( );... scanf(.); fp 4
5 Αρχικοποίηση FILE *fopen(char *name, char *mode); name: όνομα αρχείου mode: "r" για ανάγνωση "w" για εγγραφή (αν ήδη, τότε αδειάζουν τα περιεχόμενα) "a" για επέκταση (αν ήδη, τα περιεχόμενα διατηρούνται) Άλλες επιλογές για mode Η πρόσθεση του + μετά από έναν χαρακτήρα σημαίνει οτι επιτρέπεται και η αντίθετη χρήση ταυτόχρονα "r+" για ανάγνωση / εγγραφή στην αρχή "w+" για ανάγνωση / εγγραφή με απόρριψη "a+" για ανάγνωση / εγγραφή στο τέλος ΣΗΜΕΙΩΣΗ: τα ειδικά ρεύματα stdout και stdin είναι πάντα αρχικοποιημένα αυτόματα όταν ξεκινά ένα πρόγραμμα. 5
6 Αρχικοποίηση Η συνάρτηση fopen επιστρέφει έναν δείκτη (file pointer) σε ένα ρεύμα που συσχετίζεται με το αρχείο. Αν δεν υπάρχει αρχείο και ανοίγω με mode "w" ή "a", τότε δημιουργείται νέο αρχείο Αν κάτι πάει στραβά, η συνάρτηση επιστρέφει NULL flush (εγγραφή στο δίσκο) main() { FILE *fp; fp = fopen( ); fprintf(fp,...);... write...data... buffer 6
7 Βασικές Συναρτήσεις int fscanf(file *fp, char *format,...) Λειτουργεί όπως η scanf Επιστρέφει αριθμό στοιχείων που διαβάστηκαν Επιστρέφει EOF σε περίπτωση τέλους αρχείου ή λάθους int fprintf(file *fp, char *format,...) Λειτουργεί όπως η printf μόνο που γράφει στο fp Επιστρέφει αριθμό στοιχείων που γράφτηκαν Επιστρέφει < 0 σε περίπτωση λάθος H printf γράφει στον ειδικό δείκτη αρχείου stdout, επομένως: printf("%d\n", i); fprintf(stdout, "%d\n", i); 7
8 Κλείσιμο αρχείου int fclose (FILE *fp); Κλείνει το αρχείο (τώρα γίνεται flush ο buffer), εκτός αν πριν κάνω fflush(fp); Επιστρέφει 0 σε περίπτωση επιτυχίας Επιστρέφει EOF σε περίπτωση λάθους Tο σύστημα εκτέλεσης κλείνει όλα τα ανοικτά αρχεία με τον τερματισμό του κυρίου προγράμματος. Αποτελεί καλή προγραμματιστική πρακτική, παρ' όλα αυτά, να κλείνουμε ρητά τα αρχεία που ανοίγουμε. Μπορεί να εκτελεστεί η εντολή fclose(stdout), μετά όμως δεν μπορώ να γράψω. Η fprintf(stdout,...) θα επιστρέφει EOF int ferror(file *fp); Επιστρέφει 0 σε περίπτωση επιτυχίας Επιστρέφει μη μηδενική τιμή σε περίπτωση λάθους σε προηγούμενη προσπέλαση του fp 8
9 fgets char *fgets(char *line, int maxline, FILE *fp); Διαβάζει το πολύ maxline-1 χαρακτήρες Αν βρει πρώτα αλλαγή γραμμής ('\n') διαβάζει μέχρι εκεί και η αλλαγή γραμμής ('\n') τοποθετείται στο line Το line τερματίζει με το χαρακτήρα τερματισμού '\0' Η συνάρτηση επιστρέφει σε περίπτωση λάθους NULL char *gets (char *s); Η gets διαβάζει 1 γραμμή από το stdin ενώ αντικαθιστά τον τερματικό χαρακτήρα νέας γραμμής με \0. Αν size of line < μέγεθος της γραμμής που διαβάζω από το stdin, τότε έχω undefined behavior Συνιστάται η χρήση της fgets αντί της gets, όπως έχουμε πει int fputs(char *s, FILE *fp); Γράφει το string s στο fp Η συνάρτηση επιστρέφει τον αριθμό των χαρακτήρων που έγραψε και EOF σε περίπτωση λάθους int puts (char *s); Γράφει το string s μαζί με τον χαρακτήρα αλλαγής γραμμής στο stdout 9
10 Παράδειγμα 1 fgets/fputs int main() { FILE *infile, *outfile; int c; char buf[10]; if ((infile = fopen( original.txt", "r")) == NULL) exit(1); if ((outfile = fopen( copy.txt", "w")) == NULL) exit(1); while (fgets(buf, 10, infile)!= NULL) { fputs(buf, outfile); //fputs("\n", outfile); /* Βάζει μια ακόμη γραμμή */ fclose(infile); fclose(outfile); 10
11 Παράδειγμα 2 fscanf/fprintf int main() { FILE *infile, *outfile; int c; char buf[81]; if ((infile = fopen( original.txt", "r")) == NULL) exit(1); if ((outfile = fopen( copy.txt", "w")) == NULL) exit(1); while (fscanf(infile, "%s", buf)!= EOF) { fprintf(outfile, "%s", buf); /* Όλες οι λέξεις κολλητά */ fprintf(stdout, "%s", buf); /* Εμφάνιση στην οθόνη */ fclose(infile); fclose(outfile); 11
12 Παράδειγμα 3 fflush/fclose int main() { FILE *fp; fp = fopen( file", "w"); fprintf(fp, "%s", "xxx"); while (1); $./a.out ^C Η εκτέλεση της εντολής "cat file" κατά την ώρα εκτέλεσης του προγράμματος δεν θα δείξει δεδομένα Το ίδιο θα συμβεί και μετά τον μη ομαλό τερματισμό του προγράμματος (με Control-C) Για την εγγραφή των δεδομένων πρέπει να προστεθεί η fflush(fp); πριν το while loop, η οποία ολοκληρώνει ότι εγγραφές έχουν γίνει μέχρι εκείνη τη στιγμή στον δίσκο. Η fclose(fp); κάνει ακριβώς το ίδιο (μόνο που επιπλέον κλείνει και το αρχείο). 12
13 Παράδειγμα 4 Εύρεση μέγιστης λέξης #include <string.h> int main() { FILE *infile; char buf[101], maxword[101]; int maxlength = 0; if ((infile=fopen("testwords.ascii", "r")) == NULL) exit(1); strcpy(maxword, ""); while (fscanf(infile, "%s", buf)!= EOF) { if (strlen(buf)>maxlength) { strcpy(maxword, buf); maxlength = strlen(buf); fprintf(stdout, "Max string is:%s with length %d\n", maxword,maxlength); 13
14 Παράδειγμα 4 Β έκδοση, με χρήση stdin /* Άμεση πληκτρολόγηση γραμμών κειμένου και τερματισμός με τον συνδυασμό Control- D (^D), που σηματοδοτεί το EOF */ #include <string.h> int main() { char buf[101], maxword[101]; int maxlength = 0; strcpy(maxword, ""); while (fscanf(stdin, "%s", buf)!= EOF) { if (strlen(buf)>maxlength) { strcpy(maxword, buf); maxlength = strlen(buf); fprintf(stdout, "Max string is:%s with length %d\n", maxword, maxlength); 14
15 Παράδειγμα 5 fgets/sscanf int main() { FILE *infile; int counter, k; char s1[20], s2[20]; float f; char buf[81]; $cat testsscanf.txt 2 minutes to days to 1.0 breakdown 3 months to 5 $./a.out 2 minutes to minutes to days to 1.0 breakdown 4 days to months to 5 3 months to if ((infile = fopen("testsscanf.txt", "r")) == NULL) exit(1); while (fgets(buf, 81, infile)!= (char *)NULL) { puts(buf); counter = sscanf(buf, "%d %s %s %f", &k, s1, s2, &f); printf("%d\t%s\t%s\t%f\n", k, s1, s2, f); fclose(infile); 15
16 Παράδειγμα 6 μίνι grep #include <string.h> int main(int argc, char *argv[]) { FILE *infile; char buf[101]; if ((infile = fopen("testwords.ascii", "r"))==null) { exit(1); if (argc!= 2) { printf("usage: %s searchstring\n", argv[0]); exit(1); while (fgets(buf, 101, infile)!= NULL) { if (strstr(buf, argv[1])!= NULL) printf("%s", buf); fclose(infile); 16
17 Παράδειγμα 7 Εκτύπωση λέξεων #include <string.h> int main() { FILE *infile; int c; char buf[81]; char *p, tokens[]=" \n\t"; if ((infile = fopen("testwords.ascii", "r"))==null) exit(1); while (fgets(buf, 81, infile)!= NULL) { c = buf[strlen(buf)-1]; p = strtok(buf, tokens); /* εκτύπωση λέξεων γραμμής στην οθόνη */ while (p) { printf("%s ", p); /* ένα κενό μεταξύ των λέξεων */ p = strtok(null, tokens); if (c=='\n') printf("\n"); 17
18 Παράδειγμα 8 Μετρητής λέξης #include <string.h> void CheckDiomedes(char *X, int *counter) { char *c = NULL, Y[81]; strcpy(y, X); c = strstr(y, "Diomhdh"); while (c) { (*counter)++; c+= strlen("diomhdh"); c = strstr(c, "Diomhdh"); printf("%s %d\n", X, *counter); main() { FILE *infile; char buf[81]; int nocc = 0; if ((infile = fopen("iliada.txt", "r"))==null) exit(1); while (fscanf(infile, "%s", buf)!= EOF) CheckDiomedes(buf, &nocc); printf("diomhdh: %d\n", nocc); fclose(infile); 18
19 Παράδειγμα 9 Ένωση αρχείων /* Παράδειγμα εκτέλεσης: $./a.out f1.txt f2.txt bothfiles.txt */ #include <stdlib.h> int main(int argc, char *argv[]) { FILE *inp, *outp; char line[200]; int i; outp = fopen(argv[argc-1], "w"); for (i = 1; i < argc -1; i++) { inp = fopen(argv[i], "r"); while (fgets(line, 200, inp)!= NULL) fputs(line, outp); fclose(inp); fclose(outp); 19
20 Θέση σε αρχείο Η δομή FILE διαχειρίζεται τη θέση του αρχείου στην οποία βρισκόμαστε αυτή τη στιγμή Η θέση αυτή περιγράφεται από έναν ακέραιο long int. Ουσιαστικά περιγράφει πόσους χαρακτήρες απέχουμε από την αρχή του αρχείου. Αν καλέσουμε μια συνάρτηση εισόδου-εξόδου (π.χ. fscanf/fprintf), η τρέχουσα θέση αλλάζει αυτόματα μετά την ολοκλήρωσή της Για να μάθουμε την τρέχουσα θέση: long ftell(file *fp); Επιστρέφει την τρέχουσα θέση στο αρχείο Μπορούμε να την τροποποιήσουμε με συγκεκριμένες εντολές 20
21 fseek / rewind int fseek(file *fp, long offset, int pos); Η fseek ξεκινάει από την θέση pos και προσθέτει ή αφαιρεί offset θέσεις Δυνατές τιμές για την pos SEEK_CUR: τρέχουσα θέση στο αρχείο SEEK_SET: αρχή αρχείου SEEK_END: τέλος αρχείου void rewind(file *fp); Τρέχουσα θέση = αρχή του αρχείου rewind(fp) fseek(fp, 0L, SEEK_SET); Άνοιγμα αρχείου FILE *fp = fopen("file", "r+"): Η αρχική θέση θα είναι στην αρχή του αρχείου FILE *fp = fopen("file", "a+"): Η αρχική θέση θα είναι στο τέλος του αρχείου Οι συναρτήσεις εγγραφής και ανάγνωσης (π.χ. fputs, fgets) αλλάζουν την τρέχουσα θέση. 21
22 Παράδειγμα fseek int main() { FILE *fp; char line[200]; long x; fp = fopen("file1", "r+"); fgets(line, 2, fp); fseek(fp, 4, SEEK_CUR); fputs("w", fp); fseek(fp, -1, SEEK_CUR); fgets(line, 200, fp); fprintf(stdout, "%s", line); $./a.out wghijkl $cat file1.txt abcdewghijkl abcdefghijkl abcdefghijkl abcdefghijkl abcdewghijkl abcdewghijkl 22
23 Παράδειγμα ftell int main() { FILE *fp; char line[200]; long x; fp = fopen("file2", "r+"); printf("%ld\n", ftell(fp)); fseek(fp, ftell(fp)+4, SEEK_SET); fputs("w", fp); fseek(fp, ftell(fp)-1, SEEK_SET); fgets(line, 200, fp); fprintf(stdout, "%s", line); printf("%d\n", ftell(fp)); fseek(fp, 4, SEEK_SET); fgets(line, 200, fp); fprintf(stdout, "%s", line); fclose(fp); $cat file2.txt abcdefghijkl $./a.out 0 wfghijkl 13 wfghijkl $cat file2.txt abcdwfghijkl 23
24 Προσθήκη δεδομένων ("a+") int main() { FILE *fp; char buf[81] = "22 hours ago"; fp = fopen("testmode.txt", "a+"); if (fp == NULL) exit(1); fputs(buf, fp); /* γράφει στο τέλος του αρχείου */ $ cat testmode.txt 2 minutes to days to 1.0 breakdown 3 months to 5 $./a.out... $ cat testmode.txt 2 minutes to days to 1.0 breakdown 3 months to 5 22 hours ago rewind(fp); while (fgets(buf, 81, fp)!= NULL) fputs(buf, stdout); /* εκτύπωση στην οθόνη */ fclose(fp); 24
25 Προσθήκη δεδομένων ("r+") int main() { FILE *fp; char buf[81] = "22 hours ago"; fp = fopen("testmode.txt", "r+"); if (fp == NULL) exit(1); fputs(buf, fp); rewind(fp); /* γράφει στη τρέχουσα θέση, δηλαδή στην αρχή του αρχείου */ while (fgets(buf, 81, fp)!= NULL) fputs(buf, stdout); /* εκτύπωση στην οθόνη */ fclose(fp); $ cat testmode.txt 2 minutes to days to 1.0 breakdown 3 months to 5 $./a.out... $ cat testmode.txt 22 hours ago days to 1.0 breakdown 3 months to 5 25
26 Προσθήκη δεδομένων ("w+") int main() { FILE *fp; char buf[81] = "22 hours ago"; $ cat testmode.txt 2 minutes to days to 1.0 breakdown 3 months to 5 $./a.out... $ cat testmode.txt 22 hours ago fp = fopen("testmode.txt", "w+"); if (fp == NULL) exit(1); fputs(buf, fp); rewind(fp); /* γράφει στην αρχή του αρχείου, όλα τα προηγούμενα δεδομένα χάνονται */ while (fgets(buf, 81, fp)!= NULL) fputs(buf, stdout); /* εκτύπωση στην οθόνη */ fclose(fp); 26
Προγραμματισμός σε C. Αρχεία κειμένου (Text files)
Προγραμματισμός σε C Αρχεία κειμένου (Text files) Εισαγωγή Στη C έχουμε ειδικές συναρτήσεις για να επεξεργαζόμαστε αρχεία κειμένου που αποθηκεύονται στο δίσκο Τα αρχεία είναι σημαντικά για μόνιμη αποθήκευση
Διαβάστε περισσότεραΕπεξεργασία Αρχείων Κειµένου
Επεξεργασία Αρχείων Κειµένου Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αρχεία Κειµένου Γενικά Συναρτήσεις Επεξεργασίας Αρχείων Κειµένου ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Αρχεία Γενικά
Διαβάστε περισσότεραΔιάλεξη 18η: Διαχείρηση Αρχείων
Διάλεξη 18η: Διαχείρηση Αρχείων Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Πρατικάκης (CSD) Αρχεία CS100, 2015-2016 1 / 24 Η βιβλιοθήκη Εισόδου/Εξόδου Στο stdioh
Διαβάστε περισσότεραΠρογραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Είσοδος/Έξοδος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2009-2010 Είσοδος/Έξοδος Μέχρι τώρα όποτε θέλαμε να διαβάσουμε χρησιμοποιούσαμε πάντα
Διαβάστε περισσότεραΠρογραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Δέκατη-τρίτη (13 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/
Διαβάστε περισσότερα(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)
(Κεφάλαιο 2.7 και 12) Αρχεία στην C (Διάλεξη 15) 14-1 Επανάληψη στην Αποθήκευση (Storage) Για να αποθηκεύσουμε δεδομένα από ένα πρόγραμμα, πρέπει να χρησιμοποιήσουμε την Δευτερεύουσα Μνήμη 14-2 Επανάληψη
Διαβάστε περισσότεραΔιαδικαστικός Προγραμματισμός
Ενότητα 11: Αρχεία κειμένου Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου
Διαβάστε περισσότεραΜεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 10 Αρχεία στην C Επανάληψη στην Αποθήκευση (Storage)
Διαβάστε περισσότεραΔομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων
Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Διαχείριση
Διαβάστε περισσότεραΔιαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 15 η Αρχεία Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης Χριστοδούλου
Διαβάστε περισσότεραΕργαστήριο 9: Αρχεία
Εργαστήριο 9: Αρχεία Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Αρχεία, Είσοδος/Έξοδος από/προς αρχεία - Δυαδικά αρχεία - Παραδείγματα ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ.
Διαβάστε περισσότεραΛύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ IΙ Λύβας Χρήστος chrislibas@ssl-unipi.gr Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος >_ FILE SYSTEM >_ ΔΙΚΑΙΩΜΑΤΑ >_ ΔΙΚΑΙΩΜΑΤΑ? >_ ΜΕΤΑΒΟΛΗ ΔΙΚΑΙΩΜΑΤΩΝ +- chmod
Διαβάστε περισσότεραΑνάπτυξη και Σχεδίαση Λογισμικού
Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Αλφαριθμητικά και Αρχεία Αλφαριθμητικά (strings) Αρχεία (files) τα βασικά στοιχεία Αλφαριθμητικά της C Συμβολοσειρές (= ακολουθίες
Διαβάστε περισσότεραΕΠΕΞΕΡΓΑΣΙΑ ΑΡΧΕΙΩΝ Λέµε αρχείο
ΕΠΕΞΕΡΓΑΣΙΑ ΑΡΧΕΙΩΝ Λέµε αρχείο (File) τη συστηµατική συγκέντρωση δεδοµένων. Τα περισσότερα προγράµµατα στη γλώσσα C, τα οποία διαπραγµατεύονται είσοδο, αποθήκευση και επεξεργασία δεδοµένων χρησιµοποιούν
Διαβάστε περισσότεραΚεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων.
Κεφάλαιο VΙ: Προσπέλαση Αρχείων. 5.1 Αρχεία δεδομένων. Έως τώρα σε ένα πρόγραμμα έχουμε μάθει να εισάγουμε δεδομένα από το πληκτρολόγιο χρησιμοποιώντας την συνάρτηση scanf() και να εκτυπώνουμε δεδομένα
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C Χειρισμός αρχείων
Η γλώσσα προγραμματισμού C Χειρισμός αρχείων Γιατί αρχεία; Τα δεδομένα που χρησιμοποιούνται σε ένα πρόγραμμα βρίσκονται στην κύρια μνήμη του υπολογιστή όσο εκτελείται το πρόγραμμα. Μετά τη εκτέλεση του
Διαβάστε περισσότεραιαφάνειες παρουσίασης #6 (β)
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ http://www.softlab.ntua.gr/~nickie/courses/progtech/ ιδάσκοντες: Γιάννης Μαΐστρος (maistros@cs.ntua.gr) Στάθης Ζάχος (zachos@cs.ntua.gr) (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης
Διαβάστε περισσότερα(Κεφάλαιο 2.7 και 12) Αρχεία στην C. ( ιάλεξη 13) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
(Κεφάλαιο 2.7 και 12) Αρχεία στην C ( ιάλεξη 13) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 14-1 Επανάληψη στην Αποθήκευση (Storage) Για να αποθηκεύσουµε δεδοµένα από ένα πρόγραµµα, πρέπει να χρησιµοποιήσουµε την ευτερεύουσα
Διαβάστε περισσότεραΔομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Διαβάστε περισσότεραΑ' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 8η εβδομάδα. Κοζάνη, 26 Νοεμβρίου 2008. Οι ασκήσεις αυτής της σειράς βασίζονται σε παραδείγματα από το βιβλίο του Β. Σεφερίδη C για αρχάριους
Διαβάστε περισσότεραΒιβλιοθήκη stdio. Προγραμματισμός II 1
Βιβλιοθήκη 1 lalis@inf.uth.gr Σύνοψη Ορίστηκε από τον Dennis Ritchie το 1975 Μέρος του προτύπου ANSI C Λειτουργίες εισόδου/εξόδου υψηλού επίπεδου και ανεξάρτητες λειτουργικού συστήματος Υποστήριξη για
Διαβάστε περισσότεραΒιβλιοθήκη stdio. Προγραμματισμός II 1
Βιβλιοθήκη 1 lalis@inf.uth.gr Δεδομένα και ερμηνεία (ξανά) Τα δεδομένα στον Η/Υ έχουν δυαδική μορφή (bytes) Η ερμηνεία των bytes εξαρτάται από το πρόγραμμα που παράγει/καταναλώνει τα δεδομένα Μια δημοφιλής
Διαβάστε περισσότεραΕισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Ενότητα 13 Αρχεία Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Αρχεία Συλλογές δεδομένων Αποθηκεύονται στην περιφερειακή μνήμη π.χ. σκληρός
Διαβάστε περισσότεραΠρογραμματισμός Υπολογιστών & Υπολογιστική Φυσική
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 8: Αρχεία και Δομές Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης Το παρόν
Διαβάστε περισσότεραH ΓΛΩΣΣΑ C. Μάθηµα 16: Είσοδος/Έξοδος: Συναρτήσεις Eξόδου. ηµήτρης Ψούνης
H ΓΛΩΣΣΑ C Μάθηµα 16: Είσοδος/Έξοδος: Συναρτήσεις Eξόδου ηµήτρης Ψούνης 2 Περιεχόµενα Μαθήµατος A. Συναρτήσεις ροής εξόδου stdout 1. Γενικά 2. Η συνάρτηση putchar() 3. Οι συναρτήσεις putc() και fputc()
Διαβάστε περισσότεραΑΡ Χ Ε Ι Α Κ Ε Ι Μ Ε Ν Ο Υ (text files)
ΑΡ Χ Ε Ι Α Κ Ε Ι Μ Ε Ν Ο Υ (text files) Αρχείο είναι μια συλλογή δεδομένων του ίδιου τύπου. Ενα αρχείο αποθηκεύεται στην περιφερειακή μνήμη (σκληρό δίσκο, δισκέττα). Τα αρχεία είναι μόνιμα. Τα δεδομένα
Διαβάστε περισσότεραΠεριεχόµενα. Πρόλογος... 15
Πρόλογος... 15 Κεφάλαιο 1: Εισαγωγή... 17 Πώς να διαβάσετε αυτό το βιβλίο...18 Η γλώσσα C Ιστορική αναδροµή...19 Τα χαρακτηριστικά της C...20 C Μια δοµηµένη γλώσσα...20 C Μια γλώσσα για προγραµµατιστές...21
Διαβάστε περισσότεραΔιαδικαστικός Προγραμματισμός
ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Διαδικαστικός Προγραμματισμός Α Εξάμηνο Μάθημα 11 ο : Αρχεία κειμένου Στόχοι μαθήματος Να κατανοήσετε την έννοια του αρχείου κειμένου και τον τρόπο με τον οποίο αυτά τα
Διαβάστε περισσότεραFILE *fopen(const char *fname, const char *mode) void fclose(file *f) void fflush(file *f)
Προγραµµατισµός Ι (ΗΥ120) ιάλεξη 19: Αρχεία Μόνιµη αποθήκευση δεδοµένων Η µνήµη (RAM) του Η/Υ κρατά δεδοµένα µόνο όσο της δίνεται µια ικανοποιητική παροχή ρεύµατος. Τα περιεχόµενα της µνήµης χάνονται (αµέσως)
Διαβάστε περισσότερα4-23: Προγραμματισμός σε C. Εισαγωγή. Εισαγωγικά. Εισαγωγικά
Εισαγωγή 1 Εισαγωγικά Πρόγραμμα = {δεδομένα + {συναρτήσεις Συναρτήσεις = {main, Δεδομένα = {μεταβλητές, σταθερές Σταθερές = ποσότητες που δεν μεταβάλλονται κατά την εκτέλεση του προγράμματος Π.χ. Pi =
Διαβάστε περισσότεραΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 13 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών
Διαβάστε περισσότεραΕνδεικτική περιγραφή μαθήματος
ΜΑΘΗΜΑ: ΔΙΔΑΣΚΩΝ: ΤΜΗΜΑ: Προγραμματισμός Η/Υ Συνδουκάς Δημήτριος Διοίκησης Επιχειρήσεων (Γρεβενά) Ενδεικτική περιγραφή μαθήματος 1. Εισαγωγή: Εισαγωγή στον προγραμματισμό, γλώσσες προγραμματισμού, μεταγλωτιστές.
Διαβάστε περισσότεραΤεχνολογία και Προγραμματισμός Υπολογιστών. Η γλώσσα προγραμματισμού C
Τεχνολογία και Προγραμματισμός Υπολογιστών Η γλώσσα προγραμματισμού C Με μια ματιά Τύπος Πίνακα Μεταβλητές με ενδείκτη Αλφαριθμητικά - Πίνακες Δισδιάστατος Πολυδιάστατος Πίνακας 2 2 Τύπος Πίνακα Σύνθετος
Διαβάστε περισσότεραΑρχεία & Ρεύματα ΑΡΧΕΙΑ & ΡΕΥΜΑΤΑ. Γεώργιος Παπαϊωάννου (2013-14) gepap@aueb.gr
ΑΡΧΕΙΑ & ΡΕΥΜΑΤΑ Γεώργιος Παπαϊωάννου (2013-14) gepap@aueb.gr Περιγραφή: Τύποι αρχείων Ρεύματα Άνοιγμα ρευμάτων Εγγραφή και ανάγνωση δεδομένων προς/από ένα ρεύμα Διαχείριση και κλείσιμο ρευμάτων Παραδείγματα
Διαβάστε περισσότεραΔομημένος Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Αλφαριθμητικά θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΑΡΧΕΙΑ ΚΕΙΜΕΝΟΥ ΣΤΗΝ C
ΑΡΧΕΙΑ ΚΕΙΜΕΝΟΥ ΣΤΗΝ C C Χατζηκυριάκου Γιώργος ΑΜ:1047 1 ΔΟΥΛΕΥΟΝΤΑΣ ΜΕ ΑΡΧΕΙΑ ΚΕΙΜΕΝΟΥ ΣΤΗΝ C Mερός Α Πρόλογος Το κείμενο αυτό θα ασχοληθεί με την εγγραφή,ανάγνωση καθώς και με την εκτύπωση αρχείων κειμένου
Διαβάστε περισσότεραΔιδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ
Διάλεξη 2:Αλφαριθμητικές Σειρές Χαρακτήρων (Strings)- Επανάληψη Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγικές Έννοιες σε Strings(Αρχικοποίηση, Ανάγνωση & Εκτύπωση) Πίνακες από Strings
Διαβάστε περισσότεραΠεριεχόμενα. Πρόλογος... 21
Περιεχόμενα Πρόλογος... 21 Κεφάλαιο 1: Εισαγωγή στον προγραμματισμό... 25 Εισαγωγή...27 Πώς να διαβάσετε αυτό το βιβλίο...27 Η δομή των κεφαλαίων...28 Γιατί να μάθω προγραμματισμό;...31 Γιατί να μάθω C;...31
Διαβάστε περισσότεραΧpήσιµες Βιβλιοθήκες της γλώσσας C
Χpήσιµες Βιβλιοθήκες της γλώσσας C Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Συναρτήσεις Επεξεργασίας Συµβολοσειρών (strings) που Παρέχονται από τη Βιβλιοθήκη Συναρτήσεις Ελέγχου
Διαβάστε περισσότεραΙ Αρχεία δεδομένων, μέρος δεύτερο: δυαδικά αρχεία ΙΙ Δομές δεδομένων (struct)
Ι Αρχεία δεδομένων, μέρος δεύτερο: δυαδικά αρχεία ΙΙ Δομές δεδομένων (struct) Αρχεία Το γενικό πλαίσιο: data stream (ρεύμα δεδομένων). stdin, stdout, stderr data stream ως προς τα δεδομένα βάσει προσπέλασης
Διαβάστε περισσότερα#define, 70, 575 #elif, 580 #else, 580 #endif, 580 #error, 584 #if, 580 #ifdef, 583 #ifndef, 580, 583 #include, 70, 227, 574 #undef, 579
Ευρετήριο Η γλώσσα C σε βάθος # #define, 70, 575 #elif, 580 #else, 580 #endif, 580 #error, 584 #if, 580 #ifdef, 583 #ifndef, 580, 583 #include, 70, 227, 574 #undef, 579 A abs(), 625 AND, 64 ASCII πίνακας
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην
Διαβάστε περισσότεραΜεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Επανάληψη για την τελική εξέταση Επανάληψη 1. Οδηγίες
Διαβάστε περισσότεραΔομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Διαβάστε περισσότεραΠρογραµµατισµός. Αρχεία
Προγραµµατισµός Αρχεία Προγραµµατισµός Η Βιβλιοθήκη Εισόδου/Εξόδου Στο stdio.h ηλώνεται ο τύπος δεδοµένων FILE (µε typedef) µε όλες τις πληροφορίες που χρειάζονται για προσπέλαση του αρχείου από τις αντίστοιχες
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων
Διαβάστε περισσότεραΚεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C
Κεφάλαιο 9.1-9.2 Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C Ένα string είναι μία ακολουθία αλφαριθμητικών χαρακτήρων, σημείων στίξης κτλ. Π.χ. Hello How are you? 121212 *Apple#123*%
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 8: Πίνακες, Αλφαριθμητικά Πίνακες Ο πίνακας είναι μια ειδική δομή για την αποθήκευση μιας σειράς από δεδομένα του ίδιου τύπου. Η δήλωση ενός πίνακα γίνεται όπως για μια
Διαβάστε περισσότεραC: Από τη Θεωρία στην Εφαρμογή
Δρ. Γ. Σ. Τσελίκης Δρ. Ν. Δ. Τσελίκας C: Από τη Θεωρία στην Εφαρμογή Ενδεικτικές Ασκήσεις από το Βιβλίο C: Από τη Θεωρία στην Εφαρμογή (Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας) Ενδεικτικές Ασκήσεις του Βιβλίου Ε.Α.1
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 9: Συναρτήσεις Ορισμός συναρτήσεων () { /* δήλωση μεταβλητών */ /* εντολές ελέγχου/επεξεργασίας */ o Μια συνάρτηση ορίζεται δίνοντας
Διαβάστε περισσότεραΠεριεχόμενα. Πρόλογος... 17
Περιεχόμενα Πρόλογος... 17 Κεφάλαιο 1: Εισαγωγή... 19 Πώς να διαβάσετε αυτό το βιβλίο... 20 Η γλώσσα C Ιστορική αναδρομή... 22 Τα χαρακτηριστικά της C... 23 C Μια δομημένη γλώσσα... 23 C Μια γλώσσα για
Διαβάστε περισσότεραΑρχεία εδοµένων. Προγραµµατισµός Ι 1
Αρχεία εδοµένων Προγραµµατισµός Ι lalis@inf.uth.gr 1 Μόνιµη αποθήκευση δεδοµένων Η µνήµη (RAM) του Η/Υ κρατάδεδοµένα µόνο όσο της δίνεται µια ικανοποιητική παροχή ρεύµατος. Τα περιεχόµενα της µνήµης χάνονται
Διαβάστε περισσότεραΠρογραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Προχωρημένα Θέματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανακατεύθυνση Εισόδου/Εξόδου Συνήθως η τυπική είσοδος ενός προγράμματος (stdin) προέρχεται
Διαβάστε περισσότεραΠρογραμματισμός συστημάτων UNIX/POSIX. Ανακατευθύνσεις (redirections)
Προγραμματισμός συστημάτων UNIX/POSIX Ανακατευθύνσεις (redirections) Shell & ανακατεύθυνση εισόδου Κατά την εκτέλεση ενός προγράμματος, η είσοδος και η έξοδος ενός προγράμματος μπορούν να ανακατευθυνθούν
Διαβάστε περισσότεραΕπανάληψη για τις Τελικές εξετάσεις. (Διάλεξη 24) ΕΠΛ 032: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ
Επανάληψη για τις Τελικές εξετάσεις (Διάλεξη 24) Εισαγωγή Το μάθημα EPL032 έχει ως βασικό στόχο την επίλυση προβλημάτων πληροφορικής με την χρήση της γλώσσας προγραμματισμού C. Επομένως πρέπει: Nα κατανοήσετε
Διαβάστε περισσότεραΠρογραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών
Χαρακτήρες Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Προγραμματισμός Δ. Τσελίκας Ι Χαρακτήρες - Εισαγωγή Έως τώρα έχουμε κατά κύριο λόγο χρησιμοποιήσει τους αριθμητικούς τύπους
Διαβάστε περισσότεραΠρογραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε
Διαβάστε περισσότεραΣυναρτήσεις πρότυπης βιβλιοθήκης 1. Μερικές συνήθεις συναρτήσεις βιβλιοθήκης int atoi(const char *p) int fclose(file *fp)
Συναρτήσεις πρότυπης βιβλιοθήκης Στο πρώτο μέρος δίνονται, με αλφαβητική σειρά, μερικές από τις πιο συνηθισμένες συναρτήσεις βιβλιοθήκης που συνοδεύουν τους σύγχρονους μεταγλωττιστές της C. Κάτω από το
Διαβάστε περισσότεραΠρογραμματισμός H/Y Ενότητα 7: Αρχεία. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)
Προγραμματισμός H/Y Ενότητα 7: Αρχεία Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για
Διαβάστε περισσότεραΠρογραμματισμός II Τα κανάλια stdin, stdout, stderr κανάλι καθιερωμένης εισόδου stdin κανάλι καθιερωμένης εξόδου stdout κανάλι σφαλμάτων stderr
Τα κανάλια stdin, stdout, stderr Kάθε φορά που ξεκινά η εκτέλεση ενός προγράμματος, ο υπολογιστής ανοίγει αυτόματα το κανάλι καθιερωμένης εισόδου stdin (standard input), το κανάλι καθιερωμένης εξόδου stdout
Διαβάστε περισσότεραΠρογραμματισμό για ΗΜΥ
ΕΠΛ 034: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 4 Είσοδος/Έξοδος εδομένων Θέματα ιάλεξης Συνάρτηση εξόδου
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην
Διαβάστε περισσότεραΑρχές Προγραμματισμού
Αρχές Προγραμματισμού https://eclass.upatras.gr/courses/ee806/index.php Βασίλης Παλιουράς paliuras@ece.upatras.gr ΠΕΡΙΣΣΟΤΕΡΑ ΓΙΑ ΑΡΧΕΙΑ 1 int main ( ) { int i; int num; FILE *data ; if ((data = fopen
Διαβάστε περισσότεραΠρογραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 2 Ο. Εισαγωγή στην C Εντολές εξόδου Εντολές εισόδου Μορφοποιητές ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 2 Ο Εισαγωγή στην C Εντολές εξόδου Εντολές εισόδου Μορφοποιητές ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Εισαγωγή στη C Η γλώσσα προγραμματισμού C είναι υψηλού επιπέδου με δυνατότητες
Διαβάστε περισσότεραΠρογραμματισμός ΙI (E)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (E) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2015 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2015
Διαβάστε περισσότεραΙ Ανασκόπηση και εμβάθυνση Μερικά πιο προχωρημένα θέματα. ΙΙ Τα αρχεία δεδομένων στη C
Ι Ανασκόπηση και εμβάθυνση Μερικά πιο προχωρημένα θέματα ΙΙ Τα αρχεία δεδομένων στη C Τελεστές αύξησης/μείωσης (++, --) Λειτουργία βάσει θέσης: ++x διάφορο του x++!!! Παράδειγμα 1 (postfix): Ισοδυναμεί
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Αλφαριθμητικά Αλφαριθμητικά (strings) Ένα αλφαριθμητικό είναι μια ακολουθία αλφαβητικών
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 3: Είσοδος / Έξοδος, Βασικοί Τύποι, Δήλωση Μεταβλητών Ένα Ακόμα Παράδειγμα #include int main(int argc, char* argv[]) { } putchar('h'); putchar('e'); putchar('l');
Διαβάστε περισσότεραΗ πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης
Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται
Διαβάστε περισσότεραΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 8 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών
Διαβάστε περισσότεραi M-1 1. ij f(i, j) N-1. (pixel) 2. M N (x, y) (x, y ) = 256. R(x, y), G(x, y), B(x, y)
D4 2 2. (pixel) 2 ( ) M N (x, y) (x, y ) ( )f(x, y) j N- i j i f(i, j) M-. ij f(i, j) 8 2 8 = 256, 2 2 f(x, y) 3,, R(x, y), G(x, y), B(x, y) 256 2 2.2 ( ) JPEG (Joint Photographic Experts Group), GIF (Graphics
Διαβάστε περισσότεραΠρογραμματισμός Υπολογιστών με C++
Προγραμματισμός Υπολογιστών με C++ ( 2012-13 ) 19η διάλεξη Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Τι θα ακούσετε σήμερα Βασικές διαφορές της C από τη C++. Απλά παραδείγματα προγραμμάτων C.
Διαβάστε περισσότεραΠαράδειγµα (2) Πίνακες (Arrays) (2) Πίνακες (Arrays) (1) int num[5];
Πίνακες (Arrays) (1) Πίνακας: Σειρά διαδοχικών θέσεων µνήµης µε περιεχόµενα ίδιου τύπου και κοινό όνοµα. Ορισµός µεταβλητής πίνακα: τύπος όνοµα_πίνακα[ακέραια σταθ. έκφρ.]; Π.χ. #define MAX_N 100 int num[5];
Διαβάστε περισσότεραΣτόχοι και αντικείμενο ενότητας. Τύπος πίνακα. Τύπος πίνακα (συν.) #6. Πίνακες και Δείκτες
Στόχοι και αντικείμενο ενότητας Ο τύπος του Πίνακα (βλ. ενότητα #2α) Ορισμός και αρχικοποίηση Αποθήκευση πινάκων στη μνήμη Πολυδιάστατοι πίνακες #6. Πίνακες και Δείκτες Ο τύπος του Δείκτη Η έννοια του
Διαβάστε περισσότεραΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ
ΑΣΚΗΣΗ 7: ΑΛΦΑΡΙΘΜΗΤΙΚΑ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η εξοικείωση με τον ορισμό, τη δήλωση και τη χρήση των χαρακτήρων, συνεπώς και των αλφαριθμητικών, της Γλώσσας
Διαβάστε περισσότεραΠρογραμματιστικές τεχνικές
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Προγραμματιστικές τεχνικές Βασίλειος Βεσκούκης Δρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Ανασκόπηση
Διαβάστε περισσότεραlab11 - Να εκτυπώνεις πιο κατατοπιστικά µηνύµατα λάθους. Αν είναι όλα ίδια, δεν είναι ξεκάθαρο ποιο αρχείο έχει πρόβληµα.
Α. Μ. Βαθμός Σχόλια 1183 FAIL - Πρώτα ελέγχουµε το argc και µετά κάνουµε προσπάθεια να προσπελάσουµε το argv. - Λάθος στην ανάγνωση του πρώτου αρχείου. Κάθε φορά που κάνεις fgetc διαβάζεις τον επόµενο
Διαβάστε περισσότεραΠρογραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15
Διαβάστε περισσότεραΠίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"
Πίνακες: μια σύντομη εισαγωγή Πίνακες χαρακτήρων: τα "Αλφαριθμητικά" Πίνακες(Arrays): έννοιες και ορισμοί Ορισμός: Πίνακας (array) = σύνολο μεταβλητών του ιδίου τύπου (int, float, char,...) με ένα κοινό
Διαβάστε περισσότεραΤμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος
Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος http://www.teiser.gr/icd/staff/lantzos lantzos@teiser.gr 1 Μονοδιάστατοι Πίνακες (tables) Μια συλλογή μεταβλητών ίδιου τύπου οι οποίες είναι αποθηκευμένες
Διαβάστε περισσότεραείκτες και Πίνακες (2)
είκτες και Πίνακες (2) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πολυδιάστατοι πίνακες Πέρασµα παραµέτρων σε προγράµµατα C ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1-1 Πίνακες εικτών Πίνακας δεικτών είναι
Διαβάστε περισσότεραΔιδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ
Διάλεξη 4: Δείκτες και Πίνακες Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα: Πίνακες Δεικτών, Παραδείγματα, Πολυδιάστατοι πίνακες Πέρασμα παραμέτρων σε προγράμματα C Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες:
Διαβάστε περισσότεραΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ
ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας
Διαβάστε περισσότεραΚεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II (Διάλεξη 12) 12-1 Ανασκόπηση Δομής Προγράμματος με Συναρτήσεις 1 void PrintMessage (); Πρότυπο (Δήλωση) Συνάρτησης (Δηλώνουν τι επιπλέον συναρτήσεις θα χρησιμοποιήσουμε
Διαβάστε περισσότεραΑ. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εξετάσεις Β Περιόδου 2015 (8/9/2015) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................
Διαβάστε περισσότεραΜεθόδων Επίλυσης Προβλημάτων
ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 14 Αλφαριθμητικές Σειρές Χαρακτήρων (Strings)
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C Δυναμική διαχείριση μνήμης
Η γλώσσα προγραμματισμού C Δυναμική διαχείριση μνήμης Κατηγορίες μνήμης εκτελέσιμου προγράμματος Στις καθολικές και στατικές μεταβλητές οι χώροι μνήμης δεσμεύονται κατά την διάρκεια της μεταγλώττισης.
Διαβάστε περισσότεραscanf() scanf() stdin scanf() printf() int float double %lf float
Εισαγωγή Στον Προγραµµατισµό «C» Είσοδος Δεδοµένων Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Η συνάρτηση scanf() Η συνάρτηση
Διαβάστε περισσότεραΔιάλεξη 20: Χαμηλού Επιπέδου Προγραμματισμός II
Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 20: Χαμηλού Επιπέδου Προγραμματισμός II (Κεφάλαια 25.2, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132
Διαβάστε περισσότεραΕισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C
Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος
Διαβάστε περισσότεραΔιάλεξη 2: Επανάληψη Προγραμματισμού Συμβολοσειρές (strings) Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 2: Επανάληψη Προγραμματισμού Συμβολοσειρές (strings) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Εισαγωγικές Έννοιες σε Strings - Πίνακες από Strings - Συναρτήσεις
Διαβάστε περισσότεραΕπανάληψη για τις Τελικές εξετάσεις
Επανάληψη για τις Τελικές εξετάσεις ( ιάλεξη 21) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Εισαγωγή Το µάθηµα EPL032 έχει ως βασικό στόχο την επίλυση προβληµάτων πληροφορικής µε την χρήση της γλώσσας προγραµµατισµού
Διαβάστε περισσότεραΔομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Διαβάστε περισσότεραΚεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)
Κεφάλαιο 8.7 Πολυδιάστατοι Πίνακες (Διάλεξη 19) Πολυδιάστατοι πίνακες Μέχρι τώρα μιλούσαμε για Μονοδιάστατους Πίνακες. ή π.χ. int age[5]= {31,28,31,30,31; για Παράλληλους πίνακες, π.χ. int id[5] = {1029,1132,1031,9991,1513;
Διαβάστε περισσότεραΚεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 12-1 Ανασκόπηση οµής Προγράµµατος µε Συναρτήσεις #include 1 void PrintMessage (); Πρότυπο ( ήλωση) Συνάρτησης (
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #3
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #3 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #3 2 Γενικά Στο Τετράδιο #3 του Εργαστηρίου θα εξοικειωθούμε με τη χρήση της εντολής πολλαπλής
Διαβάστε περισσότεραΔιαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 3 η Είσοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή
Διαβάστε περισσότεραΗ γλώσσα C. Διαχείριση Συμβολοσειρών
Η γλώσσα C Διαχείριση Συμβολοσειρών Συμβολοσειρές (strings) Θυμόμαστε: τι είναι οι συμβολοσειρές; Πίνακας χαρακτήρων (με τη σύμβαση ότι στο τέλος έχει \0 ). char str[10]; /* Άρα 9 χαρακτήρες + το \0 */
Διαβάστε περισσότερα