"acta","paca","plat","clap","pact","talc","clap",
"clapt"};
int i,j,gameover=0,opt,opt2,life=5,found_answer=0,len,score=0;
char *original_text;
char shuffle_text[maxs];
char user_input[maxs];
strcpy(shuffle_text,answers[19]);shuffle_string(shuffle_text);for(i=0;i<maxans;i++){system("cls");original_text=answers[i];draw_boxes(answers,right_answers);printf("\t\t\t Text: %s\n",shuffle_text);printf("Score:%d\n",*easy_score);while(1){printf("Life Left %d\n",life);printf("Please enter your answer: \t");scanf("%s",user_input);found_answer=0;for(j=0;j<maxans;j++){if(strcmp(user_input,answers[j])==0){right_answers[j]=1;found_answer=1;len=strlen(answers[j]);if(len==5){*easy_score+=300;}elseif(len==4){*easy_score+=200;}elseif(len<=3){*easy_score+=50;}break;}}if(!found_answer){life-=1;if(life==0){gameover=1;}}printf("\n");break;}if(gameover){system("cls");displayall(answers);printf("\t\t\tGameover...\nThesearethecorrect
answers\n");
printf("\t\t\tBack to Main Menu?\n[1] - Yes\n[2] -
No");
scanf("%d",&opt2);
if(opt2==1){
printf("Going back to Main Menu");
system("cls");
if(easy_score>easy_highest){
strcpy(shuffle_text,answers[24]);shuffle_string(shuffle_text);for(i=0;i<maxans;i++){system("cls");original_text=answers[i];draw_boxes(answers,right_answers);printf("\t\t\t Text: %s\n",shuffle_text);printf("\n\n");printf("Score:%d\n",*normal_score);while(1){printf("Life Left %d\n",life);printf("Please enter your answer: \t");scanf("%s",user_input);found_answer=0;for(j=0;j<maxans;j++){if(strcmp(user_input,answers[j])==0){right_answers[j]=1;found_answer=1;len=strlen(answers[j]);if(len==6){*normal_score+=500;}elseif(len==5){*normal_score+=300;}elseif(len==4){*normal_score+=200;}elseif(len<=3){*normal_score+=50;}break;}}if(!found_answer){life-=1;if(life==0){gameover=1;}}printf("\n");break;}if(gameover){system("cls");displayall(answers);printf("\t\t\tGameover...\nThesearethecorrect
answers\n");
printf("\t\t\tBack to Main Menu?\n[1] - Yes\n[2] -
No");
scanf("%d",&opt2);
if(opt2==1){
printf("Going back to Main Menu");
system("cls");
}
else if(opt2==2){
break;
}
break;
}
}
if(normal_score>normal_highest){ normal_highest=normal_score;
}
"reamed","seamed","erased","edemas","madres",};
int i,j,gameover=0,opt,opt2,life=5,found_answer=0,len,score=0;
char *original_text;
char shuffle_text[maxs];
char user_input[maxs];
strcpy(shuffle_text,answers[29]);shuffle_string(shuffle_text);for(i=0;i<maxans;i++){system("cls");original_text=answers[i];draw_boxes(answers,right_answers);printf("\t\t\t Text: %s\n",shuffle_text);printf("\n\n");printf("Score:%d\n",*hard_score);while(1){printf("Life Left %d\n",life);printf("Please enter your answer: \t");scanf("%s",user_input);found_answer=0;for(j=0;j<maxans;j++){if(strcmp(user_input,answers[j])==0){right_answers[j]=1;found_answer=1;len=strlen(answers[j]);if(len==6){*hard_score+=500;}elseif(len==5){*hard_score+=300;}elseif(len==4){*hard_score+=200;}elseif(len<=3){*hard_score+=50;}break;}}if(!found_answer){life-=1;if(life==0){gameover=1;}}printf("\n");break;}if(gameover){system("cls");displayall(answers);printf("\t\t\tGameover...\nThesearethecorrect
answers\n");
printf("\t\t\tBack to Main Menu?\n[1] - Yes\n[2] -
No");
scanf("%d",&opt2);
if(opt2==1){
printf("Going back to Main Menu");
system("cls");
}
else if(opt2==2){
break;
}
break;
}
}
if(hard_score>hard_highest){ hard_highest=hard_score;
}
}
void draw_boxes(char answers[maxans][maxs],int right_answers[maxans]){
int i, j, len;
printf(" \t\t\t ____________________________\n");printf("\t\t\t| WORD TWISTER |\n");printf("\t\t\t|____________________________|\n");printf("\n");for(i=0;i<maxans;i++){printf("\t\t ");if(right_answers[i]){printf("%s",answers[i]);}else{len=strlen(answers[i]);for(j=0;j<len;j++){printf("__.");}
}
printf("\n");
}
}
void displayall(char answers[maxans][maxs]){
int i, j, len;
It runs but crashes after i input the name of the player, i am still a
beginner programmer so pardon my codes for being so messy.
include <time.h></time.h>
include <stdio.h></stdio.h>
include <stdlib.h></stdlib.h>
include <string.h></string.h>
define maxans 31
define easy_maxans 21
define maxs 10
void player(char player_name_ptr[maxs]);
int easy_start_game(char player_name[maxs][maxs],char
player_highest[maxs][maxs],int easy_highest,int easy_score,int
right_answers[maxans]);
int normal_start_game(int normal_highest,int normal_score,int
right_answers[maxans]);
int hard_start_game(int hard_highest,int hard_score,int
right_answers[maxans]);
void draw_boxes(char answers[maxans][maxs],int right_answers[maxans]);
void displayall(char answers[maxans][maxs]);
int get_random_number(int max);
void shuffle_string(char text);
int main()
{
opt,opt2,easy_highest=0,normal_highest=0,hard_highest=0,easy_score,normal_score,hard_score,i;
char player_name[maxs][maxs],player_highest[maxs][maxs];
char* player_name_ptr[maxs];
rigth_answers_index++) {
right_answers[rigth_answers_index] = 0;
}
printf("\n\n");
printf("\t\t\t ____\n");
printf("\t\t\t| WORD TWISTER |\n");
printf("\t\t\t|____|\n\n\n");
printf("\t\t\t[1] - Play game\n");
printf("\t\t\t[2] - highest_score\n");
printf("\t\t\t[3] - Exit\t");
scanf("%d",&opt);
if(opt==1){
for(i=0;i<maxs;i++){
len=strlen(player_name[i]);
if(len<=0){
player(player_name_ptr);
strcpy(player_name[i],player_name_ptr[maxs]);
printf("\n");
}
else{
continue;
}
break;
}
printf("\t\t\tChoose Difficulty:\n");
printf("\t\t\t[1] - Easy\n");
printf("\t\t\t[2] - Normal\n");
printf("\t\t\t[3] - Hard\t");
scanf("%d",&opt2);
if(opt2==1)
{
easy_start_game(player_name,player_highest,&easy_highest,&easy_score,right_answers);
normal_start_game(&normal_highest,&normal_score,right_answers);
}
else if(opt2==3)
{
hard_start_game(&hard_highest,&hard_score,right_answers);
}
}
else if(opt==2)
{
system("cls");
for(i=0;i<maxans;i++){
printf("\t\t\t Easy Highest
Score:%s:%d",player_highest[i],easy_highest);
printf("\n");
}
printf("\n");
printf("\t\t\t Normal Highest Score:%d",normal_highest);
printf("\n");
printf("\t\t\t Hard Highest Score:%d",hard_highest);
}
else if(opt==3)
{
break;
}
else
("Invalid Option");
}
}
void player(char* player_name_ptr[maxs]){
}
int easy_start_game(char player_name[maxs][maxs],char
player_highest[maxs][maxs],int easy_highest,int easy_score,int
right_answers[maxans]) {
char answers[easy_maxans][maxs]
={"alp","cap","lap","pal","act","alt","cat","lat","pat","apt","pac","tap",
"acta","paca","plat","clap","pact","talc","clap",
"clapt"};
int i,j,gameover=0,opt,opt2,life=5,found_answer=0,len,score=0;
char *original_text;
char shuffle_text[maxs];
char user_input[maxs];
answers\n");
printf("\t\t\tBack to Main Menu?\n[1] - Yes\n[2] -
No");
scanf("%d",&opt2);
if(opt2==1){
printf("Going back to Main Menu");
system("cls");
if(easy_score>easy_highest){
easy_highest=easy_score;
strcpy(player_highest[i],player_name[i]);
}
}
else if(opt2==2){
break;
}
break;
}
}
if(easy_score>easy_highest){
easy_highest=easy_score;
strcpy(player_highest[i],player_name[i]);
}
int normal_start_game(int normal_highest,int normal_score,int
right_answers[maxans]) {
char answers[maxans][maxs] ={"air","ear","ave","ran","van",
"ire","vina","near","earn","rain",
"rive","rave","vain","vein","vine",
"rein","naive","raven","riven","ravin",
"invar","naevi","naiver","vainer","ravine",};
int i,j,gameover=0,opt,opt2,life=5,found_answer=0,len,score=0;
char *original_text;
char shuffle_text[maxs];
char user_input[maxs];
answers\n");
printf("\t\t\tBack to Main Menu?\n[1] - Yes\n[2] -
No");
scanf("%d",&opt2);
if(opt2==1){
printf("Going back to Main Menu");
system("cls");
}
else if(opt2==2){
break;
}
break;
}
}
if(normal_score>normal_highest){
normal_highest=normal_score;
}
}
int hard_start_game(int hard_highest,int hard_score,int
right_answers[maxans]) {
char answers[maxans][maxs] ={"dear","ears","eras","seam","seem",
"ease","arms","sear","seer","arse",
"seed","armed","dears","erase","dream",
"derma","eased","meads","reads","smear",
"dreams","remade","seamer","seared","dermas",
"reamed","seamed","erased","edemas","madres",};
int i,j,gameover=0,opt,opt2,life=5,found_answer=0,len,score=0;
char *original_text;
char shuffle_text[maxs];
char user_input[maxs];
answers\n");
printf("\t\t\tBack to Main Menu?\n[1] - Yes\n[2] -
No");
scanf("%d",&opt2);
if(opt2==1){
printf("Going back to Main Menu");
system("cls");
}
else if(opt2==2){
break;
}
break;
}
}
if(hard_score>hard_highest){
hard_highest=hard_score;
}
}
void draw_boxes(char answers[maxans][maxs],int right_answers[maxans]){
int i, j, len;
}
}
void displayall(char answers[maxans][maxs]){
int i, j, len;
}
int get_random_number(int max) {
srand(time(0));
// rand() generates a random number from 0 to 32767
return rand() % max;
}
void shuffle_string(char clue[maxans]) {
char temp;
int len = strlen(clue);
int i;
int j;
}