Δημοσιεύτηκε: 26 Ιουν 2011, 19:28
από medigeek
Σε συνδυασμό με αυτό:
http://www.cplusplus.com/reference/clib ... dlib/rand/
Αποτέλεσμα:
Spoiler: show
Κώδικας: Επιλογή όλων
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int game(int real) {
int guess;
do {
printf("Please type a random number and then hit Enter:\n");
scanf("%d", &guess);
if (guess < real) { printf("No it is bigger...\n"); }
else if (guess > real) { printf("No it is less...\n"); }
getchar(); // clear stdin cache
} while(guess != real);
return 0;
}

int main() {
srand(time(NULL)); // initialize random seed

int real;
char yes_no;
real = rand() % 100 + 1;

do {
game(real);
printf("Well done!\nDo you want to play again?(y/n): ");
} while (scanf("%c", &yes_no) == 'y');

return 0;
}


Τα λάθη σου:
- int main() όχι main() απλώς
- μην ξεχνάς να τελειώνεις το main() με "return 0;"
- μην ξεχνάς να τελειώνεις την κάθε γραμμή με ";" (εκτός από αυτές με τις αγκύλες { } )
- πρέπει να καθαρίζεις το standard input cache μετά από κάθε scanf: getchar();
- ξέχασες να χρησιμοποιήσεις το srand(). Αλλιώς ο αριθμός του παιχνιδιού θα είναι πάντοτε ο ίδιος μετά το compile. Με το srand() ο αριθμός αλλάζει κατά την εκτέλεση του προγράμματος.