Enviado em 27/05/2017 - 19:57h
Eu escrevi esse codico varias vezes, toh rescrevendo mais já toh cansado de toda vez que eu executo da o erro sigsegv, compilando no dev c++ por causa da faculdade#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.c>
int main(void){
char switch_1, switch_2;
int alunos, notas;
int controle=0, aux, i, j;
char vetor_alunos[alunos][40], auxc[alunos][40];
float matriz_notas[alunos][notas], resultado[alunos];
do{
// Esse e o menu, alguns print e textcolor são estéticos.
textcolor(12);
printf("\t\t\t\tPrograma de cadastro de alunos v.0.236.n beta\n");
printf("\n\n");
textcolor(15);
printf("________________________________________________________________________________________________________________________");
printf("\n\n");
textcolor(13);
printf("Escolha umas das seguintes opcoes abaixo:\n\n");
textcolor(14);
printf("A) Quantidade dos dados");
textcolor(8);
printf(" (Numeros de alunos e numero de notas)\n");
textcolor(6);
printf("B)Cadastro dos dados");
textcolor(8);
printf(" (Digite a quantidade de dados antes, opcao 1)\n");
textcolor(6);
printf("C)Listar os dados");
textcolor(8);
printf(" (Execute primeiro a opcao 1, se ja realizado execute a opcao 2, depois volte aqui)\n");
textcolor(14);
printf("D)Limpar todos os dados");
textcolor(8);
printf(" (Reinicia todas as operacoes)\n");
textcolor(14);
printf("E)Sair\n");
textcolor(7);
// comando pra ler a escolha do usuário
scanf("%c",&switch_1);
// para declarar a matriz logo embaixo fiz o case a separado do resto
if(switch_1=='a'){
a:
printf("Digite a quantidade de alunos\n");
scanf("%d",&alunos);
printf("Digite a quantidade de notas\n");
scanf("%d",¬as);
};
// declaração de matriz logo embaixo
char vetor_alunos[alunos][40], auxc[alunos][40];
float matriz_notas[alunos][notas], resultado[alunos];
switch(switch_1){
case 'a':
goto a;
break;
case 'b':
b:
while(controle==0){
printf("Ainda precisa executar a opcao [A] antes de proseguir\n");
printf("Opcao [A]\n");
goto a;
};
do{
textcolor(3);
printf("Digite o nome do %d aluno\n",i+1);
scanf(" %[^\n]s",&vetor_alunos[i]);
i++;
}while(i<alunos);
for(i=0;i<alunos;i++){
printf("Digite a(s) nota(s) do aluno %s \n",vetor_alunos[i]);
aux=0;
// fica repitindo até dar os números de notas
for(j=0;j<notas;j++){
// Este do para não aceitar notas maiores que 10
do{
scanf("%f",&matriz_notas[i][j]);
}while(matriz_notas[i][j]>10);
// Aqui e feita a soma de todas as notas
aux += matriz_notas[i][j];
}
// Essa pra dividor a média
resultado[i]=aux/notas;
}
break;
case 'c':
if(controle==0){
printf("Ainda nao a quantidade de dados, volte a opcao [A] e registre-os\n");
printf("Opcao [A]\n");
goto a;
}
else{
if(controle==1){
printf("Opcao [B] nao acessada ainda, acesse-a e volte aqui\n");
printf("Opcao [B]\n");
goto b;
}
};
switch(switch_2){
printf("Digite a ordem da ");
case 'a':
for(i=0;i<=alunos;i++){
for (j=i+1;j<alunos;j++){
if(resultado[i]<resultado[j]){
aux=resultado[i];
resultado[i]=resultado[j];
resultado[j]=aux;
strcpy(auxc[i], vetor_alunos[i]);
strcpy(vetor_alunos[i], vetor_alunos[j]);
strcpy(vetor_alunos[j], auxc[i]);
}
}
};
break;
case 'b':
for(i=alunos;i>=0;i--){
for (j=i-1;j>alunos;j--){
if(resultado[i]>resultado[j]){
aux=resultado[i];
resultado[i]=resultado[j];
resultado[j]=aux;
strcpy(auxc[i], vetor_alunos[i]);
strcpy(vetor_alunos[i], vetor_alunos[j]);
strcpy(vetor_alunos[j], auxc[i]);
}
}
};
}
for(i=0;i<=alunos;i++){
printf("A media de %s e: %.2f\n",vetor_alunos[i], resultado[i]);
};
break;
}
}while(switch_1!='e');
return 0;
}
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Erro no upgrade: Sub-process /usr/bin/dpkg returned an error code (1) ... (3)
Falta pacotes de suporte ao sistema de arquivos (Gerenciador de discos... (6)