Ir ao conteúdo
  • Cadastre-se

MassakiMsk

Membro Pleno
  • Posts

    470
  • Cadastrado em

  • Última visita

Tudo que MassakiMsk postou

  1. Um dos principais erros, se não o principal, está no tamanho dos char[]. Você tem que lembrar de deixar sempre uma posição a mais para guardar o '\0'
  2. O certo seria usar "op" como char ao invés de float já que você só quer ler um caracter.
  3. De acordo com uma resposta no Yahho: Ou seja, é só criar uma variável para guardar o valor desejado na memória.
  4. Sabe usar if/else? É só comparar os 3 valores com IF's. Se precisar de ajuda nisso pode dizer.
  5. #include <iostream> #include <string.h> #include <stdlib.h> #include <string.h> #include <stdio.h> #include <vector> using namespace std; struct DadosPessoais{ vector <string> endereco; // # vector <string> dataNasc; // # vector <string> idadeAtu; // # vector <string> telefone; // # vector <string> email; // # vector <string> nome; // # vector <string> cpf; // # vector <string> rg; // # }; char lyricsTemp[20]; DadosPessoais pessoas; void cadastraPessoa(); void imprimiCadastro(); int main(int argc, char** argv){ cadastraPessoa(); imprimiCadastro(); return 0; } void cadastraPessoa(){ cout << " Digite As Seguinte informações Da Pessoa a Ser Cadastrada : " << "\n\n"; cout << " Nome Completo : "; gets(lyricsTemp); pessoas.nome.push_back(lyricsTemp); cout << " Data de Nascimento : "; gets(lyricsTemp); pessoas.dataNasc.push_back(lyricsTemp); cout << " Idaade Atual : "; gets(lyricsTemp); pessoas.idadeAtu.push_back(lyricsTemp); cout << " Digite O Cpf da Pessoa : "; gets(lyricsTemp); pessoas.cpf.push_back(lyricsTemp); cout << " Digite O Rg da Pessoa : "; gets(lyricsTemp); pessoas.rg.push_back(lyricsTemp); cout << " Endereco : "; gets(lyricsTemp); pessoas.endereco.push_back(lyricsTemp); cout << " Email : "; gets(lyricsTemp); pessoas.email.push_back(lyricsTemp); cout << " Telefone : "; gets(lyricsTemp); pessoas.telefone.push_back(lyricsTemp); } void imprimiCadastro(){ cout << " Nome : " << pessoas.nome[0] << endl; cout << " Data de Nascimento : " << pessoas.dataNasc[0] << " / "; cout << " Idade Atual : " << pessoas.idadeAtu[0] << endl; cout << " CPF : " << pessoas.cpf[0] << " / "; cout << " RG : " << pessoas.rg[0] << endl; cout << " Endereço :" << pessoas.endereco[0] << endl; cout << " Email :" << pessoas.email[0] << endl; cout << " Telefone : " << pessoas.telefone[0] << endl; } Eu não li seu código inteiro, só fiz 2 mudanças, aumentar o tamanho do vetor e tirar os parâmetros das funções. Assim funcionou, mas não é muito legal usar variável global, é melhor usar ponteiro.
  6. Pelo compilador executa? A tela do CMD nem "pisca"?
  7. Use strcpy(melhoraluno, nome); Da biblioteca string.h
  8. @isrnick Ah, entendi. É que meu CodeBlocks não aceita e eu não sei como mudar rsrs
  9. Tem também a questão de alguns compiladores não aceitarem a declaração de variável dentro do for:
  10. Acho que ele qier algo que rode mesmo sem ter outro programa instalado (dropbox), só logado pelo site mesmo
  11. Não sei se é isso qie você queria, mas aqui mostra alguns dos passos void bubble (int *a) { //FUNÇÃO BUUBLE SORT int i, x, y, aux; for(x=0; x<max; x++) { for(y=x+1; y<max; y++) { if(a[y] < a[x]) { aux = a[x]; a[x] = a[y]; a[y] = aux; } } printf("Ordenando posicao %d:\n\t", x); for(i=0 ; i < max ; i++) { printf( "[%d]", a[i]); } printf("\n"); } } Se quiser que ele mostre todos os passos é só colocar dentro do "if(a[y] < a[x])" Não coloquei porque achei q ia ficar confuso.
  12. Se você fizer isso um moderador vai apagar sua resposta. É proibido resolver uma questão do zero. O usuário tem que colocar o que consegue fazer, mesmo que não funcione.
  13. Tendo a lógica fica mais fácil, eu acho que do básico a única coisa um pouco mais complicada é usar ponteiros com alocação dinâmica.
  14. Você sabe como "caminhar" no arquivo? Se sim, basta posicionar o ponteiro de arquivo no último cadastro gravado, copiar para suas devidas variáveis e imprimir.
  15. Acessa o site UriOnlineJudge que lá tem vários exercícios. Dos mais básicos aos avançados. Dá para treinar bastante a linguagem.
  16. O que seria essa variável ??????????? Daonde você tirou ela? As outras funções também?
  17. MassakiMsk

    Lista Encadeada C

    #include <stdio.h> #include <stdlib.h> struct Node { int num; struct Node *prox; }; typedef struct Node node; node* aloca(); void inicia(node **LISTA); void insere(node **LISTA, int val); void imprime(node *LISTA); int main(void) { node *LISTA; inicia(&LISTA); insere(&LISTA, 10); insere(&LISTA, 20); insere(&LISTA, 5); imprime(LISTA); return 0; } node* aloca() { node *LISTA = (node *)malloc(sizeof(node)); return(LISTA); } void inicia(node **LISTA) { *LISTA = NULL; } void insere(node **LISTA, int val) { node *p1 = aloca(); node *p2; p1->num = val; p1->prox = NULL; if (*LISTA == NULL) { *LISTA = p1; }else { p2 = *LISTA; while (p2->prox != NULL) p2 = p2->prox; p2->prox = p1; } } void imprime(node *LISTA) { node *tmp; tmp = LISTA; while(tmp != NULL) { printf("%d\n", tmp->num); tmp = tmp->prox; } } O que estava acontecendo é que você estava modificando uma "cópia" do ponteiro LISTA da main. Por ser uma cópia o ponteiro da main vai continuar sendo NULL. Para resolver isso basta passar o endereço do próprio ponteiro para que toda ação feita na função Insere seja feito diretamente no endereço do ponteiro LISTA. adicionado 2 minutos depois Isso também não pode ficar dentro do while Se não vai perder dados
  18. Será que seu teclado não está com duplo clique no enter? Testa usar o Enter do teclado numérico ao invés do Enter principal do teclado. ou usa o teclado virtual
  19. Na hora do scanf você não colocou os índices [x] nas variáveis de notas
  20. Como assim uma lista dentro de outra lista? Você quer que cada elemento de uma lista aponte para uma lista duplamente encadeada?
  21. Eu nunca fiz essas coisas, mas já tentou usar entre aspas? Ou com include em vez de device.
  22. Eu também acho que meu problema é a placa mãe. Está travando aleatoriamente também. Só que eu nao queria fastar dinheiro trocando ela, pois quero um pc melhor.
  23. Não entendi muito bem o que você quis dizer. Como assim "só com um número +48*10". Se não me engano, precisa deixar 1 espaço a mais para o vetor de char, para guardar o '\0'.
  24. Tem que usar scanf("%i", &idade); Como você ta começando agora eu nao vou saber explicar, mas tem a ver com endereço de memória. Também recomendo usar %d

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!