Olá pessoal eu desenvolvi um progama que inseri o nome do aluno,nota do aluno, exclui o aluno,faz a media do aluno e media geral de todos, e faz a lista de todos os alunos cadastrados e sai do progama...Agora eu tenho que pega esse progama que esta logo abaixo e converter para esse outro aqui:
Enunciado:
faça um progama em C que simule a lista de 10 tipos de cerveja de uma fabrica de cervejas, cada tipo de cerveja pode conter 5 caracteristicas.Utilize o conceito de structs e modulariação para desenvolver seu codigo. O Progama deve conter no menu principal as operações "Inserir,Excluir,Alterar,Consultar,Buscar e Sair". As informações necessarias são:
Cerveja
{Nome,Data de Fabricação,Caracteristicas}
Caracteristica
{Descrição,Quantidade,Cor,Textura}
alguém me Ajuda a Converter esse PROGAMA.
#include <stdio.h>
#include <stdlib.h>
//---
#define alunoQTD 500
#define notasQTD 4
//---
struct Nota {
float nota;
};
typedef struct Nota nota;
struct Aluno {
nota notas[notasQTD];
int Qtd;
float media;
char nome[50];
};
typedef struct Aluno aluno;
struct Aluno a;
int main(){
char nome[50];
int i,j,ultimo=-1,opcao,y,valor;
aluno listaAluno[alunoQTD];
aluno a;
//------------------------------MENU
do{
do{
printf("||===============||-----------------------------||\n");
printf("|| ||(1) - Inserir ||\n");
printf("|| ||(2) - Listar ||\n");
printf("|| MENU OPCOES ||(3) - Excluir ||\n");
printf("|| ||(4) - Notas Aluno ||\n");
printf("|| ||(8) - Sair ||\n");
printf("||===============||-----------------------------||\n");
printf("\nInsira o Numero da Opcao Desejada: ");
scanf("%i",&opcao);
system("CLS");
}while(opcao!=1 && opcao!=2 && opcao !=3 && opcao!=4 && opcao!=8);
//---NOTAS
if(opcao==4){
if(ultimo==-1){
printf("Voce não pode acessar o menu de notas\npois não existe nenhum aluno cadastrado\n");
printf("\nPressione Qualquer Tecla para voltar a o MENU");
getch();
system("CLS");
}else
do{
printf("||===============||-----------------------------||\n");
printf("|| ||(5) - Inserir Nota Aluno ||\n");
printf("|| MENU NOTAS ||(6) - Alterar Nota Aluno ||\n");
printf("|| ||(7) - Obter Media Aluno ||\n");
printf("|| ||(9) - Voltar para o MENU ||\n");
printf("||===============||-----------------------------||\n");
printf("\nInsira o Numero da Opcao Desejada: ");
fflush(stdin);
scanf("%i",&opcao);
if((opcao<5 || opcao>9)){
printf("\nOpcao Invalida\nPressione 'ENTER' para enserir outra opcao.");
getch();
}
system("CLS");
}while(opcao!=5 && opcao!=6 && opcao!=7 && opcao!=9);
}
//----------------------------------------------INSERIR
if(opcao==1){
if(ultimo>(alunoQTD-1)){
printf("O Cadastro esta Cheio! \n");
}else{
printf("\nEntre com o nome do aluno: ");
fflush(stdin);
fgets(a.nome,50,stdin);
a.Qtd=0;
if(ultimo==-1){
ultimo=0;
}
listaAluno[ultimo]=a;
ultimo++;
system("CLS");
}
}
//----------------------------------------------LISTAR
if(opcao==2){
if(ultimo==-1){
printf(" Nenhum Aluno Cadastrado! \n");
getch();
system("CLS");
}else{
for(i=0;i<ultimo;i++){
printf(" %i- %s \n",i+1,listaAluno[i].nome);
}
printf("Pressione Qualquer 'TECLA' para voltar a o menu Principal'");
getch();
system("CLS");
}
}
//----------------------------------------------EXCLUIR
if(opcao==3){
if(ultimo==-1){
printf(" Nenhum Aluno Cadastrado! \n");
getch();
system("CLS");
}else{
for(i=0;i<ultimo;i++){
printf("%s \n",listaAluno[i].nome);
}
printf("Informe o nome do aluno para ser Excluido: ");
fflush(stdin);
fgets(nome,50,stdin);
for(i=0;i<ultimo;i++){
if( strcmp (listaAluno[i].nome,nome)==0){
printf("\nVoce excluiu o aluno: %s",listaAluno[i].nome);
getch();
}
}
ultimo--;
}
system("CLS");
}
//----------------------------------------------INSERIR NOTA
if(opcao==5){
printf("Informe o nome do 'ALUNO' que deseja inserir nota: ");
fflush(stdin);
fgets(nome,50,stdin);
for(i=0;i<ultimo;i++){
if( strcmp (listaAluno[i].nome,nome)==0){
for(j=0;j<notasQTD;j++){
do {
printf("\n Digite a Nota do Aluno %s [%i Bimestre]: ",nome,j+1);
fflush(stdin);
scanf("%i",&valor);
if( !(valor >= 0 && valor <= 10)){
printf("\nNota informada invalida! \n Nota deve ser maior que 0 ou menor ou igual a 10!! \n");
getch();
}
} while( !(valor >= 0 && valor <= 10));
listaAluno[i].notas[j].nota= valor;
listaAluno[i].Qtd++;
}
break;
}
}
system("CLS");
}
//----------------------------------------------ALTERAR NOTA
if(opcao==6){
printf("Informe o nome do 'ALUNO' que deseja alterar nota:");
fflush(stdin);
fgets(nome,50,stdin);
for(i=0;i<ultimo;i++){
if( strcmp (listaAluno[i].nome,nome)==0){
for(j=0;j<notasQTD;j++){
do {
printf("\n Digite a Nota do aluno: '%s' [%i]:",nome,j+1);
fflush(stdin);
scanf("%i",&valor);
if( !(valor >= 0 && valor <= 10)){
printf("Nota informada invalida! \n Nota deve ser > = 0 ou < = 10!! ");
getch();
}
} while( !(valor >= 0 && valor <= 10));
listaAluno[i].notas[j].nota= valor;
listaAluno[i].Qtd++;
}
break;
}
}
system("CLS");
}
//----------------------------------------------MEDIA ALUNO
if(opcao==7){
for(i=0;i<ultimo;i++){
listaAluno[i].media=0;
for(j=0;j<notasQTD;j++){
listaAluno[i].media+=listaAluno[i].notas[j].nota;
}
listaAluno[i].media=listaAluno[i].media/4;
printf("A media do aluno %s e igual a %2.f \n",listaAluno[i].nome,listaAluno[i].media);
getch();
}
}
//----
}while(opcao!=8);
}
Pergunta
Progamador - Joao
Olá pessoal eu desenvolvi um progama que inseri o nome do aluno,nota do aluno, exclui o aluno,faz a media do aluno e media geral de todos, e faz a lista de todos os alunos cadastrados e sai do progama...Agora eu tenho que pega esse progama que esta logo abaixo e converter para esse outro aqui:
Enunciado:
faça um progama em C que simule a lista de 10 tipos de cerveja de uma fabrica de cervejas, cada tipo de cerveja pode conter 5 caracteristicas.Utilize o conceito de structs e modulariação para desenvolver seu codigo. O Progama deve conter no menu principal as operações "Inserir,Excluir,Alterar,Consultar,Buscar e Sair". As informações necessarias são:
Cerveja
{Nome,Data de Fabricação,Caracteristicas}
Caracteristica
{Descrição,Quantidade,Cor,Textura}
alguém me Ajuda a Converter esse PROGAMA.
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.