Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Porque no visualiza bien valor de variable?

Estas en el tema de Porque no visualiza bien valor de variable? en el foro de C/C++ en Foros del Web. Hola tengo un problemilla con el siguiente programita,y no entiendo porque no me visualiza al ejecutarlo el valor de la variable nota_jun de vec[i].mmmm porfis ...
  #1 (permalink)  
Antiguo 22/04/2010, 01:23
 
Fecha de Ingreso: marzo-2010
Mensajes: 127
Antigüedad: 14 años, 2 meses
Puntos: 2
Porque no visualiza bien valor de variable?

Hola tengo un problemilla con el siguiente programita,y no entiendo porque no me visualiza al ejecutarlo el valor de la variable nota_jun de vec[i].mmmm

porfis se me podeis hechar un cable que me deprime el que no salga..
Código C:
Ver original
  1. /*3.    Crear un nuevo tipo de dato o estructura llamada alumno que contenga los tipos
  2.  de datos básicos: carácter nombre[15], apellido[15] y nota_jun[3], entero nota_ev1
  3.  , entero nota_ev2 y entero nota_ev3. Crear con ella un vector de 10 elementos del
  4.  nuevo tipo creado e introducirle valores desde teclado a cada uno de los campos
  5.  de sus 10 elementos, salvo el campo nota_jun[3]. Las notas de la 1ª, 2ª y 3ª evaluación
  6.   serán validadas entre 0 y 10, ambos incluidos. Al campo nota_jun[3] será una nota
  7.   alfabética calculada como la correspondiente a la media de sus notas por evaluaciones
  8.     y correspondiéndose con:
  9.     MD si media > = 0 y < 2
  10.     IN si media > = 2 y < 5
  11.     SF si media > = 5 y < 6
  12.     BI si media >= 6 y < 7
  13.     NT si media > = 7 y < 9
  14.     SB si media > = 9 y <= 10
  15. Una vez dado valor a cada uno de los diez elementos que forman el vector de alumnos se
  16. visualizarán, realizando una pausa tras la visualización de cada alumno.
  17. Antes de finalizar el programa se preguntará si se desea visualizar a los alumnos
  18. aprobados o a los suspendidos, validando la entrada de un carácter 'a' o 's' únicamente,
  19.  tanto mayúsculas como minúsculas y dependiendo de la entrada de información se visualizarán
  20.   los todos los datos disponibles de los alumnos a modo de listado.*/
  21.   #include<stdio.h>
  22.   #include<stdlib.h>
  23.   #include<string.h>
  24.   struct alumno{
  25.   char nombre[15];
  26.   char apellido[15];
  27.   char nota_jun[3];
  28.   int nota_ev1;
  29.   int nota_ev2;
  30.   int nota_ev3;
  31.   };
  32.   void main(void){
  33.  
  34.   struct alumno vec[3];
  35.   int i=0,media=0,suma=0;
  36.   char basura;
  37.  
  38.   for(i=0;i<3;i++){
  39.   printf("\t*****DATOS ALUMNO %d********\n",i+1);
  40.   printf("Introduce nombre del alumno:\n",i);
  41.   gets(vec[i].nombre);
  42.   printf("Introduce apellido del alumno:\n",i);
  43.   gets(vec[i].apellido);
  44.   do{
  45.   printf("Introduce nota de la 1º evaluacion(0-10):\n");
  46.   scanf("%d",&vec[i].nota_ev1);
  47.   scanf("%c",&basura);
  48.   }while(vec[i].nota_ev1<0 || vec[i].nota_ev1>10);
  49.  do{
  50.   printf("Introduce nota de la 2º evaluacion(0-10):\n");
  51.   scanf("%d",&vec[i].nota_ev2);
  52.   scanf("%c",&basura);
  53.   }while(vec[i].nota_ev1<0 || vec[i].nota_ev1>10);
  54.   do{
  55.   printf("Introduce nota de la 3º evaluacion(0-10):\n");
  56.   scanf("%d",&vec[i].nota_ev3);
  57.   scanf("%c",&basura);
  58.   }while(vec[i].nota_ev1<0 || vec[i].nota_ev1>10);
  59.         suma=vec[i].nota_ev1+vec[i].nota_ev2+vec[i].nota_ev3;
  60.           media=suma/3;
  61.           if(media>=0 && media<2){
  62.           vec[i].nota_jun=="MD";
  63.           }
  64.           if(media>=2 && media<5)
  65.           vec[i].nota_jun=="IN";
  66.           if(media>=5 && media<6)
  67.           vec[i].nota_jun=="SF";
  68.           if(media>=6 && media<7)
  69.           vec[i].nota_jun=="BI";
  70.           if(media>=7 && media<9)
  71.           vec[i].nota_jun=="BT";
  72.           if(media>=9 && media<=10)
  73.           vec[i].nota_jun=="SB";
  74.  
  75.  
  76.   }
  77.   printf("\n*******VISUALIZACION DE DATOS INTRODUCIDO********************\n");
  78.   for(i=0;i<3;i++){
  79.   printf("\nAlumno %s \t %s",vec[i].nombre,vec[i].apellido);
  80.   printf("\nNota primera evaluacion %d",vec[i].nota_ev1);
  81.   printf("\nNota segunta evaluacion %d",vec[i].nota_ev2);
  82.   printf("\nNota tercera evaluacion %d",vec[i].nota_ev3);
  83.   printf("\nNota final de Junio %c",vec[i].nota_jun);
  84.   if(i<=2){
  85.   printf("\nPulsa intro para continuar...");
  86.   scanf("%c",&basura);
  87.   }
  88.  
  89.   }
  90.  
  91.   }
  #2 (permalink)  
Antiguo 22/04/2010, 04:58
 
Fecha de Ingreso: junio-2008
Ubicación: Seattle, USA
Mensajes: 733
Antigüedad: 15 años, 11 meses
Puntos: 61
Respuesta: Porque no visualiza bien valor de variable?

== es para comparar.
Para asignar strings no se usa =, se usa strcpy
  #3 (permalink)  
Antiguo 22/04/2010, 05:30
 
Fecha de Ingreso: marzo-2010
Mensajes: 127
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: Porque no visualiza bien valor de variable?

mmmm... yo pensaba que por ejemplo
a=b.. el valor de b lo guardo en a,
a==b.. pense que era como decir que si son iguales las variables..
pero de todas maneras gracias por recordarme de que en strings no puedo usar el '='.


por otra parte usando el strcpy(vec[i].nota_jun,"IN"); funciona correctamente seguire con el ejercicio y una vez me compile todo lo pondre en este post por si alguien lo necesita en algun momento..
Salu2

Última edición por roser24; 22/04/2010 a las 05:57

Etiquetas: variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:45.