Δημοσιεύτηκε: 01 Αύγ 2011, 14:25
Star_Light έγραψε:migf1 έγραψε:Star_Light έγραψε:πανω - κατω την εχω τελειωσει... απλα δεν μου βγαινει συντακτικα ο κωδικας με τα else-if μεσα στην συνάρτηση :/
+ το warning
- Κώδικας: Επιλογή όλων
guessing_game.c:56: warning: format ‘%c’ expects type ‘int’, but argument 2 has type ‘char *’
Πρέπει να δω τον κώδικα για να σου πω. Βασικά σου λέει πως του χεις πει να τυπώσει char αλλά του περνάς char * (δηλαδή string).έγραψε:εγω παντως εχω βαλει πως ο αριθμος των προσπαθειων του χρηστη ειναι ουσιαστικα ο αριθμος των κλησεων της συνάρτησης.....
σωστα????
Όχι, αν η μαντεψιά είναι εκτός ορίων, τότε δεν μετριέται ως έγκυρη προσπάθεια.
τον ανεβαζω... αν και εχει πολλα λογικα λαθη.... θα τον ξαναπροσπαθησω αυτη τη φορα δεν πηγαμε και τοσο καλα , εχω κανει πολλες μπουρδες πιστευω.Spoiler: show
Έτσι πρόχειρα που τον είδα είχε 2-3 συντακτικά, εδώ είναι διορθωμένος ως προς τη σύνταξη
- Κώδικας: Επιλογή όλων
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int hint_position(int guess,int hidden, int lim);
int main()
{
int r;
int lim , guess , hidden;
srand(time(NULL)); // klhsh tis srand
printf("Dwse to orio (to euros ksekina apo 1 ews to orio): \n");
scanf("%d",&lim);
hidden=rand()%lim+1;
printf("%d",hidden);
do {
printf ("Dwse ton arithmo : ");
scanf("%d",&guess);
r=hint_position(guess,hidden,lim);
printf("%d",r);
} while (hidden!=guess);
return 0;
}
int hint_position(int guess, int hidden , int lim)
{
char *hints[3] = {
"\tπιο ψηλά\n", // θέση 0
"\tπιο χαμηλά\n", // θέση 1
"\tΣυγχαρητήρια, το βρήκατε\n" // θέση 2
};
if( (guess<1) || (guess > lim) )
{
printf("Eiste ektos oriwn \n");
return -1;
}
else if (guess<hidden)
{
printf("%s",hints[1]);
return 0;
}
else if (guess>hidden)
{
printf("%s",hints[2]);
return 1;
}
else if(guess==hidden)
{
printf("%s",hints[3]);
return 2;
}
return 0;
}