-
Pajarito Nuevo
cadena de caracteres en c
Hola Gente, estoy empezando en C y tengo un problemita que no he podido resolver.
-----------------------Codigo ----------------------------------
/Concurso de belleza
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
void main(){
char nombre[25]={" "}, nombre_mayor[25]={" "};
int inteligencia=0;
int belleza=0;
int cultura=0;
int conti=0; int contc=0; int contb=0;
int sumapuntaje=0;
int mayorpuntaje=0;
int menorcont=0; int i,j;
for (j=1; j<=5; j++){
clrscr();
printf(" Participante Numero: %d\n\n\n",j);
printf("Ingrese el nombre de la participante \n");
fflush(stdin);
gets(nombre);
printf("Ingrese puntaje obtenido en Inteligencia: \n");
scanf ("%d", &conti);
printf("Ingrese puntaje obtenido en Cultura General: \n");
scanf ("%d", &contc);
printf("Ingrese puntaje obtenido en Belleza:\n");
scanf ("%d", &contb);
sumapuntaje=conti + contc + contb;
//guardamos el nombre de la partic. con mayor puntaje y el puntaje.
if (sumapuntaje>mayorpuntaje){
for (i=0; i<25; i++ )
nombre_mayor[i]=nombre[i];
mayorpuntaje=sumapuntaje;
}//fin if
// sumamos cada puntaje de forma individual
inteligencia+=conti;
belleza+=contb;
cultura+=contc;
}//fin for
clrscr();
// buscamos el menor de los tres contadores
if((inteligencia<belleza)&&(inteligencia<cultura))
menorcont=inteligencia;
if((belleza<inteligencia)&&(belleza < cultura))
menorcont=belleza;
else
menorcont=cultura;
//Mostramos los resultados por pantalla
printf("Concursante con mayor puntaje general: ");
for (i=0; i<25; i++)
printf("%c",nombre_mayor[i]);
printf("\nPuntajes acumulados por todas las participantes: \n");
printf("Belleza: %d\n", belleza);
printf("Inteligencia: %d\n", inteligencia);
printf("Cultura General: %d\n",cultura);
printf("El menor pountaje general obtenido es: %d\n", menorcont);
getch();
}
------------------------- fin Codigo ----------------------------
Tengo que cargar nombre y comparar sin usar la libreria String ni sus funciones.
El programa corre bien, pero si ingreso un nombre largo con un puntaje (Concurso de belleza) y luego ingreso un nombre corto y un puntaje mas alto, al finalizar deberia mostrarme el nombre de la chica con el puntaje mas alto, pero me muestra el nombre y lo que quedo guardado de antes del nombre mas largo que se ingreso.
Ej:
Lucia lopez --- 70 puntos
ana ----120
muestra
ana a lopez --- 120
Gracias!
Permisos de publicación
- No puedes crear nuevos temas
- No puedes responder temas
- No puedes subir archivos adjuntos
- No puedes editar tus mensajes
-
Reglas del foro