Salve ragazzi, questo è un programma che dovrebbe mischiare 52 carte, ma C::B segnala un warning alla riga 19, ma non capisco il problema, potete dare un' ochiata?
codice:#include<stdio.h> #include<stdlib.h> #include<time.h> void shuffle(int [][13]); void deal( const int [][13], const char *[], const char *[]); main() { char *suit[4] = {"Hearts", "Diamonds", "Clubs", "Spades"}; char *face[13] = {"Ace","Deuce", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Jack", "Queen", "King"}; int deck[4][13] = {0}; srand(time(NULL)); shuffle(deck); deal(deck, face, suit ); return 0; } void shuffle( int wDeck[][13]) { int card, row, column; for(card=1; card<=52; card++){ row=rand()%4; column=rand()%13; while(wDeck [row][column] != 0){ row = rand()%3; column= rand ()%13;} wDeck [row][column]=card;} } void deal ( const int wDeck[][13], const char *wFace[], const char *wSuite[]) { int card, row, column; for(card=1; card<=52; card++) for(row=0; row<=3; row++) for(column=0; column<=12; column++){ if(wDeck[row][column] == card) printf("%5s of %-8s%c", wFace[column], wSuite[row], card % 2 == 0 ? '\n' : '\t'); } }

Rispondi quotando