Ir ao conteúdo
  • Cadastre-se

HR BFH Gameplays

Membro Júnior
  • Posts

    4
  • Cadastrado em

  • Última visita

Reputação

0
  1. Eu não consegui compreender direito você poderia aplicar neste algoritmo? #include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> #define Max 60 struct ficha { char nome[30]; int mat,idade; float nota; }; struct aux { char nome[30]; int mat,idade; float nota; }; void op1(struct ficha v[60], int n); void op2i(struct ficha v[60], int t); void op2(struct ficha v[60], int l, int r); void op3(struct ficha v[60], int n); int main() { struct ficha v[60]; int n,x; printf("Informe a quantidade de alunos:\n"); scanf("%i",&n); for(x=0; x<n; x++) { printf("Informe o nome do %i aluno: \n ",x+1); fflush(stdin); gets(v[x].nome); printf("Insira a matricula do %i aluno: \n",x+1); scanf("%d",&v[x].mat); fflush(stdin); printf("Informe a idade do %i aluno: \n",x+1); fflush(stdin); scanf("%d",&v[x].idade); printf("Informe a nota do %i aluno: \n",x+1); fflush(stdin); scanf("%f",&v[x].nota); system ("cls"); } { char op; do { system("cls"); printf("\n\n ==== MENU DE opções ====\n"); printf("1-Listar as informações dos alunos: \n"); printf("2-Organizar em ordem crescente (atraves da matricula): \n"); printf("3-Pesquisa atraves da matricula: \n"); printf("4-Sair: \n"); op = getch(); switch(op) { case '1': system("cls"); printf("informações dos alunos: \n"); op1 (v, n); getch(); break; case '2': system("cls"); printf("Opcao 2: \n"); op2i (v, n); getch(); break; case '3': system("cls"); printf("Opcao 3: \n"); //op3 (v, n); getch(); break; case '4': return 0; default: printf("Opcao invalida!\n"); } } while(op != 0); getch(); return 0; } return 0; } void op1(struct ficha v[60], int n) { int x; for(x=0; x<n; x++) { printf("Nome do Aluno: %s\n",v[x].nome); printf("Idade do Aluno: %d\n",v[x].idade); printf("Matricula do aluno: %d\n",v[x].mat); printf("Nota do Aluno: %2.2f\n",v[x].nota); printf("\n"); } } void op2i(struct ficha v[60], int t) { op2(v, 0, t-1); } void op2(struct ficha v[60], int l, int r) {int i,j,pivo=0; i=l; j=r; struct aux a[1]; pivo= v[(l+r)/2].mat; printf("pivo %i \n",pivo); do { while(v.mat<pivo && i<r) i++; while(v[j].mat>pivo && j>l) j--; if(v.mat<=v[j].mat) { strcpy(a[1].nome, v.nome); a[1].nome=v.nome; a[1].mat=v.mat; a[1].idade=v.idade; a[1].nota=v.nota; v.nome=v[j].nome; v.mat=v[j].mat; v.idade=v[j].idade; v.nota=v[j].nota; v[j].nome=a[1].nome; v[j].mat=a[1].mat; v[j].idade=a[1].idade; v[j].nota=a[1].nota; i++; j--; } } while(i<=j); if(l<j) { op2(v,l,j); } if(i<r) { op2(v,i,l); } }
  2. struct ficha { char nome[30]; int mat,idade; float nota; }; struct aux { char nome[30]; int mat,idade; float nota; }; a[1].nome = v.nome; a[1].mat=v.mat; a[1].idade=v.idade; a[1].nota=v.nota; DA ERRO SÓ QUE NÃO SEI O QUE FAZER incompatible types when assigning to type 'char[30]' from type 'char *'
  3. GALERA! o 'n' que é o numero de alunos não vem para as opções, assim quando declarado nos void ele pega valores aleatórios e acaba "estourando o for" até o compilador não responder! alguem pode me ajudar? AINDA TEM NA OPÇÃO 2 TEM QUE ORDENAR OS ALUNOS ATRAVES DE QUICKSORT PELA MATRICULA DE ORDEM CRESCENTE MAS SE CONSEGUIR ME AJUDAR NA 1ª OPÇÃO FICO MUITO GRATO! #include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> #define Max 60 struct ficha { char nome[30]; int mat,idade; float nota; }; void op1(struct ficha v[60]); void op2(struct ficha v[60]); void op3(struct ficha v[60]); int main() { struct ficha v[60]; int n,x; printf("Informe a quantidade de alunos:\n"); scanf("%i",&n); for(x=0;x<n;x++) { printf("Informe o nome do %i aluno: \n ",x+1); fflush(stdin); gets(v[x].nome); printf("Insira a matricula do %i aluno: \n",x+1); scanf("%d",&v[x].idade); fflush(stdin); printf("Informe a idade do %i aluno: \n",x+1); fflush(stdin); scanf("%d",&v[x].mat); printf("Informe a nota do %i aluno: \n",x+1); fflush(stdin); scanf("%f",&v[x].nota); system ("cls"); } { char op; do{ system("cls"); printf("\n\n ==== MENU DE opções ====\n"); printf("1-Listar as informações dos alunos: \n"); printf("2-Organizar em ordem crescente (atraves da matricula): \n"); printf("3-Pesquisa atraves da matricula: \n"); printf("4-Sair: \n"); op = getch(); switch(op) { case '1': system("cls"); printf("Opcao 1: \n"); op1 (v); getch(); break; case '2': system("cls"); printf("Opcao 2: \n"); op2 (v); getch(); break; case '3': system("cls"); printf("Opcao 3: \n"); op3 (v); getch(); break; case '4': return 0; default: printf("Opcao invalida!\n"); } }while(op != 0); getch(); return 0; } return 0; } void op1(struct ficha v[60]) { int x,n; for(x=0;x<=n;x++) {printf("/n Nome do Aluno: %s",v[x].nome); printf("/n Idadde do Aluno: %d",v[x].idade); printf("/n Matricula do aluno: %d",v[x].mat); printf("/n Nota do Aluno: %2.2f",v[x].nota); } }
  4. Faça um programa que utilize um vetor de struct para armazenar as informações abaixo: nome: 15 caracteres; nascimento: (dia, mês, ano: inteiro) email: 25 caracteres; celular: inteiro; altura: real; peso: real; Considere um máximo de 100 pessoas cadastradas e execute para um total de N pessoas o que abaixo é especificado: - Leia no programa principal o total (N) de pessoas e os dados destas N pessoas; - Apresente um menu que permita de forma repetida as opções abaixo: 1- Informar o nome das pessoas que estão de aniversário na data atual do sistema; 2- Pesquisar os dados de uma pessoa através do seu nome; 3- Informar o número de pessoas e o peso daquelas que medem mais de 1.80m; 4- Informar através do main a média do peso das pessoas com mais de 40 anos, logo esta função deve retornar a média; 5- Sair; Para cada uma das opções do menu deverá ser criada uma função. Trabalho_01.pdf

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