Η γλώσσα C. Διαχείριςη Συμβολοςειρών

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Η γλώσσα C. Διαχείριςη Συμβολοςειρών"

Transcript

1 Η γλώσσα C Διαχείριςη Συμβολοςειρών

2 υμβολοςειρζσ (strings) Σι είναι; Πίνακασ χαρακτιρων (με τη ςφμβαςη ότι ςτο τζλοσ ζχει \0 ). char str[10]; /* Άρα 9 χαρακτιρεσ + το \0 */ Με εφκολθ αρχικοποίθςθ: char str*10+ = This is ; Και με διαχείριςθ που είναι πιο εφκολθ από τθ διαχείριςθ πινάκων, όπωσ κα δοφμε. Όμωσ μθν ξεχνάμε ότι είναι πίνακεσ (άρα ιςχφουν ότι και για αυτοφσ). Σι είναι τα παρακάτω: char b[10] = this ; Σο b και το this είναι strings. char *c; char *d = that ; Δεν είναι string! Είναι ζνασ ptr ςε χαρακτιρα. Σο that είναι string (αποκθκευμζνο κάπου ςτθ μνιμθ) και ο d είναι pointer ςτον πρϊτο χαρακτιρα του d. Λζμε καταχρθςτικά ότι και το d είναι string. 2

