dev-rocherl #5

Closed
Leo ROCHER wants to merge 2 commits from dev-rocherl into master

16
pendu.c
View File

@ -1,7 +1,9 @@
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <unistd.h>
#define MAX_WORDS 14
#define MAX_TRIES 6
@ -35,6 +37,15 @@ void display_hangman(int tries) {
}
}
/* this function display time out when user does nothing during 30s and verify signal*/
void sig_handler(int signum){
if (signum == SIGALRM){
printf("\ntime out\n");
exit (1);
}
}
int main() {
srand(time(NULL));
const char *word = words[rand() % MAX_WORDS];
@ -43,16 +54,21 @@ int main() {
int tries = 0;
int guessed_correctly = 0;
signal(SIGALRM,sig_handler);
for (int i = 0; i < word_length; i++) {
guessed[i] = '_';
}
guessed[word_length] = '\0';
while (tries < MAX_TRIES && guessed_correctly < word_length) {
printf("\nMot à deviner : %s\n", guessed);
display_hangman(tries);
char guess;
alarm(30);
printf("Entrez une lettre : ");
alarm(30);
scanf(" %c", &guess);
int found = 0;