Jump to content

Duda B.

Membros
  • Posts

    3
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Duda B.'s Achievements

0

Reputation

  1. Boa tarde, obrigado pela sua ajuda. O código não estava compilando e porem eu consegui resolver esta questão, agora eu acredito que ele não esta armazenando os nomes quando digito, por que quando eu peso, por exemplo, para 'LISTAR', apresentar somente o ultimo nome que foi digitado. float media,n1,n2,n3,n4; int rotcadastro(void) ; int rotlistar(void) ; int rotcorrigir( void) ; int rotpesquisa(void); int rotaprovado(void); int rotreprovado(void); int i,j,x,proc,flag,alt; char nome[80]; int main(void){ char tecla; int OPCAO=0; while (OPCAO!=7) { printf( "\n\nMenu Principal\n"); printf( "---- ---------- \n\n") ; printf( "1 - Cadastro\n") ; printf( "2 - Listagem\n"); printf( "3 - Corrigir\n"); printf( "4 - Pesquisar\n"); printf( "5 - Aprovados\n"); printf( "6 - Reprovados\n"); printf( "7 - Fim do Programa\n\n"); printf( "Escolha uma opcao: "); fflush(stdin); scanf( "%d", &OPCAO) ; switch (OPCAO) { case 1:rotcadastro(); break; case 2:rotlistar();break; case 3:rotcorrigir();break; case 4:rotpesquisa();break; case 5:rotaprovado();break; case 6:rotreprovado();break; default:printf("Opcao invalida"); } } return(0); } int rotcadastro(void) { char TECLA; for (i=1; i<5; i++){ printf ("Nome:"); fflush(stdin);scanf ("%s",&nome); printf("Nota do primeiro bimestre:"); scanf ("%f",&n1); printf("Nota do segundo bimestre:"); scanf ("%f",&n2); printf("Nota do terceiro bimestre:"); scanf ("%f",&n3); printf("Nota do quarto bimestre:"); scanf ("%f",&n4); printf("\n"); } printf("\n Tecle <Enter> para acessar o menu:"); fflush(stdin); while (( TECLA = getchar()) != '\r') return(0); } int rotlistar(void) { char TECLA; for (i=1;i<6;i++) { printf("Nome: %s\n",nome); printf("\n Tecle <Enter> para acessar o menu: "); fflush(stdin); while (( TECLA = getchar()) != '\r') return(0) ; } } int rotcorrigir(void) { char TECLA; char nom[30]; flag=0; cls printf("Nome: %s\n",nome); printf( "\nQual nome deseja editar: "); printf ("Nome:"); fflush(stdin);fgets (nome, 80, stdin); for(i=1;i<6;i++) if(strcmp(nom,nome) == 0 ) flag = 1; printf("Novo Nome:"); fgets(nom,29,stdin); strcpy(nome,nom); { printf ("Nota 1:"); scanf ("%f",&n1); { printf ("Nota 2:"); scanf ("%f",&n2); { printf ("Nota 3:"); scanf ("%f",&n3); { printf ("Nota 4:"); scanf ("%f",&n4); } printf("Edicao realizada com sucesso !\n"); } if( ! flag ) printf("nNome inesistente!\n"); } printf("\ nTecle <Ent er> para acessar o menu: "); fflush(stdin); while (( TECLA = getchar()) != '\r') return(0) ; } } int rotpesquisa ( void) { char TECLA; char nome[80]; printf ("Qual aluno deseja pesquisar: \n"); fflush(stdin); fgets (nome, 80, stdin); i=0; proc=0; while (i<5 && proc==0){ i=i+1; } if (proc==1) { printf ("Aluno pesquisado: %s\n",nome); printf ("Nota 1: %s\n",n1); printf ("Nota 2: %s\n",n2); printf ("Nota 3: %s\n",n3); printf ("Nota 4: %s\n",n4); } else printf ("\nNome invalido"); printf ("\ nTecle <Ent er> para acessar o menu: "); fflush(stdin); while (( TECLA = getchar()) != '\r') return(0) ; }
  2. Boa noite!! Eu estou fazendo um programa em C e estou tendo dificuldade, o enunciado é este: Cadastrar os 20 alunos e suas notas, classificar os alunos cadastrados, corrigir alunos e/ou notas que tenham sido cadastradas com erros, pesquisar alunos por nome, listar alunos aprovados (media >7), listar alunos reprovados(media<7). O código que fiz não roda e estou duvidando que a parte sobre Aprovado e Reprovado esteja correta, alguém poderia me dar uma ajudada. Obrigado desde já!! #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> #define cls system("cls"); int i,j,x,proc,flag,alt; char pesq[90];float media; char nome[80]; float n1,n2,n3,n4; int Cadastro(); int Listar(); int Corrigir(); int Pesquisa(); int Aprovado(); int Reprovado(); int main(){ int op; printf ("\n...Menu....\n"); printf ("Cadastro\n"); printf ("Listar\n"); printf ("Corrigir\n"); printf ("Pesquisa\n"); printf ("Aprovados\n"); printf ("Reprovados\n"); printf ("Escolha uma opcao:\n"); scanf ("%d",&op); switch (op){ case 1: Cadastro();break; case 2: Listar();break; case 3: Corrigir();break; case 4: Pesquisa();break; case 5: Aprovado();break; case 6: Reprovado();break; default : printf ("Opcao invalida."); fflush(stdin); return 0;} int Cadastro();{ for (i=0; i<5; i++){ printf ("Nome do aluno(a):"); fflush(stdin); fgets (nome, 80, stdin); printf ("Nota do primeiro bimestre:"); scanf ("%f",&n1); printf ("Nota do segundo bimestre:"); scanf ("%f",&n2); printf ("Nota do terceiro bimestre:"); scanf ("%f",&n3); printf ("Nota do quarto bimestre:"); scanf ("%f",&n4); } int Listar();{ for (i=1;i<5;i++) { printf("Nome: %s\n",nome); } int Correcao();{ char nom[30]; float n1,n2,n3,n4; flag=0; cls for (i=1;i<6;i++) printf("Nome: %s\n",nome); printf( "\nQual nome desejar editar: "); fflush(stdin); fgets(nom,29,stdin); for(i=1;i<6;i++) if(strcmp(nom,nome) == 0 ) { flag = 1; printf("Novo Nome:"); fgets(nom,29,stdin); strcpy(nome,nom); { printf ("Nota 1:"); scanf ("%f",&n1); { printf ("Nota 2:"); scanf ("%f",&n2); { printf ("Nota 3:"); scanf ("%f",&n3); { printf ("Nota 4:"); scanf ("%f",&n4); } printf("Edicao realizada com sucesso !\n"); } if( ! flag ) printf("nNome inesistente!\n"); } int Pesquisa();{ cls printf ("Qual aluno deseja pesquisar: \n"); fflush(stdin); fgets (pesq,90,stdin); i=0; proc=0; while (i<5 && proc==0) { if (strcmp(nome,pesq)==0) proc = 1; else i=i+1; } if (proc==1) { printf ("Aluno pesquisado: %s\n",nome); printf ("Nota 1: %s\n",n1); printf ("Nota 2: %s\n",n2); printf ("Nota 3: %s\n",n3); printf ("Nota 4: %s\n",n4); } else printf ("\nNome invalido"); } int Aprovado();{ for (i=0; i<5; i++) media = (n1 + n2 + n3+ n4)/4; if (media >=7.0) printf ("Aluno aprovado:Aluno %s aprovado com media %2.f",nome,media); } int Reprovado();{ for (i=0; i<5; i++) media = (n1+n2+n3+n4)/4; if (media <= 7.0); printf ("Aluno reprovado:Aluno %d reprovado com media %2.f",nome,media); } } } } } } }
×
×
  • Create New...