C/Visual C - Duda guardar e imprimir en archivo txt

   
Vista:

Duda guardar e imprimir en archivo txt

Publicado por Brian Fabián (1 intervención) el 19/11/2012 01:15:47
Bueno estoy haciendo un programa para la universidad que me guarde los datos de un grupo de alumnas y me los muestre con lo de guardar al parecer no hay problema pero al momento de mostrar se cicla y aparece el último nombre que agregé . Aquí el código el error es en la función grupo me parece, lo de búsqueda aún no lo realizo lo que quiero resolver por ahora es que me muestre los nombres que se insertaron muchas gracias:
#include <stdio.h>
#include <conio.h>
#include <dos.h>
#include <stdlib.h>
#include <iostream.h>
int x,x1,i;
void insertar();
void busqueda();
void grupo();
char grup[30];
int n=1;
FILE *doc;
main(){
clrscr();
gotoxy(15,3);cout<<"****ESCUELA PRIMARIA CARMEN MARTIN DE RAMIREZ****";
cout<<"\n1.-Insertar alumnos\n2.-Busqueda por nombre\n3.-Mostrar grupo\n4.-Salir";
cin>>x;
switch(x){
case 1: insertar();
break;
case 2: busqueda();
break;
case 3: grupo();
break;
case 4: cout<<"Usted esta saliendo del programa";
break;
default:cout<<"opcion incorrecta seleccione una opcion de la lista";
main();
break;
}
getch();
return 0;
}
void insertar(){
clrscr();
doc=fopen("alumnas.txt","a+");
cout<<"insertar alumnas\n";
int op;

do{
cout<<"Alumna"<<n<<" \n";
cin>>grup;
fprintf(doc,"%s\n",grup);
n++;
cout<<"desea ingresar otra alumna?:1/2";
cin>>op; }
while(op==1);
fclose(doc);
cout<<"un momento por favor";
delay(2000);
main();
}
void grupo(){
char nombre[30];
int ns=1,ops=0,n=1;
doc =fopen("alumnas.txt","r");
clrscr();
if(doc !=NULL){
do{
fscanf(doc,"%s",nombre);
cout<<nombre<<"\n";
ns++;
if(ns==n)
ops=1;
}while (ops==0);
}
else{
cout<<"No se puede abrir";
}
fclose(doc);
}
void busqueda(){
cout<<"aqui vas a buscar";
delay(2000);
main();
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder