Εισαγάγετε δύο ακέραιους αριθμούς, Α και Β, και εξάγετε τα Α και Β με τη σειρά του πρώτου μεγαλύτερου και μετά του μικρότερου. Ο κωδικός έχει ως εξής: Πώς να αναφέρετε μια μεταβλητή διεύθυνση & να λάβετε τον τελεστή διεύθυνσης *Τελεστής δείκτη (ή χειριστής έμμεσης πρόσβασης) #include "stdafx.h" #include <stdio.h> int main(int argc, char* argv[])
{ int *p1,*p2,*p,a,b; printf("παρακαλώ εισάγετε δύο ακέραιους αριθμούς:"); scanf("%d,%d",&a,&b); p1=&a; p2=&b; εάν(α<β) {p1=&b;p2=&a;}//Έμφαση δείκτη {p=p1; p1=p2; p2=p; Τώρα εκχωρούνται απευθείας νέες τιμές στα P1 και P2, έτσι ώστε να μην χρειάζεται να οριστεί η ενδιάμεση μεταβλητή p και το πρόγραμμα να γίνει πιο συνοπτικό Αυτός ο αλγόριθμος δεν ανταλλάσσει τις τιμές των ακέραιων μεταβλητών, αλλά τις τιμές δύο δεικτών, (διευθύνσεις a και b)
printf("a=%d,b=%d\n",a,b); printf("max=%d,min=%d\n",*p1,*p2); επιστροφή 0;
}
|