Jump to content

Ganhe $$$ escrevendo tutoriais para nós!


Foto

linguagem C, variáveis.

ajuda




  • Faça login para responder
1 resposta(s) nesse tópico

#1 jeanssimm

jeanssimm
  • Participante
  • 2 mensagens

Publicado 21 June 2012 - 09:15 PM

A ideia é simples (ou pelo menos parece)

quero criar um programa que se entrar com 1 no menu, vai aparecer uma tela para digitar o codigo de um funcionario e o salario e outros dados.
Depois, de volta no menu, apertando 2 vai para uma tela que pede o codigo e ele mostra todos os dados inseridos no menu 1.

o problema é que quando no menu 2, ele vai mostrar o nome, o programa fecha, e se eu nao pedir o nome, for direto ao salario, o programa mostra valores altos e aleatórios (tipo 5016543241).

esse é o codigo que eu fiz, sei que tem algumas variaveis e algumas coisas inuteis ai no meio, mas sou iniciante e to aprendendo a mexer com isso.
(ele nao está completo, mas a parte que importa mais está aí.)

#include<stdio.h>
#include<windows.h>
int main ()
	{
		   int vetorcodigo[20], opcao, codigo, HED, ND, FAL, c, i, s, h, d, f, r, v, x;
		   int vetorsalario[20], vetorHED[20], vetorND[20], vetorFAL[20], vetorDE[20], vetorREF[20], vetorVAL[20];
		   char op[1], nome[20], n, vetornome[20];
		   float salario, DE, REF, VAL;
  
	do
	{
	system("cls");
	printf("*****************************************************************\n");
	printf("MENU\n\n");
	printf("1 - Insere dados\n");
	printf("2 - Folha de pagamento\n");
	printf("3 - Sair\n");
	printf("*****************************************************************\n\n");  
	scanf("%d", &opcao);
  
  
  
  
	switch (opcao)  
	   {
	   case 1:
		 do{
		 system("cls");
		 printf("*****************************************************************\n");
		 printf("Insere dados\n");
		 printf("*****************************************************************\n");
		 printf("Codigo do funcionario: ");
		 scanf("%d", &c);
		 vetorcodigo[c]=c;
		 printf("Nome do funcionario: ");
		 scanf("%s", &n);
		 vetornome[c]=n;
		 printf("Salario em R$: ");
		 scanf("%f", &s);
		 vetorsalario[c]=s;
		 printf("Horas extras diurnas(em horas): ");
		 scanf("%d", &h);
		 vetorHED[c]=h;
		 printf("Numero de dependentes: ");
		 scanf("%d", &d);
		 vetorND[c]=d;
		 printf("Falta em horas: ");
		 scanf("%d", &f);
		 vetorFAL[c]=f;
		 printf("Descontos eventuais em R$: ");
		 scanf("%d", &r);
		 vetorDE[c]=r;
		 printf("Gastos com refeicoes feitas na empresa em R$: ");
		 scanf("%d", &r);
		 vetorREF[c]=r;
		 printf("Vales retirados durante o mes em R$: ");
		 scanf("%d", &VAL);
		 vetorVAL[c]=v;
		 printf("\n\nDeseja continuar? S/N?");
		 scanf("%s", &op[0]);
		
		 }while (op[0]=='s'||op[0]=='S');
		 break;
		
		 case 2:
			  do
			  {
			  printf("*****************************************************************\n");
			  printf("Folha de pagamentos\n");
			  printf("*****************************************************************\n");
			  printf("Digite o codigo do funcionario: ");
			  scanf("%d", &x);
			  printf("\n\nNome: %s", vetornome[x] );
			  printf("Salario: %d\n", vetorsalario[x]);
			  system("pause");
			
			
			
						  
			  printf("\n\nDeseja continuar?");
			  scanf("%s", &op[0]);
			
										
			  }while (op[0]=='s'||op[0]=='S');
			  break;
	  
	   }
  
  
  
  
	}while (opcao<3);
	system("pause");
  
  
  
		  
	}
		  


se alguém puder dar uma força ai vou ficar muito feliz =]




#2 nickosoft

nickosoft

    Hardware Expert

  • Colaborador
  • 3378 mensagens

Publicado 22 June 2012 - 04:49 AM

qnd se armazena string em variaveis nao usa scanf procure informacoes do uso do gets
com scanf nao deve estar armazenando o texto e por isso esta saindo na hora de mostrar o q tem na variavel...

algo assim, veja se funciona, de cabeca deve ter erro....
char string[100];
printf ("Digite o seu nome: \n");
gets (string);
printf ("\n Ola %s",string);
VB.Net & C#






Tópicos Relacionados Collapse

  Tópico Fórum Criado por Estatísticas Última atualização

Tópicos com palavra-chave: ajuda





Ganhe $$$ escrevendo tutoriais para nós!