Ir ao conteúdo
  • Cadastre-se

Jpf Mito

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

Reputação

0
  1. @arfneto é porque é um trabalho final da faculdade, preciso criar assim. aqui o código inteiro #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <string.h> char SouN; int simnao; int i = 0; int relatorioFechado = 0; struct alunos { int matricula; char nome[80]; int freq; float notas[3]; float media; char resultado[10]; }; struct alunos infAluno[10]; void exibeMenu(); void lancamento(); void consulta(); void relatorio(); void estatisticas(); void sair(); int main() { setlocale(LC_ALL, "Portuguese"); int opt; do { system("cls"); exibeMenu(); printf("\n"); printf("\nEscolha a opção desejada: "); scanf("%d", &opt); switch (opt) { case 1: system("cls"); if (relatorioFechado) { printf("O relatório já foi fechado, não é possível fazer novos lançamentos!\n"); system("pause"); } else { lancamento(); } break; case 2: system("cls"); consulta(); break; case 3: system("cls"); relatorio(); break; case 4: system("cls"); estatisticas(); break; case 5: system("cls"); sair(); break; default: printf("\nOPÇÃO INVÁLIDA!!! Digite um número de 1 a 5.\n"); system("pause"); } } while (opt > 0 || opt < 6); return 0; } void exibeMenu() { printf("*****************************************************************************"); printf("\nGESTÃO DE AVALIAÇÕES - ALGORITMOS E PROGRAMAÇÃO "); printf("\n***************************************************************************"); printf("\n1- Lançar avaliações e frequências"); printf("\n2- Consultar avaliações e frequências lançadas"); printf("\n3- Gerar relatório de fechamento"); printf("\n4- Apresentar estatísticas"); printf("\n5- Sair do programa"); } void lancamento() { int result; FILE* arquivo = fopen("lancamentoss.txt", "a"); if (arquivo == NULL) { printf("Erro ao abrir arquivo.\n"); system("pause"); exit(1); } printf("***************************************************************************"); printf("\nLANÇAMENTOS DE NOTAS E FREQUÊNCIAS "); printf("\n***************************************************************************"); if (i < 10) { printf("\nAluno %d", i + 1); printf("\nDigite a matrícula: "); scanf("%d", &infAluno[i].matricula); printf("Digite o nome: "); getchar(); fgets(infAluno[i].nome, 80, stdin); infAluno[i].nome[strcspn(infAluno[i].nome, "\n")] = '\0'; printf("Digite o percentual de frequência: "); scanf("%d", &infAluno[i].freq); printf("Digite as três notas: "); scanf("%f%f%f", &infAluno[i].notas[0], &infAluno[i].notas[1], &infAluno[i].notas[2]); infAluno[i].media = 0; strcpy(infAluno[i].resultado, "x"); i++; result = fprintf(arquivo, "%d;%s;%d;%.2f;%.2f;%.2f;%.2f;%s\n", infAluno[i-1].matricula, infAluno[i-1].nome, infAluno[i-1].freq, infAluno[i-1].notas[0], infAluno[i-1].notas[1], infAluno[i-1].notas[2], infAluno[i-1].media, infAluno[i-1].resultado); if (result < 0) { printf("Erro ao criar arquivo!"); system("pause"); return; } fclose(arquivo); printf("\nDeseja continuar? (0-Sim, 1-Não): "); scanf("%d", &simnao); switch (simnao) { case 0: system("cls"); lancamento(); break; case 1: printf("Voltando ao menu principal...\n"); system("pause"); break; } } else { printf("\nLimite de alunos atingido!\n"); system("pause"); } } void consulta() { FILE* arquivo = fopen("..\\trabteste\\lancamentoss.txt", "r"); printf("***************************************************************************"); printf("\nCONSULTA DE AVALIAÇÕES E FREQUÊNCIAS "); printf("\n***************************************************************************"); printf("\n%-20s %-25s %-15s %-10s %-10s %-10s %-10s %-10s", "Matrícula", "Nome", "Frequência", "Nota1", "Nota2", "Nota3", "Média", "Resultado"); printf("\n------------------------------------------------------------------------------------------------------------------"); printf("\n"); int lancamentos = 0; int i = 0; while (fscanf(arquivo, "%d;%[^;];%d;%f;%f;%f;%f;%s\n", &infAluno[i].matricula, infAluno[i].nome, &infAluno[i].freq, &infAluno[i].notas[0], &infAluno[i].notas[1], &infAluno[i].notas[2], &infAluno[i].media, infAluno[i].resultado) != EOF) { printf("%-20d %-25s %-15d %-10.2f %-10.2f %-10.2f %-10.2f %-10s\n", infAluno[i].matricula, infAluno[i].nome, infAluno[i].freq, infAluno[i].notas[0], infAluno[i].notas[1], infAluno[i].notas[2], infAluno[i].media, infAluno[i].resultado); i++; lancamentos++; } if (lancamentos == 0) { printf("Nenhum lançamento encontrado!\n"); } fclose(arquivo); system("pause"); } void relatorio() { printf("***************************************************************************"); printf("\nGERAÇÃO DE RELATÓRIO DE FECHAMENTO "); printf("\n***************************************************************************"); printf("\nDeseja realmente encerrar a disciplina? (S/N): "); getchar(); scanf("%c", &SouN); switch (SouN) { case 'S': case 's': { FILE* arquivoLancamentos = fopen("..\\trabteste\\lancamentoss.txt", "r"); FILE* arquivoRelatorio = fopen("relatorio.txt", "w"); printf("\n%-20s %-25s %-15s %-10s %-10s %-10s %-10s %-10s", "Matrícula", "Nome", "Frequência", "Nota1", "Nota2", "Nota3", "Média", "Resultado"); printf("\n------------------------------------------------------------------------------------------------------------------"); printf("\n"); int lancamentos = 0; int i = 0; while (fscanf(arquivoLancamentos, "%d;%[^;];%d;%f;%f;%f;%f;%s\n", &infAluno[i].matricula, infAluno[i].nome, &infAluno[i].freq, &infAluno[i].notas[0], &infAluno[i].notas[1], &infAluno[i].notas[2], &infAluno[i].media, infAluno[i].resultado) != EOF) { float media = (2 * infAluno[i].notas[0] + 3 * infAluno[i].notas[1] + 5 * infAluno[i].notas[2]) / 10.0; if (media >= 7 && infAluno[i].freq >= 75) { strcpy(infAluno[i].resultado, "Aprovado"); } else { strcpy(infAluno[i].resultado, "Reprovado"); } printf("%-20d %-25s %-15d %-10.2f %-10.2f %-10.2f %-10.2f %-10s\n", infAluno[i].matricula, infAluno[i].nome, infAluno[i].freq, infAluno[i].notas[0], infAluno[i].notas[1], infAluno[i].notas[2], media, infAluno[i].resultado); fprintf(arquivoRelatorio, "%d;%s;%d;%.2f;%.2f;%.2f;%.2f;%s\n", infAluno[i].matricula, infAluno[i].nome, infAluno[i].freq, infAluno[i].notas[0], infAluno[i].notas[1], infAluno[i].notas[2], media, infAluno[i].resultado); i++; lancamentos++; } if (lancamentos == 0) { printf("Nenhum lançamento encontrado!\n"); } fclose(arquivoLancamentos); fclose(arquivoRelatorio); relatorioFechado = 1; break; } case 'N': case 'n': printf("Voltando ao menu principal...\n"); system("pause"); } system("pause"); } void estatisticas() { printf("***************************************************************************"); printf("\nAPRESENTAÇÃO DE ESTATÍSTICAS "); printf("\n***************************************************************************"); FILE* arquivo = fopen("..\\trabteste\\relatorio.txt", "r"); if (arquivo == 0) { printf("Erro ao abrir arquivo!"); system("pause"); } float mediaTurma = 0.0; float mediaFreqTurma = 0.0; int numAprovados = 0; int numReprovados = 0; int i = 0; while (fscanf(arquivo, "%d;%[^;];%d;%f;%f;%f;%f;%s\n", &infAluno[i].matricula, infAluno[i].nome, &infAluno[i].freq, &infAluno[i].notas[0], &infAluno[i].notas[1], &infAluno[i].notas[2], &infAluno[i].media, infAluno[i].resultado) != EOF) { mediaTurma += infAluno[i].media; mediaFreqTurma += infAluno[i].freq; if (infAluno[i].media >= 7 && infAluno[i].freq >= 75) { numAprovados++; } else { numReprovados++; } i++; } fclose(arquivo); if (i > 0) { mediaTurma /= i; mediaFreqTurma /= i; printf("\nMédia de notas da turma: %.2f", mediaTurma); printf("\nMédia de frequência da turma: %.2f", mediaFreqTurma); printf("\nNúmero de alunos aprovados: %d", numAprovados); printf("\nNúmero de alunos reprovados: %d\n", numReprovados); } else { printf("Nenhum aluno encontrado no relatório!"); } system("pause"); } void sair() { printf("Deseja realmente sair do programa? (S/N): "); getchar(); scanf("%c", &SouN); switch (SouN) { case 'S': case 's': printf("\nPROGRAMA ENCERRADO!!"); exit(1); case 'N': case 'n': printf("Voltando ao menu principal...\n"); system("pause"); } }
  2. Depois de informar alguns nomes de alunos, fechar o programa e abrir novamente, quando vou informar mais alunos ele volta para o número 1, não considerando os que já foram lançados no arquivo.txt assim ultrapassando o limite de 10 alunos. esse é o código: void lancamento() { int result; FILE* arquivo = fopen("lancamentoss.txt", "a"); if (arquivo == NULL) { printf("Erro ao abrir arquivo.\n"); system("pause"); exit(1); } printf("***************************************************************************"); printf("\nLANÇAMENTOS DE NOTAS E FREQUÊNCIAS "); printf("\n***************************************************************************"); if (i < 10) { printf("\nAluno %d", i + 1); printf("\nDigite a matrícula: "); scanf("%d", &infAluno[i].matricula); printf("Digite o nome: "); getchar(); fgets(infAluno[i].nome, 80, stdin); infAluno[i].nome[strcspn(infAluno[i].nome, "\n")] = '\0'; printf("Digite o percentual de frequência: "); scanf("%d", &infAluno[i].freq); printf("Digite as três notas: "); scanf("%f%f%f", &infAluno[i].notas[0], &infAluno[i].notas[1], &infAluno[i].notas[2]); infAluno[i].media = 0; strcpy(infAluno[i].resultado, "x"); i++; result = fprintf(arquivo, "%d;%s;%d;%.2f;%.2f;%.2f;%.2f;%s\n", infAluno[i-1].matricula, infAluno[i-1].nome, infAluno[i-1].freq, infAluno[i-1].notas[0], infAluno[i-1].notas[1], infAluno[i-1].notas[2], infAluno[i-1].media, infAluno[i-1].resultado); if (result < 0) { printf("Erro ao criar arquivo!"); system("pause"); return; } fclose(arquivo); printf("\nDeseja continuar? (0-Sim, 1-Não): "); scanf("%d", &simnao); switch (simnao) { case 0: system("cls"); lancamento(); break; case 1: printf("Voltando ao menu principal...\n"); system("pause"); break; } } else { printf("\nLimite de alunos atingido!\n"); system("pause"); } }
  3. O modo avião nem aparece, fica daquele jeito que mostrei. Qual site tem os drivers?
  4. Boa noite parceiros, fiz a formatação do meu notebook positivo motion gray q464c e após isso não apresenta nenhum adaptador e nenhum driver de rede wifi. Já tentei fazer o download pelo celular mas ao instalar os drivers não funciona ou pede um cabo, só que este notebook não tem entrada pra cabo Ethernet. Preciso muito de ajuda estou enlouquecendo o windows 10 já deveria vir com os drivers Windows 10 64 bits

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!