Language: C

#include<stdio.h>

void 			array_reset( unsigned char *array, unsigned short size );
unsigned short 	scan_word( unsigned char *str, unsigned short length_max );

int main(){
	unsigned char	tarou_card[100 + 1];
	unsigned short	tarou_num;
	unsigned short	tarou_score = 0;
	unsigned char 	hanako_card[100 + 1];
	unsigned short	hanako_num;
	unsigned short	hanako_score = 0;
	unsigned short	game_times;
	unsigned char	win;
	unsigned short	i, j;
	
	/* 配列初期化 */
	array_reset( tarou_card, 100 + 1 );
	array_reset( hanako_card, 100 + 1 );
	
	/* ゲーム回数の入力 */
	scanf( "%d", &game_num );
	
	/* カードの入力、勝者判定 */
	for( i = 0;i < game_times;i++ ){
		/* 太郎のカードの入力 */
		tarou_num = scan_word( tarou_card, 100 + 1 );
		/* 花子のカードの入力 */
		hanako_num = scan_word( hanako_card, 100 + 1 );
		
		/* 勝者判定 */
		for( j = 0;j < 100 + 1;j++ ){
			/* 太郎と花子のカードの文字が同じ場合ループ先頭に戻る */
			if( tarou_card[j] == hanako_card[j] ){
				continue;
			}
			
			/* 勝ったのが太郎なら勝者フラグを１に、花子なら２に、引き分けなら０にする */
			if( ( j = tarou_num ) && ( j = hanako_num ) ){
				win = 0;
			}
			else if( tarou_card[j] > hanako_card[j] ){
				win = 1;
			}
			else if( tarou_card[j] < hanako_card[j] ){
				win = 2;
			}
			else;
			
			/* 判定が出た場合ループを抜ける */
			break;
		}
		/* 得点の加算 */
		switch( win  ){
		case 0:
			tarou_score++;
			hanako_score++;
		case 1:
			tarou_score += 3;
		case 2:
			hanako_score += 3;
		default;
		}
	}
	
	/* 結果の出力 */
	printf("%d %d\n", tarou_score, hanako_score);
	
	return 0;
}

/* 関数名：配列初期化 */
/* 概要：渡されたアドレスを先頭とする配列の値を初期化する */
/* 引数：初期化する配列の先頭アドレス、その配列の大きさ */
/* 戻り値：なし */
void array_reset( unsigned char *array, unsigned short size )
{
	unsigned short usW_C_i;	/* ループ変数 */
	
	/* 配列の初期化 */
	for( usW_C_i = COUNT_RESET; usW_C_i < size; usW_C_i++ ){
 		*( array + usW_C_i ) = ARRAY_RESET;
 	}
}

/* 関数名：文字列入力 */
/* 概要：文字列を入力する。入力された文字列の長さを返す */
/* 引数：文字列を格納する配列の先頭アドレス、その配列の大きさ */
/* 戻り値：入力された文字列の長さ */
unsigned short scan_word( unsigned char *str, unsigned short length_max )
{
	unsigned short usW_C_count_text = COUNT_RESET;	/* 文字列長カウンタ */
	unsigned short usW_C_i;                       	/* ループ変数 */

	/* 配列の初期化 */
	array_reset( str, length_max );
	
	/* 文字列の入力 */
	for( usW_C_i = LOOP_RESET; usW_C_i < length_max; usW_C_i++ ){
		scanf("%c", str + usW_C_i);
		/* 入力終了の処理 */
		if( (*(str + usW_C_i) == ' ') || (*(str + usW_C_i) == '\n') ){
			break;
		}
		/* 文字数をカウント */
		usW_C_count_text++;
	}

	/* 文字列長を返す */
	return usW_C_count_text;
}



Compiler output:
main.c: In function 'main':
main.c:22:23: error: 'game_num' undeclared (first use in this function); did you mean 'game_times'?
   22 |         scanf( "%d", &game_num );
      |                       ^~~~~~~~
      |                       game_times
main.c:22:23: note: each undeclared identifier is reported only once for each function it appears in
main.c:62:24: error: expected ':' before ';' token
   62 |                 default;
      |                        ^
      |                        :
main.c: In function 'array_reset':
main.c:81:24: error: 'COUNT_RESET' undeclared (first use in this function)
   81 |         for( usW_C_i = COUNT_RESET; usW_C_i < size; usW_C_i++ ){
      |                        ^~~~~~~~~~~
main.c:82:40: error: 'ARRAY_RESET' undeclared (first use in this function)
   82 |                 *( array + usW_C_i ) = ARRAY_RESET;
      |                                        ^~~~~~~~~~~
main.c: In function 'scan_word':
main.c:92:43: error: 'COUNT_RESET' undeclared (first use in this function)
   92 |         unsigned short usW_C_count_text = COUNT_RESET;  /* 文字列長カウンタ */
      |                                           ^~~~~~~~~~~
main.c:99:24: error: 'LOOP_RESET' undeclared (first use in this function)
   99 |         for( usW_C_i = LOOP_RESET; usW_C_i < length_max; usW_C_i++ ){
      |                        ^~~~~~~~~~