Ir para conteúdo
Fórum Script Brasil

Rafael.s

Membros
  • Total de itens

    8
  • Registro em

  • Última visita

Tudo que Rafael.s postou

  1. eu tenho isso em maos e não sei de onde e para onde partir, tenho que percorrer a lista e sair o nome e a media final dos alunos #include <stdio.h> #define true 1 struct prs{ char nome[30]; float n1,n2,n3,n4,media; struct prs *ptrprox; }; struct prs *ptrprim, *ptratual, *ptrnovo; main(){ char ch; ptrprim=(struct prs*)NULL; while (true){ printf ("\nDigite 'e' para inserir"); printf ("\nDigte 'l' para a lista"); printf ("\n"); ch=getche(); switch (ch){ case 'e':novonome(); break; case 'l':listatudo(); break; defaut: ("\n Digite opções validas"); } } } novonome(){ ptrnovo=(struct prs*) malloc(sizeof(struct prs)); if (ptrprim==(struct prs*)NULL){ ptrprim=ptrnovo; ptratual=ptrnovo; }else{ ptratual=ptrprim; while(ptratual->ptrprox!=(struct prs*)NULL){ ptratual=ptratual->ptrprox; } ptratual->ptrprox=ptrnovo; ptratual=ptrnovo; } printf ("\n Digite o nome "); gets (ptratual->nome); ptratual->ptrprox=(struct prs*)NULL; printf ("\n Digite a primeira nota\n"); gets (ptratual->nome); ptratual->ptrprox=(struct prs*)NULL; printf ("\n Digite a segunda nota\n"); gets (ptratual->nome); ptratual->ptrprox=(struct prs*)NULL; printf ("\n Digite a terceira nota\n"); gets (ptratual->nome); ptratual->ptrprox=(struct prs*)NULL; printf ("\n Digite a quarta nota\n"); gets (ptratual->nome); ptratual->ptrprox=(struct prs*)NULL; (*ptratual).media=((*ptratual).n1+(*ptratual).n2+(*ptratual).n3+(*ptratual).n4)/4; if((*ptratual).media>=6) printf("Aprovado"); else{ printf("Aluno reprovado"); } } listatudo(){ if(ptrprim==(struct prs*)NULL){ printf ("\n lista vazia \n"); (*ptratual).media=((*ptratual).n1+(*ptratual).n2+(*ptratual).n3+(*ptratual).n4)/4; if((*ptratual).media>=6) printf("Aprovado"); else{ printf("Aluno reprovado"); } return; } ptratual=ptrprim; do{ printf ("\n nome%s\n", ptratual->nome); ptratual=ptratual->ptrprox; //printf ("\n Media %f\n", ptratual->media); // ptratual=ptratual->ptrprox; }while (ptratual!=(struct prs*)NULL); } Grato desde já quem puder ajudar.
  2. Consegui, só adicionei printf ("\nSeu desconto de **** foi: %.2f", desconto); em cada IF
  3. #include <stdio.h> #include <conio.h> #include <stdlib.h> struct calc_sal { float qtd_horas; float vlr_horas; float sal_bruto; float sal_liquido; }; int main() { struct calc_sal *salario; float desconto; salario = (struct calc_sal*)malloc(sizeof(struct calc_sal)); fflush (stdin); printf ("Informe a quantidade de Horas trabalhadas: \n"); scanf ("%f",&salario->qtd_horas); printf ("Informe o salario por hora: \n"); scanf ("%f",&salario->vlr_horas); salario->sal_bruto = (salario->qtd_horas) *( salario->vlr_horas); printf ("\nSalario Bruto TOTAL:%.2f",salario->sal_bruto); //CALCULAR DESCONTO INSS if (salario->sal_bruto<=1000) { desconto=(salario->sal_bruto*0.08); salario->sal_liquido=(salario->sal_bruto-desconto); } if (salario->sal_bruto>1000) { desconto=(salario->sal_bruto*0.09); salario->sal_bruto=(salario->sal_bruto-desconto); salario ->sal_liquido=(salario->sal_bruto-desconto); } printf ("\nSeu INSS desconto: %.2f ",desconto); //CALCULAR DESCONTO IR if (salario->sal_bruto>500 && salario->sal_bruto<=1000) { desconto=(salario->sal_bruto*0.05); salario->sal_bruto=(salario->sal_bruto-desconto); salario ->sal_liquido=(salario->sal_bruto-desconto); } if (salario->sal_bruto > 1000) { desconto=(salario->sal_bruto*0.07); salario->sal_liquido=(salario->sal_bruto-desconto); } printf ("\nSeu IR descontou: %.2f",desconto); printf ("\nSeu Salario LIQUIDO: %.2f",salario->sal_liquido); getch(); } Cara joguei assim e o resultado que deu foi bacana, mas os numeros não batem, qual o caminho para a solução? :|
  4. Bom, partindo deste codigo ai que funciona tudo certinho e etc, queria fazer uma alteração para que quando calcular o sal_bruto e for mostra o desconto de inss e IR, que mostre quanto foi tirado de cada um, por que neste codigo ele mostra o salario já descontado será possivel esse help? Agradeço desde já
  5. Trago aqui a resolução do codigo completo. #include <stdio.h> #include <conio.h> #include <stdlib.h> struct calc_sal { float qtd_horas; float vlr_horas; float sal_bruto; }; int main() { struct calc_sal *salario; float desconto; salario = (struct calc_sal*)malloc(sizeof(struct calc_sal)); fflush (stdin); printf ("HORAS\n"); scanf ("%f",&salario->qtd_horas); printf ("Salario \n"); scanf ("%f",&salario->vlr_horas); salario->sal_bruto = (salario->qtd_horas) *( salario->vlr_horas); printf ("\nSalario Bruto TOTAL:%.2f",salario->sal_bruto); //CALCULAR DESCONTO INSS if (salario->sal_bruto<=1000) { desconto=(salario->sal_bruto*0.08); salario->sal_bruto=(salario->sal_bruto-desconto); } if (salario->sal_bruto>1000) { desconto=(salario->sal_bruto*0.09); salario->sal_bruto=(salario->sal_bruto-desconto); } printf ("\nSalario Bruto INSS: %.2f ",salario->sal_bruto); //CALCULAR DESCONTO IR if (salario->sal_bruto>500 && salario->sal_bruto<=1000) { desconto=(salario->sal_bruto*0.05); salario->sal_bruto=(salario->sal_bruto-desconto); } if (salario->sal_bruto > 1000) { desconto=(salario->sal_bruto*0.07); salario->sal_bruto=(salario->sal_bruto-desconto); } printf ("\nSalario Bruto IR: %.2f",salario->sal_bruto); printf ("\nSalario LIQUIDO: %.2f",salario->sal_bruto); getch(); }
  6. Então, estou no windows XP usando DEV c++, e o codigo ta igual o ultimo postado aqui acima. Estou entrando sempre com valores iguais, 10, 10, 10 e 10 só que a media final das contas é 0
  7. Mas ainda não está mostrando o resto e não sabemos para onde partir
×
×
  • Criar Novo...