problema con scanf

unicomakina
18 de Noviembre del 2008
Estoy empezando a programar y tengo un problemilla con un programa que no se para a que le meta el valor de una variable char (no hace el scanf),a ver si alguien me puede ayudar, seguramente tenga mas fallos, ahi va el programa si le encotrais mas fallos os lo agradeceria que me los cometarais. gracias
#include<stdio.h>
#include<conio.h>
void main()
{
int grup;
float prec,precf;
char tarj;
printf("¿Cual es el precio del curso?n");
scanf("%f",&prec);
printf("nIntroduce el codigo del grupo al que perteneces:nPersonal de la Universidad: 1nEstudiantes de la Universidad: 2nFamiliares del personal de la Universidad: 3nAjenos a la Universidad (DESEMPLEADOS): 4nAjenos a la Universidad: 5n");
scanf("%d",&grup);

if(grup==1)
{
printf("¿Dispones de tarjeta deportiva (s/n)?n");
scanf("%c",&tarj);
prec=prec*0.25;
if(tarj=='s')
prec=(prec-prec*0.25);
printf("El precio del curso para ti es de %f",precf);
}
if(grup==2)
{
printf("¿Dispones de tarjeta deportiva (s/n)?n");
scanf("%c",&tarj);
prec=prec*0.7;
if(tarj=='s')
prec=(prec-prec*0.25);
printf("El precio del curso para ti es de %f",prec);
}
if(grup==3||5)
printf("El precio del curso para ti es de %f",prec);
if(grup==4)
{
prec=prec*0.6;
printf("El precio del curso para ti es de %f",prec);
}
getch();
}

curam
18 de Noviembre del 2008
Para leer una variable de tipo caracter, se utiliza "%c" o "%s"

unicomakina
18 de Noviembre del 2008
por cierto el scanf que no me hace es el que viene despues de "¿Dispones de tarjeta deportiva(s/n)?, Si hay otra manera de responder a esa pregunta gracia por comentarla. No se si importara pero uso el studio 2008.