Ir ao conteúdo

Posts recomendados

Postado

Estou tentando comparar duas strings mas não está funcionando,preciso que essa comparação seja a condição pra entrar no for.

 

//comparação direta no if é pra entrar no for se as strings forem iguais,está entrando com string diferentes tbm    if(strcmp (cond[*an-1][*bl-1][*ap-1].status,"Disponivel")==0);    {printf("\n Para venda a vista marque'1' para venda financiada marque'2' \n");scanf("%d" ,&venda);  }// aqui tentei fazer a mesma coisa,só que copiando em uma string e comparando depois,tbm não funcionouchar st[20];  strcpy(st,"Disponivel"); if (strcmp (cond[*an-1][*bl-1][*ap-1].status,st)==0)    {     printf("\n Para venda a vista marque'1' para venda financiada marque'2' \n");     scanf("%d" ,&venda);  }
 
Postado

sim minha variavel tem a palavra disponivel.,não creio que o erro esteja fora dessa parte que enviei anteriormente.e sim status é tipo char

 

typedef struct{int num;int qto;float valor;float venda;char status[20];char tipo[20];}tcondominio; /preennche status inicialvoid pstatus(tcondominio cond[10][6][4]){int i,j,k;for(i=0;i<10;i++){for(j=0;j<6;j++){ for(k=0;k<4;k++)       {      strcpy(cond[i][j][k].status,"Disponivel");       }     }    }}void vender(tcondominio cond[10][6][4],int *bl,int *an,int *ap){float desc,fin;int venda;    //direto no if não está ok    if(strcmp (cond[*an-1][*bl-1][*ap-1].status,"Disponivel")==0);    {printf("\n\n Para venda a vista marque'1' para venda financiada marque'2' \n");scanf("%d", &venda);if (venda==1){     printf(" insira desconto até 15\n");     scanf("%f", &desc);      if(desc >0 && desc<=15)     {     desc=desc/100;     cond[*an-1][*bl-1][*ap-1].venda=cond[*an-1][*bl-1][*ap-1].valor - (cond[*an-1][*bl-1][*ap-1].valor            *desc);     printf("Vendido com sucesso\n");     strcpy (cond[*an-1][*bl-1][*ap-1].status,"Vendido");     strcpy (cond[*an-1][*bl-1][*ap-1].tipo,"A Vista");     }     else     {     printf("valor invalido \n");     system("pause");     }     }     else     if (venda==2){printf(" insira acrescimo até 95\n");scanf("%f", &fin);  if(fin >0 && fin<=95)     {     fin=fin/100;     cond[*an-1][*bl-1][*ap-1].venda=cond[*an-1][*bl-1][*ap-1].valor + (cond[*an-1][*bl-1][*ap-1].valor            *fin);     printf("Vendido com sucesso\n");     strcpy (cond[*an-1][*bl-1][*ap-1].status,"Vendido");     strcpy (cond[*an-1][*bl-1][*ap-1].tipo,"Financiado");     }     else     {     printf("valor invalido \n");     system("pause");     }     }int main (void){        tcondominio cond[10][6][4];        int bloco,andar,apto;         printf("\n Digite o bloco:1 a 4 \n ");         scanf("%d", &bloco);         printf(" Digite o andar:1 a 10 \n ");         scanf("%d", &andar);         printf(" Digite o apartamento:1 a 6 \n ");         scanf("%d", &apto);       vender(cond,&bloco,&andar,&apto,garagem);       reservar(cond,&bloco,&andar,&apto);       return 0; }
Visitante
Este tópico está impedido de receber 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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!