Hello, I am having trouble with my code. it does not seem to be comparing the two hands correctly I would really appreciate it if someone could take a look at it and tell me where i am going wrong.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>


#define TOTAL_CARD_DECK 52
typedef int Deck[TOTAL_CARD_DECK];

void setup_deck(Deck);
void shuffle(Deck);
void printcard(int);
void print_deck(Deck);
void player_one_cards(Deck);
void shuffle_deck(Deck);
void deal_deck(Deck);
void player_two_cards(Deck);


int main() 
{

    char answer[10];

    printf("\nWould you like to play The Greatest Game of All Time? (y/n). press 'i' for info\n");

    scanf("%c",answer);

    while ( strcmp(answer, "y") && strcmp(answer, "n") && strcmp(answer, "i") && strcmp(answer, "Y") )
    {
        printf("Invalid Entry. 'y', 'n' or 'i' only : ");
        scanf("%c",answer);

    }
    if (! strcmp(answer, "y") || ! strcmp(answer, "Y"))
    {

        Deck d;

        srand(time(NULL));
        setup_deck(d);
        print_deck(d);

        shuffle_deck(d);
        deal_deck(d);




    }
    else if ( ! strcmp(answer, "n" ))
    {
        printf("Have a Nice day!");
    }
    else if (! strcmp(answer, "i"))
    {

        printf("Each suite is refered to by the first letter of their name. i.e. Hearts is H.\n");
        printf("X is for 10, J is for Jack, Q is for Queen, and K is for King");

    }


    return 0;
}


void setup_deck(Deck deck) 
{ 
    int i;
    for (i=0; i<TOTAL_CARD_DECK; i++) 
    { 
        deck[i] = i; 
    }
}

void printcard(int card) 
{
    static char suit[4] = {'S','D','H','C'};
    static char face[13] = {'2','3','4','5','6','7','8','9','X','J','Q','K','A'};
    printf ("%c%c", face[card%13], suit[card/13]);

}


void print_deck(Deck deck) 
{
    int i;
    printf ("\n\nDeck: \n **************** \n");

    for (i=0; i<TOTAL_CARD_DECK; i++)
    {
        printcard(deck[i]);
        printf (" ");
    }
    printf ("\n");
}

void shuffle_deck(Deck deck) 
{

    int i;
    printf ("\n\nRandom Deck: \n **************** \n");


    for (i = 0; i < TOTAL_CARD_DECK; i++) 
    {


        int x = rand() % 52;



        int temp = deck[x];
        deck[x] = deck[i];
        deck[i] = temp;


    }
    for (i=0; i<TOTAL_CARD_DECK; i++) 
    {
        printcard(deck[i]);
        printf (" ");
    }
}

void deal_deck(Deck deck)
{



    printf ("\n\nYour Cards: \n **************** \n");
    int card_number_dealt;
    int hand_player_one[26];
    int hand_player_two[26];
    char card[2];
    for(card_number_dealt = 0; card_number_dealt < 26; card_number_dealt++)
    {


        hand_player_one[card_number_dealt] = deck[card_number_dealt];

        printcard(hand_player_one[card_number_dealt]);
        printf (" ");
    }
    printf ("\n\nComputer Cards: \n **************** \n");
    int x;
    for(card_number_dealt = 26, x =0; card_number_dealt < 52, x < 26; card_number_dealt++, x++)
    {
        hand_player_two[x] = deck[card_number_dealt];
        printcard(hand_player_two[x]);
        printf (" ");
    }

    int card_number;
    int player_one_total = 0;
    int player_two_total = 0;

    printf("\n");
    for(card_number=0; card_number<26; card_number++)
    {
        if(hand_player_one[card_number] > hand_player_two[card_number])
        {

            printf("You Win!\n");
            player_one_total = player_one_total + 1;
        }

        else if(hand_player_one[card_number] < hand_player_two[card_number])
        {
            printf("You lose!\n");
            player_two_total = player_two_total + 1;
        }
        else if (hand_player_one[card_number] == hand_player_one[card_number])
        {

            if(hand_player_one[card_number] > hand_player_two[card_number])
            {
                printf("You Win!\n");
                player_one_total = player_one_total+1;
                break;
            }

            else if(hand_player_one[card_number] < hand_player_one[card_number])
            {
                printf("You lose!");
                player_two_total = player_two_total + 1;
                break;
            }
        }


    }

    if(player_one_total == 26)
        printf("YOU WON THIS ROUND!!");

    else if (player_two_total == 26)
        printf("YOU LOST THIS ROUND");




    printf ("\n");
}
This article has been dead for over six months. Start a new discussion instead.