vellamos Δημοσιεύτηκε Σεπτέμβριος 14, 2010 #1 Δημοσιεύτηκε Σεπτέμβριος 14, 2010 #include<stdio.h>#include <stdlib.h>void test(int *a, int b, int *c){*a=b-2;*c=b+3;b=*a+*c;}main(){int a,b,c;b=2;test(&a,b,&c);printf("a=%d b=%d c=%d\n",a,b,c);test(&b,c,&a);printf("a=%d b=%d c=%d\n",a,b,c);test(&c,b,&a);printf("a=%d b=%d c=%d\n",a,b,c);system("pause");}και τα αποτελεσματα ειναι καθε φορα:α=0 b=2 c=5a=8 b=3 c=5 a=6 b=3 c=1το προβλημα ειναι οτι δεν καταλαβαινω πως βγαινουν οι αριθμοι αυτοι.την πρωτη σειρα την βγαζω αλλα απο κει και μετα δεν μπορω να τα καταλαβω.
masteroidz Σεπτέμβριος 14, 2010 #2 Σεπτέμβριος 14, 2010 Αν κατάλαβα καλά την δεύτερη φορά που καλέι την print αλλάζει την σειρά των παραμέτρων οπότε πλέον αντιστοιχούν ως εξής: Main - Test1η κληση a -> a, b -> b, c -> c2η κλήση b -> a, c -> b, a -> c3η κλήση c -> a, b -> b, a -> c
jiohkor3 Σεπτέμβριος 14, 2010 #3 Σεπτέμβριος 14, 2010 H test κανει πράξεις και στα πριντ αλλάζουν ονόματα οι μεταβλητές, μεταβλητή αποθήκευσης. Δεν είναι δύσκολο, κοίτα το πιό προσεκτικά
vellamos Σεπτέμβριος 14, 2010 Author #4 Σεπτέμβριος 14, 2010 παιδια ευχαριστω πολυ. επιτελεους καταλαβα τι γινεται και λυνω και με αλλα νουμερα και παραλλαγες και παλυ ευχαριστω :banging::banging:
Recommended Posts
Archived
This topic is now archived and is closed to further replies.