3 Αρχικοποίθςθ int main() { char q*+ = First ; char r*16+ =, S, e, c, o, n, d, \0 -; char s[16] = Third ; char t[16]; char *u = Fifth ; char *w; t = Fourth ; /* Δεν επιτρζπεται! Πρζπει t*0+ = F, t*1+ = o... */ w = Sixth ; /* Επιτρζπεται, μιασ και είναι pointer */ 3

4 puts/fputs int puts(const char *s); Η puts τυπϊνει το string s και ζνα χαρακτήρα νζασ γραμμήσ ( \n ) ςτθν οκόνθ. Επιςτρζφει EOF αν ςυμβεί κάποιο λάκοσ, διαφορετικά επιςτρζφει μθ αρνθτικι τιμι. int fputs(const char *s, FILE *fp); Η fputs τυπϊνει το string s ςτο αρχείο fp (χωρίσ επιπλζον \n). Για τφπωμα ςτθν οκόνθ, περάςτε ωσ αρχείο το stdout. Επιςτρζφει EOF αν ςυμβεί κάποιο λάκοσ, διαφορετικά επιςτρζφει μθ αρνθτικι τιμι. Π.χ. fputs( hi, stdout); 4

5 gets/fgets char *gets(char *s); Η gets διαβάηει τθν επόμενθ γραμμι ειςόδου και τθν αποκθκεφει ςτο string s. Αντικαθιςτά τον τερματικό χαρακτήρα νζασ γραμμήσ με \0. Επιςτρζφει s, ι NULL αν ςυναντθκεί το τζλοσ του αρχείου (EOF) ι αν ςυμβεί κάποιο λάκοσ. Δεν είναι αςφαλήσ ςυνάρτηςη (τι γίνεται αν το s[] δεν φτάνει?). char *fgets(char *s, int num, FILE *fp); Η gets διαβάηει μζχρι num-1 χαρακτήρεσ από το αρχείο fp (το πλθκτρολόγιο είναι το stdin) και τθν αποκθκεφει ςτο string s. Αν πληκτρολογήθηκε το newline, τότε γράφεται ΚΑΙ ο χαρακτήρασ \n μζςα ςτο s και αμζςωσ μετά γράφεται και το \0. Επιςτρζφει s, ι NULL αν ςυναντθκεί το τζλοσ του αρχείου (EOF) ι αν ςυμβεί κάποιο λάκοσ. Να την προτιμάται ζναντι τησ gets(). Π.χ. fgets(str, 9, stdin); /* Διαβάηει ζωσ 8 χαρακτιρεσ από πλθκτρολόγιο */ 5

6 printf / scanf Εκτφπωςθ ι διάβαςμα με το %s ςτο format printf: %s : τυπϊνει όλο το string %Ns τυπϊνει τουλάχιςτον Ν χαρακτιρεσ (με κενά αν χρειαςτεί) %.Ms τυπϊνει το πολφ Μ χαρακτιρεσ %N.Ms τυπϊνει τουλάχιςτον Μ και το πολφ Μ χαρακτιρεσ %-Ns τυπϊνει τουλάχιςτον Ν χαρακτιρεσ, με αριςτερι ςτοίχιςθ Π.χ. printf( %-3.5s, str); scanf: %s : διαβάηει μία ςυμβολοςειρά ΠΡΟΟΧΗ: θ ςυμβολοςειρά τελειϊνει όταν ςυναντθκεί χαρακτιρασ κενοφ (space, tab, newline) 6

7 Παραδείγματα /* gets example */ #include <stdio.h> int main() { char string [256]; printf ("Insert your full address: "); gets(string); printf ("Your address is: %s\n",string); return 0; /* gets example */ #include <stdio.h> int main () { char string [] = "Hello world!"; puts (string); 7

8 Παραδείγματα #include <stdio.h> main() { char test1[5], test2[5]; scanf("%s", test1); printf("test1=%s\n", test1); gets(test2); printf("test2=%s\n", test2); Εκτέλεση: $./aout test1=13131 test2= $... Σο test2 κα είναι ίςο με "end of line" από τθν προθγοφμενθ είςοδο! 8

9 Παραδείγματα #include <stdio.h> main() { char test1[5], test2[5]; scanf("%s", test1); printf("test1=%s\n", test1); scanf("%s", test2); printf("test2=%s\n", test2); Εκτέλεση: $./aout 1313 test1= test2=1233 $... Χρθςιμοποιείται θ scanf αντί για τθν gets. Η scanf αγνοεί τθν αλλαγι γραμμισ αφοφ παίρνει το πρϊτο μθ blank και ςταματά ςτο αμζςωσ επόμενο μθ blank 9

10 Παραδείγματα #include <stdio.h> main() { char lula[]="lula"; char *ptr = lula; puts(lula); puts(" > "); puts(ptr + 2); printf("%s > %s", lula, ptr+2); Εκτέλεση: $./aout lula > la lula > la $... H puts προςθζτει το \n 10

11 Παραδείγματα «Χειροποίθτεσ» puts που δεν εκτυπϊνουν το EOL. H putchar(ch) τυπϊνει ςτθν οκόνθ τον χαρακτιρα ch Είναι ιςοδφναμθ με το printf( %c, ch); void myputs(char *string) { int i = 0; while (string[i]!= '\0') putchar(string[i++]); void myputs(char *string) { while (*string!= '\0') { putchar(*string); string++; /* To \0 έχει ASCII κωδικό μηδέν (0)! */ void myputs(char *string) { while (*string) putchar(*(string++)); 11

12 sprintf / sscanf int sprintf(char *s, const char *format,...) Η ςυνάρτθςθ αυτι λειτουργεί ακριβϊσ όπωσ θ printf() με τθ διαφορά δεν τυπώνει ςτην οθόνη αλλά γράφει ςτο string s ςτο οποίο τοποθετείται επιπλζον και ο χαρακτήρασ '\0'. Επιςτρζφεται ο αρικμόσ των χαρακτιρων που γράφτθκαν ςτο s πλθν του χαρακτιρα '\0'. int sscanf(char *s, const char *format,...) Η ςυνάρτθςθ αυτι λειτουργεί ακριβϊσ όπωσ θ scanf() με τθ διαφορά ότι η είςοδοσ των δεδομζνων προζρχεται από το string s και όχι από το πληκτρολόγιο. Επιςτρζφει είτε τον αρικμό των αντικειμζνων που ενθμερϊκθκαν (αν όλα πάνε καλά), είτε EOF (ςε περίπτωςθ λάκουσ). 12

13 Παράδειγμα /* sprintf example */ #include <stdio.h> int main () { char buffer [50]; int n, a=5, b=3; n=sprintf (buffer, "%d plus %d is %d", a, b, a+b); printf ("[%s] is a %d char long string\n", buffer, n); return 0; $ a.out [5 plus 3 is 8] is a 13 char long string 13

14 Παράδειγμα $./a.out 2 #include <stdio.h> main() { int k, m; float f; char *x="2 minutes to 12.0"; char y[20], z[20], w[80]; minutes to New order: 2 to 12 minutes with 15 characters (including spaces) sscanf(x, "%d%s%s%f", &m, y, z, &f) ; printf("%d\n%s\n%s\n%f\n", m, y, z, f) ; k = sprintf(w, "%d %s %d %s ",m, z, (int) f, y) ; printf("\nnew order: %s\n", w); printf("with %d characters (including spaces)", k); 14

15 Επαναλθπτικι κλιςθ τθσ sscanf #include <stdio.h> main() { int k, m; float f; char x[30]="2 minutes to 12.0"; char *p = x; char y[30]; while ((k=sscanf(p, "%s", y)) > 0) { printf("%s\n", y); p = p + k + 1; 15

16 Επαναλθπτικι μζτρθςθ λζξεων #include <stdio.h> main() { int k, count; char x[30], y[30], *p; while (1) { count = 0; gets(x); if (strcmp(x, "EXIT")!= 0) { p = x; while ((k=sscanf(p, "%s", y) > 0) && ((p-x) < strlen(x))) { printf("%s\n", y); p = p + k + 1; count++; printf("total number of words: %d\n", count); else break; 16

17 Επαναλθπτικι μζτρθςθ λζξεων (2 θ ) #include <stdio.h> main() { int k, count; char x[30], y[30], *p; while (strcmp(gets(x), "EXIT")!= 0) { count = 0; p = x; while ((k=sscanf(p,"%s",y) > 0) && ((p-x) < strlen(x))) { printf("%s\n", y); p = p + k + 1; count++; printf("total number of words: %d\n", count); 17

18 Διαχείριςθ υμβολοςειρϊν μζςω string.h Μια ςυμβολοςειρά (string) είναι ζνασ πίνακασ χαρακτιρων ςτον οποίο τοποκετείται τελευταίοσ ο χαρακτιρασ '\0', ωσ ζνδειξθ του τζλουσ τθσ ςυμβολοςειράσ Μποροφμε να διαχειριςτοφμε ζνα string με δφο τρόπουσ Ωσ ζναν πίνακα, το οποίο ςυνεπάγεται ςχετικι δυςκολία char line[8]; line[0] = 'H'; line[1] = 'e'; line[2] = 'l'; line[3] = 'l'; line[4] = 'o'; line[5] = '\0'; Μζςω τθσ χριςθσ ειδικϊν ςυναρτιςεων που παρζχει θ C μζςω του αρχείου <string.h> strcpy(line, "Hello"); 18

19 υναρτιςεισ Διαχείριςθσ υμβολοςειρϊν char *strcpy(s, t); Αντιγράφει το string t ςτο s, μαηί με τον χαρακτιρα '\0' και επιςτρζφει το s Παράδειγμα char s[6]; strcpy(s, "hello"); Σι γίνεται αν ςτο s δεν χωράει το t; char *strncpy(s, t, n); Αντιγράφει το πολφ n χαρακτιρεσ από το t ςτο s, το t μπορεί να ζχει λιγότερουσ. Επιςτρζφει το s char *strcat(s, t); Προςκζτει ςτο τζλοσ του s το string t. Επιςτρζφει το s. char *strncat(s, t, n); Προςκζτει ςτο τζλοσ του s το πολφ n χαρακτιρεσ του t, και τοποκετεί επίςθσ και τον χαρακτιρα '\0'. Επιςτρζφει το s. 19

20 υναρτιςεισ Διαχείριςθσ υμβολοςειρϊν int strcmp(s, t); υγκρίνει λεξικογραφικά τα δφο strings. (βαςικό κριτιριο) περιεχόμενο (δευτερεφον κριτιριο) μικοσ Επιςτρζφει: Αν (s == t) 0 Αν (s > t) > 0 Αν (s < t) < 0 int strncmp(s, t, n); Όπωσ και παραπάνω αλλά ςυγκρίνει λεξικογραφικά το πολφ n χαρακτιρεσ char *strstr(s, t); Επιςτρζφει ζνα δείκτθ ςτθν πρϊτθ εμφάνιςθ ςτο s του t, (διαφορετικά) επιςτρζφει NULL αν το t δεν περιζχεται ςτο s. int strlen(s); Επιςτρζφει το μικοσ τθσ ςυμβολοςειράσ s (χωρίσ το \0). 20

21 Παραδείγματα Ζςτω: char a[30] = "Καλθμζρα, "; char b[20] = "Καλό μάκθμα!"; Σότε: strcpy(a,b) printf("%s", a); Καλό μάκθμα! strncpy(a,b,4) printf("%s", a); Καλόμζρα, strcat(a,b) printf("%s", a); Καλημέρα, Καλό μάθημα! 21

22 Παραδείγματα Ζςτω: int ret; char *p; char a[30] = "Καλημέρα, "; char b[20] = "Καλό μάθημα!"; Σότε: ret = strcmp(a,b); printf("%d", ret); κάποια αρνθτικι τιμι p = strstr(a,"θμ") printf("%s", p); θμζρα, printf("%d", strlen(a) ); 10 Σι κα τυπϊςει το: printf( %d, %d, sizeof(a), strlen(a)); 30, 10 22

23 υναρτιςεισ Διαχείριςθσ υμβολοςειρϊν char *strtok(char *s, char *t); Ψάχνει ςτο s για κομμάτια (tokens) που διαχωρίηονται με τουσ χαρακτιρεσ που περιγράφονται ςτο t. Κάκε διαφορετικι κλιςθ τθσ strtok επιςτρζφει και ζνα καινοφργιο token (κανονικό string με χαρακτιρα τερματιςμοφ). Χριςθ: 1 ο token: καλϊ tok = strtok(s, t); Επόμενα: καλϊ tok = strtok(null, t); Επιςτρζφει NULL αν δεν υπάρχουν άλλα tokens ςτο s. Προςοχι! Η ςυνάρτηςη τροποποιεί το πρώτο όριςμα τησ Δεν μπορεί να χρηςιμοποιηθεί ςε ςταθερά strings 23

24 Παράδειγμα strtok char [] = "zas@cs.uoi.gr"; char token[] = "@"; char *s; s = strtok( , token); while ((s = strtok(null, token))!= NULL)... 24

25 Παράδειγμα strtok (1/2) Να γράψετε πρόγραμμα το οποίο λαμβάνει διευκφνςεισ θλεκτρονικοφ ταχυδρομείου και επιςτρζφει τα πεδία από τα οποία αποτελοφνται χετικό παράδειγμα εκτζλεςθσ: $ myprog type address: zas@cs.uoi.gr fields of address: zas, cs, uoi, gr 25

26 Παράδειγμα strtok (2/2) #include <stdio.h> #include <string.h> int main(void) { char [80]; char token[] = "@."; char *s; printf("type address:"); scanf("%s", ); printf("fields of address:"); s = strtok( , token); if (s!= NULL) printf("%s", s); while ((s = strtok(null, token))!= NULL) { printf(", %s", s); return 0; 26

27 υναρτιςεισ Ελζγχου - Μετατροπισ #include <ctype.h> υναρτιςεισ ελζγχου int isalnum(int c);true για γράμμα ι ψθφίο int isalpha(int c); true για γράμμα int isdigit(int c); true για ψθφίο int isspace(int c); true για κενό, tab, \n,... int islower(int c); true για γράμμα μικρό int isupper(int c); true για γράμμα κεφαλαίο υναρτιςεισ μετατροπισ int tolower(int c); μετατροπι κεφαλαίου ςε μικρό int toupper(int c); μετατροπι μικροφ ςε κεφαλαίο 27

28 υναρτιςεισ Ελζγχου - Μετατροπισ #include <stdlib.h> int atoi(char *s); μετατροπι string ςε ακζραιο Σο string s πρζπει να ξεκινά με κενό ι κάποιον αρικμό Η ςυνάρτθςθ ςταματά να διαβάηει από το string μόλισ βρει κάποιον μθαρικμθτικό χαρακτιρα Αν θ μετατροπι δεν μπορεί να ςυμβεί, επιςτρζφει 0 long atol(char *s); μετατροπι string ςε long double atof(char *s); μετατροπι string ςε double Πϊσ μετατρζπω αρικμοφσ ςε strings; 28

29 Παραδείγματα int i; i = atoi( "512" ); i = atoi( " " ); i = atoi( " " ); i = atoi( " " ); i = atoi( " 512 bottles of beer on the wall" ); int i = atoi( " does not work: 512" ); // i == 0 long l = atol( " " ); double x = atof( "42.0is_the_answer" ); 29

30 φνοψθ Βαςικζσ ςυναρτιςεισ ειςόδου εξόδου int printf(const char *format,...); int scanf(const char *format,...) Ειδικοί χαρακτιρεσ ςτο format τουσ Ακζραιοι αρικμοί %d ςτο δεκαδικό ςφςτθμα %u χωρίσ πρόςθμο ςτο δεκαδικό ςφςτθμα %o χωρίσ πρόςθμο ςτο οκταδικό ςφςτθμα %x χωρίσ πρόςθμο ςτο δεκαεξαδικό ςφςτθμα Αρικμοί κινθτισ υποδιαςτολισ %f ςε μορφι: *-]ddd.dddddd %e ςε μορφι: *-]ddd.dddddd e[+/-]ddd %g ςε μορφι %f ι %e 30

31 φνοψθ Ειδικοί χαρακτιρεσ ςτο format τουσ Άλλοι τφποι %c χαρακτιρασ %s ςυμβολοςειρά (string) %p δείκτθσ Παραλλαγζσ ςτο format Μζγεκοσ αρικμϊν %h αρικμοί short, π.χ. %hd, %hx %l αρικμοί long ι double, π.χ. %ld, %lf %L αρικμοί long double, π.χ. %Lf 31

32 φνοψθ Παραλλαγζσ ςτο format Μικοσ αποτελζςματοσ %8d αρικμόσ ςε μικοσ 8 χαρακτιρων %20s ςυμβολοςειρά ςε μικοσ 20 χαρακτιρων %+8d αρικμόσ ςε μικοσ 8 χαρακτιρων, τφπωςε και πρόςθμο %08d αρικμόσ ςε μικοσ 8 χαρακτιρων, τα πρϊτα εξ' αυτϊν 0 %-8d όπωσ το %8d με ςτοίχιςθ αριςτερά 32

33 printf demo (1/2) #include <stdio.h> int main(void) { int i; // Number to print. double f; // Number to print. printf("enter an integer (use either + or -): "); scanf ("%d", &i); printf("this is the integer... %d \n", i); printf("this is the integer in octal... %o \n", i); printf("octal with leading zero... %#o \n", i); printf("this is the integer in hex... %x or %X \n", i, i); printf("hex with leading 0x... %#x or %#X \n", i, i); printf("forcing a plus or minus sign... %+d \n", i); printf("include space before + numbers... % d \n", i); printf("field width of 3... %3d \n", i); printf("field width of 5... %5d \n", i); printf("field width of 7... %7d \n", i); printf("same as above with left justification. %-7d \n", i); printf("field width of 7 with zero fill... %07d \n", i); printf("at least 3 digits... %.3d \n", i); printf("at least 5 digits... %.5d \n", i); printf("field width of 10, at least 7 digits.. %10.7d \n", i); 33

34 printf demo (2/2) printf("\nenter a floating point number: "); scanf ("%lf", &f); printf("this is the number... %f \n", f); printf("forcing a plus or minus sign... %+f \n", f); printf("field width of %20f \n", f); printf("0 decimal places... %.0f \n", f); printf("0 decimal places forcing decimal... %#.0f \n", f); printf("3 decimal places... %.3f \n", f); printf("20 decimal places... %.20f \n", f); printf("field width of 20, 3 decimal places... %20.3f \n", f); printf("\nhere is the number in e format:\n"); printf("3 decimal places... %.3e \n", f); printf("5 decimal places & big 'e'... %.5E \n", f); printf("\nhere is the number in g format:\n"); printf("no special requests... %g \n", f); printf("maximum of 1 significant figure... %.1g \n", f); printf("maximum of 4 significant figures... %.4g \n", f); return 0; 34

35 φνοψθ Διαχείριςθ χαρακτιρων/ςυμβολοςειρϊν int putchar(int c); int getchar(); int puts (const char *s); char *gets (char *s); Διαχείριςθ ςυμβολοςειρϊν <string.h> size_t strlen(const char *s): Μζτρθςθ αρικμοφ χαρακτιρων τθσ ςυμβολοςειράσ s char *strcpy(char *s1, const char *s2): Αντιγραφι τθσ ςυμβολοςειράσ s2 ςτθν s1 char *strcat(char *s1, const char *s2): Προςκικθ τθσ ςυμβολοςειράσ s2 ςτο τζλοσ τθσ s int strcmp(const char *s1, const char *s2): φγκριςθ των ςυμβολοςειρϊν s1 και ς2 35

36 φνοψθ Μετατροπι ςυμβολοςειρϊν <stdlib.h> int atoi(const char *s): Μετατροπι τθσ ςυμβολοςειράσ s ςε int. long int atol(const char *s): Μετατροπι τθσ ςυμβολοςειράσ s ςε long int. double atof(const char *s): Μετατροπι τθσ ςυμβολοςειράσ s ςε double. 36

37 Προγραμματισμός σεc Περίπτωςη Διαχείριςησ Συμβολοςειρών: Ορίςματα ςτην main()

38 Ορίςματα ςτθν main() $ ls $ ls l; ls al; gcc myfile.c -lm Γενικά ςε ζνα πρόγραμμα μποροφμε να δϊςουμε ωσ είςοδο δεδομζνα/ορίςματα/επιλογζσ τθ ςτιγμι που ξεκινάει θ εκτζλεςθ του, από τθ γραμμι εντολϊν Πϊσ μποροφμε να γνωρίηουμε τα δεδομζνα/ορίςματα που δίνει o χριςτθσ; Απάντηςη: Παράμετροι ςτθν main()! (τθν οποία μζχρι τϊρα τθν ορίηαμε χωρίσ παραμζτρουσ) Σα δεδομζνα τα δζχεται θ main() ωσ strings 38

39 Ορίςματα ςτθν main() Μζχρι τϊρα: int main(void) { Γενικά όμωσ, ο προγραμματιςτισ μπορεί να γράψει: int main(int argc, char *argv[]) { ι ιςοδφναμα: int main(int argc, char **argv) { Σο argv είναι ζνασ πίνακασ δεικτϊν ςε ςυμβολοςειρζσ (strings) To argc είναι το πλικοσ των ςτοιχείων του πίνακα Πάντα το ςτοιχείο 0 είναι το όνομα του προγράμματοσ 39

40 Παράδειγμα οριςμάτων ςτθν main() $ a.out hi there argc = 3 argv[0]: όνομα προγράμματοσ, a.out" argv[1]: πρϊτο όριςμα προγράμματοσ hi argv[2]: δεφτερο όριςμα προγράμματοσ there" 40

41 Παράδειγμα (εκτφπωςθ οριςμάτων) $ a.out hello world argc = 3 Program name: a.out Arguments: hello, world #include <stdio.h> main(int argc, char *argv[]) { int i; printf( argc = %d\n, argc); printf( Program name: %s\n, argv[0]); printf( Arguments: ); for (i = 1; i < argc; i++) printf( %s,, argv[i]); printf("\n"); 41

42 Επιπλζον παράδειγμα (πρόςκεςθ οριςμάτων) $ myadd Program name: myadd Result: 30 #include <stdio.h> main(int argc, char *argv[]) { int i, sum = 0; printf( Program name: %s\n, argv[0]); if (argc < 2) exit(1); /* Nothing to add */ for (i = 1; i < argc; i++) { sum = sum + atoi(argv[i]); printf( Result: %d\n, sum); 42

Η γλώσσα C. Διαχείριση Συμβολοσειρών

Η γλώσσα C. Διαχείριση Συμβολοσειρών Η γλώσσα C Διαχείριση Συμβολοσειρών Συμβολοσειρές (strings) Θυμόμαστε: τι είναι οι συμβολοσειρές; Πίνακας χαρακτήρων (με τη σύμβαση ότι στο τέλος έχει \0 ). char str[10]; /* Άρα 9 χαρακτήρες + το \0 */

Διαβάστε περισσότερα

Χpήσιµες Βιβλιοθήκες της γλώσσας C

Χpήσιµες Βιβλιοθήκες της γλώσσας C Χpήσιµες Βιβλιοθήκες της γλώσσας C Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Συναρτήσεις Επεξεργασίας Συµβολοσειρών (strings) που Παρέχονται από τη Βιβλιοθήκη Συναρτήσεις Ελέγχου

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην

Διαβάστε περισσότερα

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 19. Αλφαριθμητικά II. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 19. Αλφαριθμητικά II. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 19. Αλφαριθμητικά II Ιωάννθσ Κατάκθσ Αλφαρικμθτικά ςτθ C Ζνα string είναι μία ακολουκία αλφαρικμθτικϊν χαρακτήρων, ςθμείων ςτίξθσ κτλ. Π.χ. Hello How are you?

Διαβάστε περισσότερα

Βαγγζλθσ Οικονόμου Διάλεξθ 7. Συναρτιςεισ Μζροσ 2ο

Βαγγζλθσ Οικονόμου Διάλεξθ 7. Συναρτιςεισ Μζροσ 2ο Συναρτιςεισ Μζροσ 2 ο Βαγγζλθσ Οικονόμου Διάλεξθ 7 1 Περιεχόμενα Βιβλιοκικεσ τθσ C Μεταβίβαςθ παραμζτρων παράδειγμα swap Αναδρομικότθτα Συναρτιςεισ και Πίνακεσ 2 H βαςικι βιβλιοκικθ τθσ C Η βαςικι βιβλιοκικθ

Διαβάστε περισσότερα

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

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Αλφαριθμητικά και Αρχεία Αλφαριθμητικά (strings) Αρχεία (files) τα βασικά στοιχεία Αλφαριθμητικά της C Συμβολοσειρές (= ακολουθίες

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Χειρισμός χαρακτήρων, συμβολοσειρές Συμβολοσειρές Συμβολοσειρά ονομάζουμε μια οποιαδήποτε ακολουθία αλφαριθμητικών χαρακτήρων: «Κώστας», «Κώστας Βασιλάκης», «Δαιδάλου 23» Στην

Διαβάστε περισσότερα

Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων. 18. Αλφαριθμητικά. Ιωάννθσ Κατάκθσ. ΕΡΛ 032: Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων

Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων. 18. Αλφαριθμητικά. Ιωάννθσ Κατάκθσ. ΕΡΛ 032: Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων Ρρογραμματιςμόσ Μεκόδων Επίλυςθσ Ρροβλθμάτων 18. Αλφαριθμητικά Ιωάννθσ Κατάκθσ Αλφαρικμθτικά o Ζνα string είναι μία ακολουκία χαρακτιρων, ςθμείων ςτίξθσ κτλ Hello How are you? 121212 *Apple#123*% Σιμερα

Διαβάστε περισσότερα

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 8 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

4-23: Προγραμματισμός σε C. Εισαγωγή. Εισαγωγικά. Εισαγωγικά

4-23: Προγραμματισμός σε C. Εισαγωγή. Εισαγωγικά. Εισαγωγικά Εισαγωγή 1 Εισαγωγικά Πρόγραμμα = {δεδομένα + {συναρτήσεις Συναρτήσεις = {main, Δεδομένα = {μεταβλητές, σταθερές Σταθερές = ποσότητες που δεν μεταβάλλονται κατά την εκτέλεση του προγράμματος Π.χ. Pi =

Διαβάστε περισσότερα

17. Πολυδιάςτατοι πίνακεσ

17. Πολυδιάςτατοι πίνακεσ Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 17. Πολυδιάςτατοι πίνακεσ Ιωάννθσ Κατάκθσ Πολυδιάςτατοι πίνακεσ o Μζχρι τϊρα μιλοφςαμε για μονοδιάςτατουσ πίνακεσ ι int age[5]= 31,28,31,30,31; o Για παράλλθλουσ

Διαβάστε περισσότερα

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

ιαφάνειες παρουσίασης #6 (β) ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ http://www.softlab.ntua.gr/~nickie/courses/progtech/ ιδάσκοντες: Γιάννης Μαΐστρος (maistros@cs.ntua.gr) Στάθης Ζάχος (zachos@cs.ntua.gr) (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

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

Συναρτήσεις πρότυπης βιβλιοθήκης 1. Μερικές συνήθεις συναρτήσεις βιβλιοθήκης int atoi(const char *p) int fclose(file *fp) Συναρτήσεις πρότυπης βιβλιοθήκης Στο πρώτο μέρος δίνονται, με αλφαβητική σειρά, μερικές από τις πιο συνηθισμένες συναρτήσεις βιβλιοθήκης που συνοδεύουν τους σύγχρονους μεταγλωττιστές της C. Κάτω από το

Διαβάστε περισσότερα

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 8: Πίνακες, Αλφαριθμητικά Πίνακες Ο πίνακας είναι μια ειδική δομή για την αποθήκευση μιας σειράς από δεδομένα του ίδιου τύπου. Η δήλωση ενός πίνακα γίνεται όπως για μια

Διαβάστε περισσότερα

Συναρτήσεις διαχείρισης αλφαριθμητικών

Συναρτήσεις διαχείρισης αλφαριθμητικών Συναρτήσεις διαχείρισης αλφαριθμητικών Όνομα βιβλιοθήκης: string.h Ενδεικτικές συναρτήσεις: char *strcpy(char *s1, char *s2): Αντιγράφει την ακολουθία χαρακτήρων s2 στον πίνακα s1. Επιστρέφεται η τιμή

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

16. Πίνακεσ και Συναρτήςεισ

16. Πίνακεσ και Συναρτήςεισ Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 16. Πίνακεσ και Συναρτήςεισ Ιωάννθσ Κατάκθσ Σιμερα o Κλιςθ με τιμι o Κλιςθ με αναφορά o Πίνακεσ και ςυναρτιςεισ o Παραδείγματα Ειςαγωγι o Στισ προθγοφμενεσ

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Αλφαριθμητικά Αλφαριθμητικά (strings) Ένα αλφαριθμητικό είναι μια ακολουθία αλφαβητικών

Διαβάστε περισσότερα

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

Τύποι Δεδομένων Είσοδος/Έξοδος Εργαστήριο 2 ο Τύποι Δεδομένων Είσοδος/Έξοδος Εισαγωγή Σκοπός του εργαστηρίου αυτού είναι η εισαγωγή μας στους τύπους δεδομένων της C και η εξοικείωση μας με συναρτήσεις του ρεπερτορίου της ANSI C σχετικές

Διαβάστε περισσότερα

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

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Αλφαριθμητικά θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Επεξεργασία Αρχείων Κειµένου

Επεξεργασία Αρχείων Κειµένου Επεξεργασία Αρχείων Κειµένου Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αρχεία Κειµένου Γενικά Συναρτήσεις Επεξεργασίας Αρχείων Κειµένου ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 1 Αρχεία Γενικά

Διαβάστε περισσότερα

Δομθμζνοσ Προγραμματιςμόσ. Βαγγζλθσ Οικονόμου Εργαςτιριο 9

Δομθμζνοσ Προγραμματιςμόσ. Βαγγζλθσ Οικονόμου Εργαςτιριο 9 Δομθμζνοσ Προγραμματιςμόσ Βαγγζλθσ Οικονόμου Εργαςτιριο 9 Συναρτιςεισ Αφαιρετικότθτα ςτισ διεργαςίεσ Συνάρτθςεισ Διλωςθ, Κλιςθ και Οριςμόσ Εμβζλεια Μεταβλθτών Μεταβίβαςθ παραμζτρων ςε ςυναρτιςεισ Συναρτιςεισ

Διαβάστε περισσότερα

Διάλεξη 18η: Διαχείρηση Αρχείων

Διάλεξη 18η: Διαχείρηση Αρχείων Διάλεξη 18η: Διαχείρηση Αρχείων Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Πρατικάκης (CSD) Αρχεία CS100, 2015-2016 1 / 24 Η βιβλιοθήκη Εισόδου/Εξόδου Στο stdioh

Διαβάστε περισσότερα

Διάλεξη 8η: Αλφαριθμητικά (strings)

Διάλεξη 8η: Αλφαριθμητικά (strings) Διάλεξη 8η: Αλφαριθμητικά (strings) Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) strings CS100, 2016-2017

Διαβάστε περισσότερα

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

Αρχές Προγραμματισμού Αρχές Προγραμματισμού https://eclass.upatras.gr/courses/ee806/index.php Βασίλης Παλιουράς paliuras@ece.upatras.gr Άσκηση Να γραφεί πρόγραμμα που να αθροίζει δύο διανύσματα Ν στοιχείων σε ISO C90 χρησιμοποιώντας

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 15. Πίνακεσ ΙI. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 15. Πίνακεσ ΙI. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 15. Πίνακεσ ΙI Ιωάννθσ Κατάκθσ Σιμερα o Ειςαγωγι o Διλωςθ o Αρχικοποίθςθ o Πρόςβαςθ o Παραδείγματα Πίνακεσ - Επανάλθψθ o Στθν προθγοφμενθ διάλεξθ κάναμε μια

Διαβάστε περισσότερα

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8 Δείκτεσ Διαχείριςθ Μνιμθσ Βαγγζλθσ Οικονόμου Διάλεξθ 8 Δείκτεσ Κάκε μεταβλθτι ςχετίηεται με μία κζςθ ςτθν κφρια μνιμθ του υπολογιςτι. Κάκε κζςθ ςτθ μνιμθ ζχει τθ δικι τθσ ξεχωριςτι διεφκυνςθ. Με άμεςθ

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4.1

ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4.1 ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4. Να γίνει πρόγραμμα το οποίο να επιλφει το Διαγώνιο Σφςτθμα: A ι το ςφςτθμα : ι ςε μορφι εξιςώςεων το ςφςτθμα : Αλγόρικμοσ m(). Διαβάηουμε τθν τιμι του ( θ διάςταςθ του Πίνακα Α )..

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις

Διαβάστε περισσότερα

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

Προγραμματισμός Υπολογιστών με C++ Προγραμματισμός Υπολογιστών με C++ ( 2012-13 ) 19η διάλεξη Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Τι θα ακούσετε σήμερα Βασικές διαφορές της C από τη C++. Απλά παραδείγματα προγραμμάτων C.

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής

ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

int a[5]; a[0] a[1] a[2] a[3] a[4] 15/10/2009

int a[5]; a[0] a[1] a[2] a[3] a[4] 15/10/2009 Προγραµµατισµός Ι (ΗΥ10) ιάλεξη : Πίνακες, Αλφαριθµητικά Πίνακες Ο πίνακας είναι µια ειδική δοµή για την αποθήκευση µιας σειράς από δεδοµένα του ίδιου τύπου. Η δήλωσηενός πίνακα γίνεται όπως για µια κανονική

Διαβάστε περισσότερα

H ΓΛΩΣΣΑ C. Μάθηµα 16: Είσοδος/Έξοδος: Συναρτήσεις Eξόδου. ηµήτρης Ψούνης

H ΓΛΩΣΣΑ C. Μάθηµα 16: Είσοδος/Έξοδος: Συναρτήσεις Eξόδου. ηµήτρης Ψούνης H ΓΛΩΣΣΑ C Μάθηµα 16: Είσοδος/Έξοδος: Συναρτήσεις Eξόδου ηµήτρης Ψούνης 2 Περιεχόµενα Μαθήµατος A. Συναρτήσεις ροής εξόδου stdout 1. Γενικά 2. Η συνάρτηση putchar() 3. Οι συναρτήσεις putc() και fputc()

Διαβάστε περισσότερα

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 9 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

Προγραμματισμός σε C. Αρχεία κειμένου (Text files)

Προγραμματισμός σε C. Αρχεία κειμένου (Text files) Προγραμματισμός σε C Αρχεία κειμένου (Text files) Εισαγωγή Στη C έχουμε ειδικές συναρτήσεις για να επεξεργαζόμαστε αρχεία κειμένου που αποθηκεύονται στο δίσκο Τα αρχεία είναι σημαντικά για μόνιμη αποθήκευση

Διαβάστε περισσότερα

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 20. Αρχεία. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 20. Αρχεία. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 20. Αρχεία Ιωάννθσ Κατάκθσ Aποκικευςθ Για να αποκθκεφςουμε δεδομζνα από ζνα πρόγραμμα, πρζπει να χρθςιμοποιιςουμε τθ δευτερεφουςα μνιμθ Aποκικευςθ Η πιο ςυνθκιςμζνθ

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Συναρτήσεις εισόδου/εξόδου, τελεστές Η συνάρτηση scanf() είσοδος δεδομένων Διαβάζει από το πληκτρολόγιο (stdin) μορφοποιημένες τιμές μεταβλητών. scanf (ΣΕΙΡΑ_ΕΛΕΓΧΟΥ, δείκτης_μεταβλητής-1,

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal

ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ Κεφάλαιο 8 Η γλϊςςα Pascal Παράγραφοσ 8.2 Βαςικοί τφποι δεδομζνων Σα δεδομζνα ενόσ προγράμματοσ μπορεί να: είναι αποκθκευμζνα εςωτερικά ςτθν μνιμθ είναι αποκθκευμζνα εξωτερικά

Διαβάστε περισσότερα

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 4: Δείκτες και Πίνακες Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα: Πίνακες Δεικτών, Παραδείγματα, Πολυδιάστατοι πίνακες Πέρασμα παραμέτρων σε προγράμματα C Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες:

Διαβάστε περισσότερα

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

Δομημένος Προγραμματισμός Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 7: Πίνακες Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά Το έργο

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Οι πίνακες στη C (μονοδιάστατοι -συμβολοσειρές) Γενικά για τους πίνακες Ο πίνακας είναι μια αρκετά διαδεδομένη δομή που προσφέρεται από σχεδόν κάθε γλώσσα προγραμματισμού. Πρόκειται

Διαβάστε περισσότερα

Εισαγωγή στον δομημένο προγραμματισμό

Εισαγωγή στον δομημένο προγραμματισμό Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στον δομημένο προγραμματισμό Ενότητα 6 η : Αλφαριθμητικά Αν. καθηγητής Στεργίου Κώστας e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και

Διαβάστε περισσότερα

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι Παράςταςη κινητήσ υποδιαςτολήσ ςφμφωνα με το πρότυπο ΙΕΕΕ Δρ. Χρήστος Ηλιούδης το πρότυπο ΙΕΕΕ 754 ζχει χρθςιμοποιθκεί ευρζωσ ςε πραγματικοφσ υπολογιςτζσ. Το πρότυπο αυτό κακορίηει δφο βαςικζσ μορφζσ κινθτισ

Διαβάστε περισσότερα

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

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C Κεφάλαιο 9.1-9.2 Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C Ένα string είναι μία ακολουθία αλφαριθμητικών χαρακτήρων, σημείων στίξης κτλ. Π.χ. Hello How are you? 121212 *Apple#123*%

Διαβάστε περισσότερα

#define, 70, 575 #elif, 580 #else, 580 #endif, 580 #error, 584 #if, 580 #ifdef, 583 #ifndef, 580, 583 #include, 70, 227, 574 #undef, 579

#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 πίνακας

Διαβάστε περισσότερα

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη Εισαγωγικά

Διαβάστε περισσότερα

5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ

5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ 5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ Να γραφεί πρόγραμμα, το οποίο κα δίνει τισ τιμζσ 5 και 6 ςε δφο μεταβλθτζσ a και b και κα υπολογίηει και κα εμφανίηει το άκροιςμά τουσ sum. ΛΟΓΙΚΟ ΔΙΑΓΡΑΜΜΑ a 5 b 6 sum a+b sum ΑΛΓΟΡΙΘΜΟ

Διαβάστε περισσότερα

343 Ειςαγωγι ςτον Προγραμματιςμό

343 Ειςαγωγι ςτον Προγραμματιςμό 343 Ειςαγωγι ςτον Προγραμματιςμό Σμιμα Μακθματικϊν Πανεπιςτιμιο Ιωαννίνων Ακαδθμαϊκό Ζτοσ 2018-2019 Χάρθσ Παπαδόπουλοσ 207δ, B όροφοσ e-mail: charis@cs.uoi.gr Ωρεσ Γραφείου: Σρίτθ 11-13 Ενότθτεσ 1-24 ΕΠΑΝΑΛΗΨΗ

Διαβάστε περισσότερα

Συμβολοσειρές ΣΥΜΒΟΛΟΣΕΙΡΕΣ. Γεώργιος Παπαϊωάννου ( )

Συμβολοσειρές ΣΥΜΒΟΛΟΣΕΙΡΕΣ. Γεώργιος Παπαϊωάννου ( ) ΣΥΜΒΟΛΟΣΕΙΡΕΣ Γεώργιος Παπαϊωάννου (2013-14) gepap@aueb.gr Περιγραφή: Ο τύπος string Μετατροπή από και προς τον τύπο string Βασικές μέθοδοι Χρήση Ελληνικών Συναρτήσεις C εκτύπωσης και ανάγνωσης Τελευταία

Διαβάστε περισσότερα

Μεθόδων Επίλυσης Προβλημάτων

Μεθόδων Επίλυσης Προβλημάτων ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 9 Συναρτήσεις Μέρος II Θέματα ιάλεξης Μη- ομημένος

Διαβάστε περισσότερα

Διάλεξη 7: Συμβολοσειρές, Δείκτες και Παραδείγματα

Διάλεξη 7: Συμβολοσειρές, Δείκτες και Παραδείγματα Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 7: Συμβολοσειρές, Δείκτες και Παραδείγματα (Κεφάλαιο 13, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132

Διαβάστε περισσότερα

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)

Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12) Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II (Διάλεξη 12) 12-1 Ανασκόπηση Δομής Προγράμματος με Συναρτήσεις 1 void PrintMessage (); Πρότυπο (Δήλωση) Συνάρτησης (Δηλώνουν τι επιπλέον συναρτήσεις θα χρησιμοποιήσουμε

Διαβάστε περισσότερα

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

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Συναρτήσεις εισόδου/εξόδου, τελεστές Η συνάρτηση scanf() είσοδος δεδομένων Διαβάζει από το πληκτρολόγιο (stdin) μορφοποιημένες τιμές μεταβλητών. scanf (ΣΕΙΡΑ_ΕΛΕΓΧΟΥ, δείκτης_μεταβλητής-1,

Διαβάστε περισσότερα

Προγραμματισμός σε C. Αρχεία κειμένου (Text files)

Προγραμματισμός σε C. Αρχεία κειμένου (Text files) Προγραμματισμός σε C Αρχεία κειμένου (Text files) Εισαγωγή Στη C έχουμε ειδικές συναρτήσεις για να επεξεργαζόμαστε αρχεία κειμένου που αποθηκεύονται στο δίσκο Τα αρχεία είναι σημαντικά για μόνιμη αποθήκευση

Διαβάστε περισσότερα

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 2:Αλφαριθμητικές Σειρές Χαρακτήρων (Strings)- Επανάληψη Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγικές Έννοιες σε Strings(Αρχικοποίηση, Ανάγνωση & Εκτύπωση) Πίνακες από Strings

Διαβάστε περισσότερα

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

scanf() scanf() stdin scanf() printf() int float double %lf float Εισαγωγή Στον Προγραµµατισµό «C» Είσοδος Δεδοµένων Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Η συνάρτηση scanf() Η συνάρτηση

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα

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

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

Συμβολοσειρές Ορίσματα στη main()

Συμβολοσειρές Ορίσματα στη main() Εργαστήριο 7 ο Συμβολοσειρές Ορίσματα στη main() Σκοπός του παρόντος εργαστηρίου είναι η εξοικείωση μας με τις συμβολοσειρές στην ANSI C καθώς και με την χρήση ορισμάτων στην συνάρτηση main(). Θεωρία Συμβολοσειρά

Διαβάστε περισσότερα

Περιεχόµενα. Πρόλογος... 15

Περιεχόµενα. Πρόλογος... 15 Πρόλογος... 15 Κεφάλαιο 1: Εισαγωγή... 17 Πώς να διαβάσετε αυτό το βιβλίο...18 Η γλώσσα C Ιστορική αναδροµή...19 Τα χαρακτηριστικά της C...20 C Μια δοµηµένη γλώσσα...20 C Μια γλώσσα για προγραµµατιστές...21

Διαβάστε περισσότερα

Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2

Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2 Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2 Δρ. Χρήζηος Ηλιούδης Μθ Προςθμαςμζνοι Ακζραιοι Εφαρμογζσ (ςε οποιαδιποτε περίπτωςθ δεν χρειάηονται αρνθτικοί αρικμοί) Καταμζτρθςθ. Διευκυνςιοδότθςθ.

Διαβάστε περισσότερα

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

Διαδικαστικός Προγραμματισμός Ενότητα 11: Αρχεία κειμένου Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου

Διαβάστε περισσότερα

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 3: Είσοδος / Έξοδος, Βασικοί Τύποι, Δήλωση Μεταβλητών Ένα Ακόμα Παράδειγμα #include int main(int argc, char* argv[]) { } putchar('h'); putchar('e'); putchar('l');

Διαβάστε περισσότερα

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

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,

Διαβάστε περισσότερα

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

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται

Διαβάστε περισσότερα

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Είσοδος/Έξοδος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2009-2010 Είσοδος/Έξοδος Μέχρι τώρα όποτε θέλαμε να διαβάσουμε χρησιμοποιούσαμε πάντα

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 3 η Είσοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

Διαβάστε περισσότερα

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

Προγραμματισμό για ΗΜΥ ΕΠΛ 34: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 12 Πίνακες εικτών (Pointers Arrays) Θέματα ιάλεξης Στην ενότητα

Διαβάστε περισσότερα

Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C»

Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C» Ενισχυτική διδασκαλία διδακτικές ενότητες αλγοριθμικής και εισαγωγής στον προγραμματισμό Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C» διδάσκων: χρήστος σκουρλάς, cskourlas@teiath.gr

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include

Διαβάστε περισσότερα

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 6 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

Τεχνολογία και Προγραμματισμός Υπολογιστών. Η γλώσσα προγραμματισμού C

Τεχνολογία και Προγραμματισμός Υπολογιστών. Η γλώσσα προγραμματισμού C Τεχνολογία και Προγραμματισμός Υπολογιστών Η γλώσσα προγραμματισμού C Με μια ματιά Τύπος Πίνακα Μεταβλητές με ενδείκτη Αλφαριθμητικά - Πίνακες Δισδιάστατος Πολυδιάστατος Πίνακας 2 2 Τύπος Πίνακα Σύνθετος

Διαβάστε περισσότερα

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

Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 12-1 Ανασκόπηση οµής Προγράµµατος µε Συναρτήσεις #include 1 void PrintMessage (); Πρότυπο ( ήλωση) Συνάρτησης (

Διαβάστε περισσότερα

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 10 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

C: Από τη Θεωρία στην Εφαρμογή

C: Από τη Θεωρία στην Εφαρμογή Δρ. Γ. Σ. Τσελίκης Δρ. Ν. Δ. Τσελίκας C: Από τη Θεωρία στην Εφαρμογή Ενδεικτικές Ασκήσεις από το Βιβλίο C: Από τη Θεωρία στην Εφαρμογή (Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας) Ενδεικτικές Ασκήσεις του Βιβλίου Ε.Α.1

Διαβάστε περισσότερα

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

Η γλώςςα προγραμματιςμού C Η γλώςςα προγραμματιςμού C Οι εντολζσ επανάλθψθσ (while, do-while, for) Γενικά για τισ εντολζσ επανάλθψθσ Συχνά ςτο προγραμματιςμό είναι επικυμθτι θ πολλαπλι εκτζλεςθ μιασ ενότθτασ εντολϊν, είτε για ζνα

Διαβάστε περισσότερα

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

7. Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 7. Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου Ιωάννης Κατάκης Σήμερα o printf o scanf Είσοδος / Έξοδος Σχεδόν όλα τα προγράμματα περιλαμβάνουν

Διαβάστε περισσότερα

ΕΠΛ232 Προγραμματιστικές Τεχνικές και Εργαλεία Συμβολοσειρές, Δείκτες και Παραδείγματα (Κεφάλαιο 13, KNK-2ED)

ΕΠΛ232 Προγραμματιστικές Τεχνικές και Εργαλεία Συμβολοσειρές, Δείκτες και Παραδείγματα (Κεφάλαιο 13, KNK-2ED) ΕΠΛ232 Προγραμματιστικές Τεχνικές και Εργαλεία Συμβολοσειρές, Δείκτες και Παραδείγματα (Κεφάλαιο 13, KNK-2ED) Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου http://www.cs.ucy.ac.cy/courses/epl232 Το μάθημα αυτό

Διαβάστε περισσότερα

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

Μεταφερσιμότητα Τα προγράμματα μεταφέρονται εύκολα σε διαφορετικά λειτουργικά συστήματα Η ΓΛΩΣΣΑ C Η C είναι μια γλώσσα προγραμματισμού υψηλού επιπέδου η οποία αναπτύχθηκε στις αρχές της δεκαετίας του 70 από τον Dennis Ritchie στα Bell Labs. Η σημερινή μορφή της γλώσσας ακολουθεί το πρότυπο

Διαβάστε περισσότερα

ΕΠΛ 032.3: Προγραµµατισµός ΜεθόδωνΕπίλυσηςΠροβληµάτων

ΕΠΛ 032.3: Προγραµµατισµός ΜεθόδωνΕπίλυσηςΠροβληµάτων ΕΠΛ 032.3: Προγραµµατισµός ΜεθόδωνΕπίλυσηςΠροβληµάτων Αχιλλέας Αχιλλέως, Τµήµα Πληροφορικής, Πανεπιστήµιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 5 Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων

Διαβάστε περισσότερα

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 3: Είσοδος / Έξοδος, Βασικοί Τύποι, Δήλωση Μεταβλητών Βασικοί τύποι της C 2 Όνομα Τύπος / Κωδικοποίηση Μέγεθος (bytes) char Χαρακτήρας 1 int Ακέραιος 2 ή 4 (*) float Πραγματικός

Διαβάστε περισσότερα

Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν. Κϊςτασ Αρβανιτάκθσ

Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν. Κϊςτασ Αρβανιτάκθσ Εργαςτιριο Πικανοτιτων Σθμειϊςεισ προγραμματιςμοφ: βαςικζσ γνϊςεισ ανάπτυξθσ εφαρμογϊν Κϊςτασ Αρβανιτάκθσ Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του

Διαβάστε περισσότερα

Θεςιακά ςυςτιματα αρίκμθςθσ

Θεςιακά ςυςτιματα αρίκμθςθσ Θεςιακά ςυςτιματα αρίκμθςθσ Δρ. Χρήστος Ηλιούδης αρικμθτικό ςφςτθμα αρίκμθςθσ (Number System) Αξία (value) παράςταςθ Οι αξίεσ (π.χ. το βάροσ μιασ ποςότθτασ μιλων) μποροφν να παραςτακοφν με πολλοφσ τρόπουσ

Διαβάστε περισσότερα

Οι συναρτήσεις στη γλώσσα C

Οι συναρτήσεις στη γλώσσα C Οι συναρτήσεις στη γλώσσα C Οι συναρτήσεις αποτελούν τα βασικότερα στοιχεία της γλώσσας προγραμματισμού C. Με τη βοήθεια των συναρτήσεων αναπτύσσεται όλη η δραστηριότητα των προγραμμάτων Συναρτήσεις -

Διαβάστε περισσότερα

Κεφάλαιο Αλφαριθµητικές Σειρές Χαρακτήρων (Strings)

Κεφάλαιο Αλφαριθµητικές Σειρές Χαρακτήρων (Strings) Κεφάλαιο 9.1-9.2 Αλφαριθµητικές Σειρές Χαρακτήρων (Strings) ( ιάλεξη 19) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 1) Strings στη C Ένα string είναι µία ακολουθία αλφαριθµητικών χαρακτήρων, σηµείων στίξης κτλ. Π.χ.

Διαβάστε περισσότερα

Ι Αρχεία δεδομένων, μέρος δεύτερο: δυαδικά αρχεία ΙΙ Δομές δεδομένων (struct)

Ι Αρχεία δεδομένων, μέρος δεύτερο: δυαδικά αρχεία ΙΙ Δομές δεδομένων (struct) Ι Αρχεία δεδομένων, μέρος δεύτερο: δυαδικά αρχεία ΙΙ Δομές δεδομένων (struct) Αρχεία Το γενικό πλαίσιο: data stream (ρεύμα δεδομένων). stdin, stdout, stderr data stream ως προς τα δεδομένα βάσει προσπέλασης

Διαβάστε περισσότερα

Παράςταςη ςυμπλήρωμα ωσ προσ 1

Παράςταςη ςυμπλήρωμα ωσ προσ 1 Δρ. Χρήστος Ηλιούδης Θζματα διάλεξησ ΣΤ1 Προςθεςη αφαίρεςη ςτο ΣΤ1 2 ή ΣΤ1 Ονομάηουμε ςυμπλιρωμα ωσ προσ μειωμζνθ βάςθ R ενόσ μθ προςθμαςμζνου αρικμοφ Χ = ( Χ θ-1 Χ θ-2... Χ 0 ) R ζναν άλλον αρικμό Χ'

Διαβάστε περισσότερα

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 11: Δείκτες & Πίνακες Δείκτες και πίνακες Μια μεταβλητή «μονοδιάστατος πίνακας από αντικείμενα τύπου Τ» μπορεί να θεωρηθεί ως (είναι συντακτικά συμβατή με) μια μεταβλητή

Διαβάστε περισσότερα

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα "Αλφαριθμητικά"

Πίνακες: μια σύντομη εισαγωγή. Πίνακες χαρακτήρων: τα Αλφαριθμητικά Πίνακες: μια σύντομη εισαγωγή Πίνακες χαρακτήρων: τα "Αλφαριθμητικά" Πίνακες(Arrays): έννοιες και ορισμοί Ορισμός: Πίνακας (array) = σύνολο μεταβλητών του ιδίου τύπου (int, float, char,...) με ένα κοινό

Διαβάστε περισσότερα

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

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 5: Κυριολεκτικά Συνδυασμοί / Μετατροπές Τύπων Αριθμητική Χαρακτήρων Κυριολεκτικά (literals) 2 Κάποιες μεταβλητές του προγράμματος πρέπει συνήθως να αρχικοποιηθούν με συγκεκριμένη

Διαβάστε περισσότερα

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. Διαφάνειεσ: Βαςικζσ Αρχζσ Προγραμματιςμοφ Α.Π.Θ. Δθμιτρθσ Βράκασ

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. Διαφάνειεσ: Βαςικζσ Αρχζσ Προγραμματιςμοφ Α.Π.Θ. Δθμιτρθσ Βράκασ Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων 21. Δομζς Ιωάννθσ Κατάκθσ Διαφάνειεσ: Βαςικζσ Αρχζσ Προγραμματιςμοφ Α.Π.Θ. Δθμιτρθσ Βράκασ Τφποι Δεδομζνων Οριηόμενοι από το Χριςτθ o Πζρα από τουσ απλοφσ τφπουσ

Διαβάστε περισσότερα

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

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY120) #4 κυριολεκτικά & μετατροπή τύπων 1 Σπύρος Λάλης Κυριολεκτικά (literals) Συχνά θέλουμε να αρχικοποιήσουμε μεταβλητές του προγράμματος με μια συγκεκριμένη τιμή υπάρχει επίσης η

Διαβάστε περισσότερα

Μεθόδων Επίλυσης Προβλημάτων

Μεθόδων Επίλυσης Προβλημάτων ΕΠΛ 032.3: 3: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 14 Αλφαριθμητικές Σειρές Χαρακτήρων (Strings)

Διαβάστε περισσότερα

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

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Εισαγωγή στη C θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα