Gente, me tira uma dúvida, fiz uma struct aqui no meu prog, sendo que quando estou dando os valores as variáveis dessa struct, eu nem termino a função que dei ao while e o prog "para de funcionar"
PS: struct montada a partir da linha 14 e ela está sendo usada na case 1.
/* Programa
Programa: Informações do aluno
Autor: Renan Thiago de A. Narciso
Data:13/05/2015
Descrição:-------
*/
#include <stdio.h>
#include <locale.h>
#include <conio.h>
#include <stdlib.h>
struct dados{
char materia[30];
float nota1;
float nota2;
float nota3;
};
struct dados aluno;
int main(void){
setlocale(LC_ALL,"Portuguese"); //Selecionando a linguagem do programa para pt-BR
/* Aqui vao as declaracoes das variaveis */
int a = 0; //Declarando variável para controle de menu.
int na=0, no; //Variáveis da case 1.
char mat;
int pe, pa, per; //Variáveis da case 2.
int m=0, n; //Varíaveis da case 3.
/* Aqui vao os comandos do programa */
do{
printf("\t\t\t********************************\n\n");
printf("\t\t\t* MENU PRINCIPAL DO PROGRAMA *\n\n");
printf("\t\t\t********************************\n\n");
printf("1 - Registrador de notas.\n");
printf("2 - Quantos periodos faltam para conclusão do seu curso.\n");
printf("3 - Identificador de números pares e ímpares.\n\n");
printf("4 - Sair.\n\n");
printf("Informe a opção desejada: ");
scanf("%d", &a); // Armazena o número digitado.
system("cls"); // Limpa a tela.
switch(a){
case 1: //Opção 1//
printf("Você entrou na opção Registrador de notas.\n");
printf("\nDigite a quantidade de matérias: ");
scanf("%d", &no);
while(na<no){na++;
printf("Nome da matéria: ");
fflush(stdin);
fgets(aluno.materia, 30, stdin);
printf("Informe a 1º nota: ");
scanf("%.2f", &aluno.nota1);
fflush (stdin);
printf("Informe a 2º nota: ");
scanf("%.2f", &aluno.nota2);
fflush (stdin);
printf("Informe a 3º nota: ");
scanf("%.2f", &aluno.nota3);
fflush (stdin);
}
break;
case 2: //Opção 2//
printf("Você entrou na opção de períodos do curso.\n\n");
while(1==1){
printf("Digite a quantidade de períodos do seu curso: ");
scanf("%d", &pe);
printf("Em qual período você está: ");
scanf("%d", &pa);
if(pa>0){
per=pe - pa;
printf("\nFaltam %d perídos para concluir seu curso!", per);
break;
}
else
printf("Número inválido!\n");
}
printf("\n\n\nPressione uma tecla para voltar ao menu principal.");
getch();
system("cls");
break;
case 3: //Opção 3//
printf("Você entrou na opção de dentificador de números pares e ímpares.\n");
printf("\nDigite a quantidade de números: ");
scanf("%d", &n);
printf("\n");
while(m<n){m++;
if(m%2==0){
printf("Números pares: %2.0d\n", m);
}
else{
printf("Números Ímpares: %2.0d | ", m);
}
}
printf("\n\n\nPressione uma tecla para voltar ao menu principal.");
getch();
system("cls");
break;
default:
a = 4;
printf("\t\t\t\n\n\nSaindo do programa...\n\n\n");
}
} while(a != 4); // Enquanto a letra 'a' for diferente de 4, sai do programa.
system("pause");
return 0;
}
Pergunta
Renanzinth
Gente, me tira uma dúvida, fiz uma struct aqui no meu prog, sendo que quando estou dando os valores as variáveis dessa struct, eu nem termino a função que dei ao while e o prog "para de funcionar"
PS: struct montada a partir da linha 14 e ela está sendo usada na case 1.
Link para o comentário
Compartilhar em outros sites
0 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.