[ Foro de C++ ]

Mi codigo imprime sin parar (C++) ayuda

12-Jul-2019 00:07
Invitado (jonathan)
0 Respuestas

El lenguaje usado es C++
el programa debe preguntar si es alumno o profesor, si es profesor debe colocar una contraseña, si es correcta debe responder el test pero solo Respuestas y ,si es alumno debe colocar nombre,apellido y rut, y de inmediato empieza el test de 10 preguntas con 4 alternativas

El error se encuentra en el case 1, si tu eliges la opción alumno( 1 ), te pide tu nombre, al momento de colocar tu nombre e incluso 1 letra, falla y empieza a imprimir sin parar todo lo que sigue, si eligo el case 2 (profesor =2) contraseña 1234,coloco solo las respuestas y al finalizar me da la suma de respuestas correctas

#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <cstdlib>
#define clavetrue 1234
#define respuesta profesor
using namespace std;
int opcion,nombre,apellido,rut,claveacceso,profesor,datoingresado,profe,s1,s2,z1,z2,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,n1,n2,n3,n4,n5,n6,n7,n8,n9,n10,resultado;

int main (void)
{
   do
   {
       printf("\nSi usted es alumno Ingrese opcion 1\nSi usted es profesor Ingrese opcion 2\nIngrese la opcion : ");
       scanf("%d",&opcion);
       switch(opcion){
       case 1:
       printf("Si usted es alumno\n");
       printf("\nIntroduzca su nombre: ");
       scanf("%d",&nombre);
       printf(" \nIngrese su apellido: ");
       scanf("%d",&apellido);
       printf("\nIngrese su rut: ");
       scanf("%d",&rut);
       printf("esta es tu evaluación cuenta con 10 preguntas de selección multiple \n");
       printf("pregunta1 \n");
       printf("En que mes nos encontramos \n");
       printf("1) Junio \n");
       printf("2) Julio \n");
       printf("3) Agosto \n");
       printf("4) Mayo \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p1);
       if(p1==2){
       n1=1;
       }
       else{
           n1=0;
       }
       printf("pregunta 2 \n");
       printf("En que año estamos\n");
       printf("1) año 2001 \n");
       printf("2) año 2018 \n");
       printf("3) año 2020 \n");
       printf("4) año 2019 \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p2);
      if(p2==4){
       n2=1;
       }
       else{
           n2= 0;
       }
       printf("pregunta 3 \n");
       printf("Que lenguaje estoy usando en esta evaluación \n");
       printf("1) Phyton \n");
       printf("2) C++ \n");
       printf("3) Java \n");
       printf("4) C# \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p3);
       if(p3==2){
       n3=1;
       }
       else{
           n3= 0;
       }
       printf("pregunta 4 \n");
       printf("A que nota corresponde esta evaluación \n");
       printf("1) a la 2da nota \n");
       printf("2) a la ultima nota \n");
       printf("3) a la 1ra nota \n");
       printf("4) a la 3ra nota \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p4);
       if(p4==2){
       n4=1;
       }
       else{
           n4= 0;
       }
       printf("pregunta 5 \n");
       printf("Cuanto dura la clase de Algoritmo y programación \n");
       printf("1) 1 hora \n");
       printf("2) 4 horas \n");
       printf("3) 3 horas \n");
       printf("4) 2 horas \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p5);
       if(p5==3){
       n5=1;
       }
       else{
           n5= 0;
       }
       printf("pregunta 6 \n");
       printf("Mejor seccion en el pinpon \n");
       printf("1) sección 520 \n");
       printf("2) sección 320 \n");
       printf("3) sección 270 \n");
       printf("4) sección 420 \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p6);
       if(p6==2){
       n6=1;
       }
       else{
           n6= 0;
       }
       printf("pregunta 7 \n");
       printf("De que asignatura es esta evaluación \n");
       printf("1) Introduccion a la ingenieria eléctrica \n");
       printf("2) Gestion del Aprendizaje \n");
       printf("3) Matematicas \n");
       printf("4) Algoritmo y programación \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p7);
       if(p7==4){
       n7=1;
       }
       else{
           n7= 0;
       }
       printf("pregunta 8 \n");
       printf("La mejor sección es: \n");
       printf("1) sección 420 \n");
       printf("2) sección 320\n");
       printf("3) sección 340 \n");
       printf("4) sección 270 \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p8);
       if(p8==2){
       n8=1;
       }
       else{
           n8= 0;
       }
       printf("pregunta 9 \n");
       printf("Jorge tobar es: \n");
       printf("1) Un tenista \n");
       printf("2) Un peleador de la ufc \n");
       printf("3) Un cantante \n");
       printf("4) Un profesor \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p9);
       if(p9==4){
       n9=1;
       }
       else{
           n9= 0;
       }
       printf("pregunta 10 \n");
       printf("Alexis sanchez es: \n");
       printf("1) Un jugador de futbol \n");
       printf("2) Un alcalde \n");
       printf("3) Un periodista \n");
       printf("4) Un cantante \n");
       printf("Indica tu respuesta \n");
       scanf("%i",&p10);
       if(p10==1){
       n10=1;
       }
       else{
           n10= 0;
       }
       resultado=n1+n2+n3+n4+n5+n6+n7+n8+n9+n10;
       printf("tu resultado del examen es de %i",resultado);
       
       case 2:
       printf("si usted es profesor\n");
       cout<<"ingrese la clave de acceso: ";
       cin>>claveacceso;
       if(claveacceso!=clavetrue);
   }
}
       while(claveacceso!=clavetrue);
       cout<<"\n\n acesso concedido.\n";
       getch();
   
   printf("esta es una evaluación cuenta con 10 preguntas de selección multiple \n");
   printf("pregunta 1 \n");
   printf("En que mes nos encontramos \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p1);
   if(p1==2){
   n1=1;
   }
   else{
       n1=0;
   }
   printf("pregunta 2 \n");
   printf("En que año estamos\n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p2);
   if(p2==4){
   n2=1;
   }
   else{
       n2= 0;
   }
   printf("pregunta 3 \n");
   printf("Que lenguaje estoy usando en esta evaluación \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p3);
   if(p3==2){
   n3=1;
   }
   else{
       n3= 0;
   }
   printf("pregunta 4 \n");
   printf("A que nota corresponde esta evaluación \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p4);
   if(p4==2){
   n4=1;
   }
   else{
       n4= 0;
   }
   printf("pregunta 5 \n");
   printf("Cuanto dura la clase de Algoritmo y programación \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p5);
   if(p5==3){
   n5=1;
   }
   else{
       n5= 0;
   }
   printf("pregunta 6 \n");
   printf("Mejor seccion en el pinpon \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p6);
   if(p6==2){
   n6=1;
   }
   else{
       n6= 0;
   }
   printf("pregunta 7 \n");
   printf("De que asignatura es esta evaluación \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p7);
   if(p7==4){
   n7=1;
   }
   else{
       n7= 0;
   }
   printf("pregunta 8 \n");
   printf("La mejor sección es: \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p8);
   if(p8==2){
   n8=1;
   }
   else{
       n8= 0;
   }
   printf("pregunta 9 \n");
   printf("Jorge tobar es: \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p9);
   if(p9==4){
   n9=1;
   }
   else{
       n9= 0;
   }
   printf("pregunta 10 \n");
   printf("Alexis sanchez es: \n");
   printf("Indica tu respuesta \n");
   scanf("%i",&p10);
   if(p10==1){
   n10=1;
   }
   else{
       n10= 0;
   }
   resultado=n1+n2+n3+n4+n5+n6+n7+n8+n9+n10;
   printf("has respondido %i correctas",resultado);

   }  




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)