Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/09/2012, 00:52
Fw190
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 13 años, 11 meses
Puntos: 73
Respuesta: Consulta en código...

float comicio[20]; int i=0,n;

Esta línea declara un arreglo comicio con 20 elementos de tipo float, una variable i de tipo entero con un valor inicial de cero, y una variable n de tipo entero.

comicio[i++]=regm.tot_vent*0.005;

Esta línea calcula el valor del elemento i del arreglo comicio, y acto seguido incrementa en 1 ese índice.

El operador ++ es el operador incremento, y funciona de dos maneras:

La primera (la que se ha utilizado en tu programa) se llama postincremento, así, i++ puede traducirse como "utiliza la variable i y después increméntala en 1 unidad".

La segunda se llama preincremento, ++i, que puede traducirse como "incrementa en 1 unidad la variable i y después utilízala".

Así, por ejemplo, si i vale 4, tendríamos:

x = i++; x valdrá 4 e incremento i, luego i valdrá 5
x = ++i; incremento i, que valdrá 5, y luego x valdrá 5

for(n=0;n<i;n++) printf("%d\t$%5.2f\n",n+1,comicio[n]); ...

Bucle for: Condición inicial (n=0), condición que debe cumplirse (n<i), variación de la variable que controla el bucle (n++). Comenzando por n=0, y mientras n sea menor que i, ejecuta la instrucción (o bloque de instrucciones) que sigue al for. Este bucle se ejecutará hasta que n sea igual a i-1. Una vez que llegue aquí y se ejecute el bucle, se incrementa el valor de n, que pasa a valer i, la condición deja de cumplirse y finaliza el bucle.