Q:

Dificuldade em C: ler duas funções ao mesmo tempo[Concluido]

Gostaria de saber como executar duas funções ao mesmo tempo em c
Sendo uma o while e a outra um scanf:
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <time.h>
#include <locale.h>
#include <windows.h> //para usar o sleep

int main(){
    setlocale(LC_ALL, "Portuguese");
    char name[10];
    int sec=0,chose,monster=64,Fome=10,Higiene=10,Felicidade=10,i=0;

printf("Insira o Nome do Monstrinho.\n");
scanf("%s",name);

system("cls"); // Limpar a tela

while(i<80000){
system("cls");//limpa a tela windows    
printf("###########################################\n");
printf("#Nome: %s                                 #\n",name);
printf("#Tempo de Vida : %ds                      #\n",sec);
printf("#Fome:%d   Felicidade;%d  Higiene:%d      #\n",Fome,Felicidade,Higiene); 
printf("#                                         #\n"); 
printf("#                                         #\n");
printf("###########################################\n");
printf("(1)Comida (2)Carinho (3)Banho (4)...\n");
Sleep(1000); //função sleep
sec++; //segundos
}

Seria antes ou depois da { (chave de while), e como posso implementar.
    printf("Digite uma opção:\n");
    scanf("%d",chose); //variavel de escolha de ação
}

A:

Uma possível solução seria:
// todo código anterior
    printf("(1)Comida (2)Carinho (3)Banho (4)...\n");

    printf("Digite uma opção:\n");
    scanf("%d",chose); //variavel de escolha de ação

    Sleep(1000); //função sleep
    sec++; //segundos
}

O que ele vai fazer de fato: Dentro do teu loop while ele vai pedir para digitar uma opção a cada iteração do loop, esperar 1 segundo e então dar seguimento ao código, perceba que o tempo de espera para a entrada não conta, ou seja, o usuário pode levar 5 minutos para resolver escolher uma das opções e ainda assim após escolher ele ira esperar 1 segundo para concluir, isto porque tu definiu os 1000 milissegundos (1 segundo dividido por mil) de pausa.
Logo após o usuário escolher a opção, tu vai precisar colocar um controle de fluxo como um if para cada uma das opções, eu te recomendo usar o fluxo switch - case ele é mais adequado que o if para estes casos onde uma variável pode assumir diferentes valores, além de ser ser mais legível e deixar o código mais elegante, tudo isto deve ficar dentro do teu loop while, perceba que o teu loop é o controle de fluxo da tua aplicação, então todas as ações ficarão dentro dele para que se mantenha o ciclo.

