Tal como esta ahora si me funciona, ahora el funcionamiento interno es cosa tuya.
Echa un ojo y dime si ves algo mas.
//servicios.h
#ifndef CLASESERVICIO_H_INCLUDED
#define CLASESERVICIO_H_INCLUDED
#include <conio.h>
#include <dos.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
class service
{
private:
int cod_servicio[10];
int comision [10];
float costo [10];
char servicio[10][50];
public:
service (){}
~service (){}
void constante();
void mostrar();
void capturar();
void buscar();
void modificar();
};
void service::constante()
{
system("cls");
printf("\n\n\n");
strcpy(servicio [0],"Cable basico");
cod_servicio[0]=111;
costo[0]=150.00;
comision[0]=5;
strcpy(servicio [1],"Cable total");
cod_servicio [1]=112;
costo[1]=300.00;
comision[1]=7;
strcpy(servicio [2],"Cable total plus");
cod_servicio[2]=113;
costo[2]=550.00;
comision[2]=10;
strcpy(servicio [3],"Internet y cable");
cod_servicio [3]=114;
costo [3]=469.00;
comision[3]=12;
strcpy(servicio [4],"Internet y telefono");
cod_servicio [4]=115;
costo [4]=500.00;
comision[4]=12;
strcpy(servicio [5],"Cable, telefono e internet");
cod_servicio [5]=116;
costo [5]=635.00;
comision[5]=15;
}
void service::mostrar()
{
printf("\n\n\n");
int i,elem,c1,op2;
do {
system("cls");
printf("Escriba el codigo de servicio que quiere buscar\n\n");
scanf("%d",& elem);
for(i=0;i<=10;i++)
{
if (cod_servicio[i]==elem)
{
printf("\n\nNombre de servicio: %s\n", servicio[i]);
printf("Codigo de servicio: %d\n", cod_servicio[i]);
printf("Costo de servicio: %.2f\n\n", costo[i]);
printf("Comision de servicio: %i porciento\n\n", comision[i]);
i=10;
c1=0;
}
else
{
c1=1;
}
}
if (c1==1)
{
printf("No se encuetra el elemento!!!\n\n\n");
}
i=0;
printf("desea seguir consultando datos si=1,no=2\n");
scanf("%i",&op2);
}while(op2==1);
}
void service::capturar()
{
int c=6,d=6,e=6,f=6;
int ac=0,op1;
system("cls");
printf("\n");
do
{
printf("\n\nIngrese nuevo servicio\n");
do {
gets(servicio[c]);
}while(strcmp(servicio[c]," ")==0 || strcmp(servicio[c],"")==0);
ac=cod_servicio[d-1]; // primer código es 5
cod_servicio[d]=ac+1; //
printf("Ingrese costo de servicio\n");
scanf("%f",& costo[e]);
printf("Ingrese comision de servicio\n");
scanf("%i",& comision[f]);
printf("desea seguir ingresando datos si=1,no=2\n");
scanf("%i",& op1);
c++;
d++;
e++;
f++;
}while(op1==1);
}
void service::buscar()
{
printf("\n\n\n");
int i,elem,c1,op2;
do{
system("cls");
printf("Escriba el codigo de servicio que quiere mostrar\n\n");
scanf("%d",& elem);
for(i=0;i<=10;i++)
{
if (cod_servicio[i]==elem)//
{
printf("\n\nNombre de servicio: %s\n", servicio[i]);
printf("Codigo de servicio: %d\n", cod_servicio[i]);
i=10;
c1=0;
}
else
{
c1=1;
}
}
if(c1==1)
{
printf("No se encuetra el elemento que busca!!!\n\n\n");
}
i=0;
printf("desea seguir consultando datos si=1,no=2\n");
scanf("%d",& op2);
}while(op2==1);
}
void service::modificar()
{
printf("\n\n\n");
int i,elem,c1,op2,opz;
do{
system("cls");
printf("Escriba el codigo de servicio que quiere modificar\n\n");
scanf("%d",& elem);
for(i=0;i<=10;i++)
{
if (cod_servicio[i]==elem)
{
do {
printf("\n\n¿Que datos quiere modificar\n");
printf("\n\n1-Nombre de servicio\n2-Costo de servicio\n3-Comision de servicio\n");
scanf("%i",&opz);
}while(opz<1 || opz >3);
switch (opz)
{
case 1:
system ("cls");
printf("\n\nIngrese nuevo nombre de servicio\n");
do{
gets(servicio[i]);
}while(strcmp(servicio[i]," ")==0 || strcmp(servicio[i],"")==0);
break;
case 2:
system ("cls");
printf("Ingrese costo de servicio\n");
scanf("%f",& costo[i]);
break;
case 3:
system ("cls");
printf("Ingrese comision de servicio\n");
scanf("%i",& comision[i]);
break;
}
c1=0;
i=10;
system("cls");
}
else
{
c1=1;
}
}
if (c1==1)
{
printf("No se encuetra el elemento que quiere modificar!!!\n\n\n");
}
i=0;
do {
printf("desea seguir modificando datos si=1,no=2\n");
scanf("%d",& op2);
}while(op2<1 || op2>2);
}while (op2==1);
}
#endif // CLASESERVICIO_H_INCLUDED
//main.cpp
#include <iostream>
using namespace std;
#include "servicios.h"
int main ()
{
service serv1;
//serv1.capturar();
//serv1.mostrar();
//serv1.buscar();
//serv1.constante();
//serv1.modificar();
return 0;
}