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

ayuda para leer la entrada de una cadena en C++

Estas en el tema de ayuda para leer la entrada de una cadena en C++ en el foro de C/C++ en Foros del Web. la verdad no soy muy bueno, nesecito leer la entrada de una cadena desde el teclado y asi llamar la funcion para imprimir la informacion ...
  #1 (permalink)  
Antiguo 13/02/2010, 12:35
 
Fecha de Ingreso: febrero-2010
Mensajes: 2
Antigüedad: 14 años, 2 meses
Puntos: 0
ayuda para leer la entrada de una cadena en C++

la verdad no soy muy bueno, nesecito leer la entrada de una cadena desde el teclado y asi llamar la funcion para imprimir la informacion de alumnos en pantalla
desde un fichero txt
utilizo dev-c y turbo C

esto es lo que tengo

#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
main(){

void alumno1();
void alumno2();

char nom[20];

printf("Buscar Alumno:");
scanf("%s",a);
/*aqui es donde ya no se ni como hacerle, por ejemplo si el usuario ingresa "daniel" llama al funcion alumno1 y muestre los datos desde el archivo txt o y ingresa "esteban" llama a la funcion alumno2 y muestra sus datos y si ingreso algun otro nombre me diga que no se allo o no esta registrado*/

return 0;
}

void alumno1(){

FILE *f;

int opc;
char *info;

f=fopen("Daniel","r");

while(feof(f)==0){
fgets(info,100,f);
printf("%s",info);
getch();
fclose(f);
}

void alumno2(){
FILE *f;

int opc;
char *info;

f=fopen("Esteban","r");

while(feof(f)==0){
fgets(info,100,f);
printf("%s",info);
getch();
fclose(f);
}
  #2 (permalink)  
Antiguo 15/02/2010, 18:46
Avatar de genuine_carlosV2  
Fecha de Ingreso: noviembre-2008
Ubicación: 127.0.0.1
Mensajes: 296
Antigüedad: 15 años, 5 meses
Puntos: 6
Respuesta: ayuda para leer la entrada de una cadena en C++

Buenas,

Empieza por aquí (te he formateado el código, arreglado algunas cosas y puesto algunas otras. Estudia un poco más sobre C y sobre el código que te he pasado y poco a poco ves probando de hacer cosas. Por ejemplo, no puedes crear un array de chars llamado 'nom' y luego pedir el texto en una variable 'a' que no existe en tu código):
Código C:
Ver original
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void mostrarAlumno( FILE *f ) {
  5.  
  6.     int opc;
  7.     char info[ 100 ];
  8.  
  9.  
  10.     while(feof(f)==0){
  11.         fscanf( f, "%s", info );       
  12.         printf("%s",info);
  13.     }
  14. }
  15.  
  16. int main(){
  17.     char nom[20];
  18.     FILE *f;
  19.     printf("Buscar Alumno:");
  20.    
  21.     scanf( "%s", nom );
  22.  
  23.     f=fopen( nom,"r");
  24.     if( f != NULL ) {
  25.         mostrarAlumno( f );
  26.         fclose(f);
  27.     } else {
  28.         printf( "El alumno no existe!\n" );
  29.     }
  30.  
  31.     return 0;
  32. }

En el código que te envío, la idea es que te pongan lo que te pongan, se intente abrir el archivo para lectura y, si el archivo no existe, entonces el alumno tampoco existe. Otra forma de hacerlo sería ir comparando lo que te introducen con la lista de nombre pero eso es más tedioso en C

Saludos y suerte
__________________
Carlos

Recoger datos es solo el primer paso hacia la sabiduría. Pero compartir información es el primer paso hacia la comunidad. - IBM
  #3 (permalink)  
Antiguo 15/02/2010, 21:19
 
Fecha de Ingreso: febrero-2010
Mensajes: 2
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: ayuda para leer la entrada de una cadena en C++

gracias brother tu idea es mejor que la mia

me falta mucho que aprender

Etiquetas: entrada, cadenas
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 05:00.