Funcao C - ajuda com output string

4 respostas
lyondor

Ora boas amigos, estou aqui com um problema no código que estou a desenvolver em c. :roll:

Vamos imaginar uma sistema de uma conta que é gerida por um utilizador.

Ele contém um menu, por exemplo:

1-Debitos
2-Creditos
3-sair
Depois cada numero pressionado vai para uma função, neste caso estou com problemas nesta :

pagamento()
	{
  	   struct utilizador utilizador;
	
	  printf ("\n\n\nEscolha a forma de pagamento:\n\n");

          puts ("1 - Cheque");

	  puts ("2 - Dinheiro");

	  puts ("3 - Transferencia Bancaria");

	  puts ("4 - Voltar"); 
       	  scanf("%d",&utilizador);   	

	}

A minha dúvida surge aqui, eu quero que o utilizador pressione 1(ex), e vá sair noutra função (ex) e escreva("Utilizador escolheu cheque") ;
Obrigado :D

4 Respostas

D

Nao entendi bem a pergunta, mas se voce usar um SWITCH resolve.

switch(var){

case 1:
printf ("Opcao um");
funcao1();
break;

case 2:
printf ("Opcao dois");
funcao2();
break;

case 3:
printf ("Opcao 3");
funcao3();
break;

default:
break;

}
lyondor

me fiz explicar mal, por exemplo, eu tenho o seguinte input:

Escolha uma opcao:

1-Creditos
2-Debitos
3-Sair

dentro da funcao credito, tem algo assim:

1-Insira nome

e depois de meter o nome, ainda tenho outra funcao que pergunta o seguinte:

Tipo de opcao

1-cheque
2-cartao
3-dinheiro

Aqui surge a duvida, o utilizador escolhe 1, e eu queria que noutra funcao(neste caso a funcao dados) aparecesse :

dados:
O utilizador “nome”, fez um “credito”, escolhendo a opcao “cheque”

Como eu faço isso, ou seja passar o numero para string(neste caso o 1, tem de aparecer no ecrã cheque);

grato XD

E

exatamente como o dertyu765 disse (tem n formas de fazer, mas para quem está iniciando é melhor essa mesmo):

int function cheque(){
  printf("Cheque");
  return 1;
}


(...)

switch(opcao_escolhida){
  (...)
  case 3: cheque();
}
D

Tambem poderia ser feito com if`s, mas nesse caso o switch eh mais legivel e resolve seu problema.

Criado 1 de janeiro de 2012
Ultima resposta 1 de jan. de 2012
Respostas 4
Participantes 3