O enunciado do exercício pede para o programa gravar um log com nome, dia, mês e ano e a ação do usuário, segue o código parcialmente comentado.
Para quem nunca programou mas quer brincar um pouco, basta fazer download do Dev C++ clicando aqui.
Obs: Não consegui colar o código com a identação.
#include
#include
FILE *fp; //criação do arquivo texto
void writelog() //função que escreve no arquivo
{
int parametros;
int b;
char string[100];
char nome[30];
int dia, mes, ano;
fp=fopen ("writelog.txt", "a+"); //abertura do arquivo de texto
if (!fp)
printf ("Erro na abertura do arquivo.\n");
else
printf ("Sucesso na abertura do arquivo\n");
printf ("Entre com seu nome\n");
fflush(stdin);
gets (nome);
printf ("Dia\n");
scanf("%d",&dia);
printf ("Mes\n");
scanf("%d",&mes);
printf ("Ano\n");
scanf("%d",&ano);
b=1;
while (b==1)
{
printf ("Selecione o parametro:\n\n 350\n 351\n 500\n 650\n 651\n 701\n 702\n 704\n 800\n 4 - Sair\n");
scanf ("%d",¶metros);
switch (parametros)
{
case 350: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "iniciou o sistema\n"); break;
case 351: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "entrou no sistema"); break;
case 500: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "erro no sistema"); break;
case 650: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "terminou o sistema"); break;
case 651: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "saiu do sistema"); break;
case 701: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "abriu um arquivo"); break;
case 702: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "salvou um arquivo"); break;
case 704: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "listou um arquivo"); break;
case 800: fprintf(fp,"\n %s %d %d %d %s %s","Em", dia,mes,ano,nome, "enviou um arquivo"); break;
case 4: b=0 ;break;
default : printf ("\n opcao invalida");
}
}
}
int main(int argc, char *argv[])
{
int menu;
int a;
a=1;
while (a==1)
{
printf (" 1 - Entrar no programa\n 2 - Sair\n\n");
scanf ("%d",&menu);
switch (menu)
{
case 1: writelog(); break;
case 2: a=0; break;
default : printf ("\n opcao invalida");
}
}
system("PAUSE");
return 0;
}
O programa funciona bem, porém existem formas mais facéis de fazer o mesmo, amanhã posto um código mais limpo do mesmo.
Abraços!
Nenhum comentário:
Postar um comentário