Error en c++

Iniciado por wicho.core, 11 Diciembre 2014, 06:57 AM

0 Miembros y 1 Visitante están viendo este tema.

wicho.core

Por qué cuando compilo me marca: invalid types int int' for array subscript.
Este es el código.

//Rifa de premios
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>

int main ()
{
    int empleado[3];
    int vector[50];
    int i, n;
    int valor, cont, total, sel;
   
    scanf ("%d", &n);
   
    for (i = 0; i <= n-1; i++)
    vector = rand ()% 101;
   
    for (cont = 1; cont <= 2; cont++)
    {
        printf ("El empleado %d selecciona: \n", i);
        total [cont] = 0;
       
        for (sel = 1; sel <= 2; sel++)
        {
        printf ("Escoge un numero \n");
        scanf ("%d", & valor);
        total [cont] = total [cont] + vector [valor];
        }
    }
getch();   
return 0;   
}

eferion

Código (cpp) [Seleccionar]

int /* ... */ total, sel;
   
// ...    

for (cont = 1; cont <= 2; cont++)
{
 printf ("El empleado %d selecciona: \n", i);
 total [cont] = 0;


"total" lo estás declarando como un entero, no como un array. El uso que haces de la variable en la última línea del código que te he rescatado no es válido (y no es el único).

Un saludo

zShackra

Por favor, usen las etiquetas GeSHi para el código que están publicando.

A demás de lo que eferion comenta, estás llenando el arreglo "vector" con números aleatorios de forma errónea:

for (i = 0; i <= n-1; i++)
    vector = rand ()% 101;


Cuando se supone que debes elegir un índice para asignar cada valor.

P.D.: Lee este tema.