Dev - C++ - Ayuda URGENTE solo para compilar

 
Vista:
sin imagen de perfil

Ayuda URGENTE solo para compilar

Publicado por Johnatan (2 intervenciones) el 24/11/2015 09:05:08
ignoren todos los comentarios

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
#include<iostream>
using namespace std;
//Integrantes; Rodriguez Hernandez Johnatan Carlos, Martinez Venegas Jose Alfredo
struct alumno
{
	char rm_ap_pat[40], rm_ap_mat[40], rm_nombre[40], rm_direccion[40], rm_carrera[40]; //Pónganle tamaño a las cadenas y ponganle sus iniciales
	int rm_edad, rm_semestre;
	float rm_promedio;
};
 
void llena(alumno a[3]);
void muestra(alumno a[3]);
void busca(alumno a[3]);
 
//Hagan el main. Si no son capaces de hacer eso, ni como ayudarles.
 
void llena(alumno a[3])
{
	int i;
	for(i=0;i<3;i++)
	{
		if(i==0)
		system("cls");
		fflush(stdin);
		cout<<"Nombre del alumno:\t";
		gets(a[i].rm_nombre);
		cout<<"\nApellido paterno:\t";
	    gets(a[i].rm_ap_pat);
		cout<<"\nApellido materno:\t";
		gets(a[i].rm_ap_mat);
		cout<<"\nDireccion:\t";
		gets(a[i].rm_direccion);
		cout<<"\nEdad:\t";
		cin>>a[i].rm_edad;
		fflush(stdin);
		cout<<"\nCarrera:\t";
		gets(a[i].rm_carrera);
		cout<<"\nSemestre:\t";
		cin>>a[i].rm_semestre;
		cout<<"\nPromedio:\t";
		cin>>a[i].rm_promedio;
		cout<<"\nDatos del alumno completados";
		getcls();
	}
	cout<<"Tu arreglo ha sido llenado";
}
void muestra(alumno a[3])
{
	int i;
	for(i=inicio;i<fin;i++)
	{
		cout<<"\n\n"<<a[i].rm_nombre<<" "<<a[i].rm_ap_pat<<" "<<a[i].rm_ap_mat<<" con edad de "<<a[i].rm_edad<<", vive en "<<a[i].rm_direccion<<". Esta estudiando el semestre numero "<<a[i].rm_semestre<<" de "<<a[i].rm_carrera<<" y lleva un promedio de "<<a[i].rm_promedio;
	}
}
void busca(alumno a[3])
	int i,x;
	char b[40],o;
	do
	{
	    x=0;
	    cout<<"\nElija la forma de busqueda:\na)Por apellido paterno\nb)Por apellido materno\nc)Por nombre\tOpcion: ";
	    cin>>o;
	    switch(o)
	    {
		    case 'c':
			    {
				    fflush(stdin);
					cout<<"\nIngresa el nombre:\t";
				    gets(b);
				    for(i=0;i<3;i++)
				    {
					    f=i+1;
						if(strcmp(b,a[i].rm_nombre)==0)
					    {
					    	x=1;
							cout<<"\n\n"<<a[i].rm_nombre<<" "<<a[i].rm_ap_pat<<" "<<a[i].rm_ap_mat<<" con edad de "<<a[i].rm_edad<<", vive en "<<a[i].rm_direccion<<". Esta estudiando el semestre numero "<<a[i].rm_semestre<<" de "<<a[i].rm_carrera<<" y lleva un promedio de "<<a[i].rm_promedio;
					    }
				    }
				    if(x==0)
					cout<<"\nNo se encontro ningén alumno con ese nombre";
				    break;
			    }
			case 'a':
				{
					fflush(stdin);
					cout<<"\nIngresa el apellido paterno:\t";
                    gets(b);
					for(i=0;i<3;i++)
					{
						f=i+1;
						if(strcmp(b,a[i].rm_ap_pat)==0)
						{
							x=1;
							cout<<"\n\n"<<a[i].rm_nombre<<" "<<a[i].rm_ap_pat<<" "<<a[i].rm_ap_mat<<" con edad de "<<a[i].rm_edad<<", vive en "<<a[i].rm_direccion<<". Esta estudiando el semestre numero "<<a[i].rm_semestre<<" de "<<a[i].rm_carrera<<" y lleva un promedio de "<<a[i].rm_promedio;
						}
					}
					if(x==0)
					cout<<"\nNo se encontro ningén alumno con ese apellido paterno";
					break;
				}
			case 'b':
				{
					fflush(stdin);
					cout<<"\nIngresa el apellido  materno:\t";
					gets(b);
					for(i=0;i<3;i++)
					{
						f=i+1;
						if(strcmp(b,a[i].rm_ap_mat)==0)
						{
							x=1;
						    cout<<"\n\n"<<a[i].rm_nombre<<" "<<a[i].rm_ap_pat<<" "<<a[i].rm_ap_mat<<" con edad de "<<a[i].rm_edad<<", vive en "<<a[i].rm_direccion<<". Esta estudiando el semestre numero "<<a[i].rm_semestre<<" de "<<a[i].rm_carrera<<" y lleva un promedio de "<<a[i].rm_promedio;
						}
					}
					if(x==0)
					cout<<"\nNo se encontro ningun alumno con ese apellido materno";
					break;
				}
			default:
				{
					cout<"\nOpcion no valida";
					getcls();
					break;
				}
	    }
	}while((o!='a')&&(o!='b')&&(o!='c'));
}
int main ()
{
    int menu,alumno a[3],x,b[40],a,b,c;
	char menuc,b[40],o;
 
	do{
 
	cout<<"\t\tMenu Principal\t\t\n\n\n"<<endl;
	cout<<"1)Llenar el arreglo"<<endl;
	cout<<"2)Mostrar el arreglo"<<endl;
	cout<<"3)Buscar un alumno por"<<endl;
	cout<<"4)Salir"<<endl;
	cin>>menu;
	cin.ignore();
	switch(menu){
		case 1:{
             void llena(alumno a[3])
             break;
             }
        case 2:{
             void muestra(alumno a[3])
             break;
             }
        case 3:{
             void busca(alumno a[3])
             break;
             }
        case 4:{
             cout<<"Bye!";
			x=0;
			break;
		}
		default:{
			cout<<"Opcion no valida!"<<endl;
			cout<<"Introduzca una nueva opcion";
			system("pause");
			system("cls");
			x=0;
		}
	}
}while(x);
	return 0;
}
12305620_1177184168977811_1249949678_n
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
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda URGENTE solo para compilar

Publicado por agustin (522 intervenciones) el 24/11/2015 09:43:44
Varios fallos aquí:
1
2
3
4
5
6
7
8
9
10
11
12
13
switch(menu){
case 1:{
void llena(alumno a[3])
break;
}
case 2:{
void muestra(alumno a[3])
break;
}
case 3:{
void busca(alumno a[3])
break;
}

En vez de llamar a unas funciones lo que haces es declarar prototipos de funciones y además no las terminas con ;. Los corchetes no hacen falta ya que los limitadores son case y break.

1
2
3
4
5
6
7
8
9
10
11
12
switch(menu){
case 1:
   llena(alumno a);
break;
 
case 2:
   muestra(alumno a);
break;
 
case 3:{
   busca(alumno a);
break;
No puedo probarlo pero haz esos cambios y di los errores que te da para saber que buscar.
1
2
3
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
Esas tres librerías sobran ya que estas usando c++ y para lo que haces tienes suficiente con iostream. Por ejemplo fflush no lo necesitas ya que puedes usar cin.ignore, gets no lo necesitas ya que puedes usar getline, ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar