Ir ao conteúdo
  • Cadastre-se

Erro 'else' without a previous 'if'


lazas

Posts recomendados

Galera estou com esse erro, Não sou habilidoso na programação.

Abaixo segue o programa ta extenso mais ta em módulos o erro é no else na linha 157.

In function 'pesquisarRegistro':

157|error: 'else' without a previous 'if'

|=== Build finished: 1 errors, 0 warnings (0 minutes, 0 seconds) ===|

/* PROGRAMA QUE GUARDA N NOMES, CPFs E SALARIOS E OS APRESENTA NA TELA*/

#include<stdio.h>

#include<string.h>

#define QUANTIDADE 3

char nomesSalarios[QUANTIDADE][51];

float salarios[QUANTIDADE];

char cpf[QUANTIDADE][12];

int indice = 0;

int controlador[QUANTIDADE];

void inserirRegistro(void);

void apresentarRegistros(void);

void excluirRegistro(void);

void pesquisarRegistro(void);

char menuPrincipal(void);

void fachada(char);

int main()

{

char opcao = ' ';

do

{

system("cls");

opcao = menuPrincipal();

fachada(opcao);

}

while(opcao!='S');

system("pause");

return 0;

}

void fachada(char op)

{

switch(op)

{

case '1': inserirRegistro();

break;

case '2': apresentarRegistros();

break;

case '3': excluirRegistro();

break;

case '4': pesquisarRegistro();

break;

case 'S': printf("\nSaindo do programa... ");

break;

default: printf("\nOpcao invalida!\n");

system("pause");

}

}

char menuPrincipal()

{

char op = ' ';

printf("MENU");

printf("\n[1] - Inserir");

printf("\n[2] - Apresentar");

printf("\n[3] - Excluir");

printf("\n[4] - Pesquisar");

printf("\n - Sair\n\n");

op = toupper(getche());

fflush(stdin);

return(op);

}

void inserirRegistro()

{

int i=0;

if(indice<QUANTIDADE)

{

for(i; i<QUANTIDADE; i++)

{

if(controlador==0)

{

printf("\nDigite o %do nome:\n", i+1);

scanf(" %[^\n]", nomesSalarios);

fflush(stdin);

printf("\nDigite o %do cpf:\n", i+1);

scanf(" %[^\n]", cpf);

fflush(stdin);

printf("\nDigite o %do salario:\n", i+1);

scanf("%f", &salarios);

fflush(stdin);

controlador=1;

indice++;

printf("\nDados inseridos com sucesso!\n");

break;

}

}

}

else

{

printf("\nNao foi possivel inserir mais dados!\n");

}

system("pause");

}

void apresentarRegistros()

{

if(indice > 0)

{

int i = 0;

for(i; i < QUANTIDADE; i++)

{

if(controlador==1)

{

printf("\n%d - CPF: %s", i+1, cpf);

printf("\tNome: %s", nomesSalarios);

printf("\tSalario: R$ %7.2f", salarios);

}

}

}

else

{

printf("\nNao existem dados para serem exibidos!\n");

}

printf("\n\n");

system("pause");

}

void pesquisarRegistro()

{

char nomePesquisa[51];

int i=0;

printf("\nDigite o Nome para pesquisa:\n");

scanf(" %[^\n", nomePesquisa);

fflush(stdin);

for(i; i< indice; i++)

{

if(!strcmp(nomePesquisa,nomesSalarios))

{

printf("\nNome pesquisado foi %s na posicao %d :\n", nomePesquisa, nomesSalarios);

}

}

else

{

printf("\nNao foi possivel encontrar nome!\n");

}

system("pause");

}

void excluirRegistro()

{

if(indice > 0)

{

int excluirReg;

int i = 0;

for(i; i < QUANTIDADE; i++)

{

if(controlador==1)

{

printf("\n%d - CPF: %s", i+1, cpf);

printf("\tNome: %s", nomesSalarios);

printf("\tSalario: R$ %7.2f", salarios);

}

}

printf("\nDigite o valor referente a posicao que deseja excluir: ");

scanf("%d", &excluirReg);

fflush(stdin);

excluirReg=excluirReg-1;

i=0;

for(i; i < indice; i++)

{

if(excluirReg == i)

{

cpf[0]='\0';

nomesSalarios[0]='\0';

salarios=0;

controlador=0;

printf("Registro ecluido com sucesso!!!");

indice=indice-1;

}

}

}

else

{

printf("\nNao existem dados para serem excluidos!\n");

}

system("pause");

}

Link para o comentário
Compartilhar em outros sites

Você esta usando o else em conjunto com o for por isso ta errado


for(i; i< indice; i++)
{
if(!strcmp(nomePesquisa,nomesSalarios[i]))

{
printf("\nNome pesquisado foi %s na posicao %d :\n", nomePesquisa, nomesSalarios);
}
}

else
{
printf("\nNao foi possivel encontrar nome!\n");
}

Basata colocar o else dentro do for


for(i; i< indice; i++)
{
if(!strcmp(nomePesquisa,nomesSalarios[i]))

{
printf("\nNome pesquisado foi %s na posicao %d :\n", nomePesquisa, nomesSalarios);
}
else if(i=indice -1)
{
printf("\nNao foi possivel encontrar nome!\n");
}
}

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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...