Paso de arreglos y de elementos de un arreglo a funciones

#include <stdio.h>
#define TAMANIO 5
 
/* prototipos de las funciones */
void modificaArreglo( int b[], int tamanio ); 
void modificaElemento( int e );
 
/* la función main comienza la ejecución del programa */
int main()
{
   int a[ TAMANIO ] = { 0, 1, 2, 3, 4 }; /* inicializa a */
   int i; /* contador */
 
   printf( "Efectos de pasar arreglos completos por referencia:nnThe "
          "los valores del arreglo original son:n" );
 
   /* muestra el arreglo original */
   for ( i = 0; i < TAMANIO; i++ ) { 
      printf( "%3d", a[ i ] );
   } /* fin de for */
 
   printf( "n" );
 
   /* pasa el arreglo a modificaArreglo por referencia */
   modificaArreglo( a, TAMANIO );  
 
   printf( "Los valores del arreglo modificado son:n" );
 
   /* muestra el arreglo modificado */
   for ( i = 0; i < TAMANIO; i++ ) {
      printf( "%3d", a[ i ] );
   } /* fin de for */
 
   /* muestra el valor de a[ 3 ] */
   printf( "nnnEfectos de pasar un elemento del arreglo "
           "por valor:nnEl valor de a[3] es %dn", a[ 3 ] );
 
   modificaElemento( a[ 3 ] ); /* pasa el elemento a[ 3 ] del arreglo por valor */
 
   /* muestra el valor a[ 3 ] */
   printf( "El valor de a[ 3 ] es %dn", a[ 3 ] );
 
   return 0; /* indica terminación exitosa */
 
} /* fin de main */
 
/* en la función modificaArreglo, "b" apunta al arreglo original "a" 
   e memoria */ 
void modificaArreglo( int b[], int tamanio )
{
   int j; /* contador */
 
   /* multiplica cada elemento del arreglo por 2 */
   for ( j = 0; j < tamanio; j++ ) {
      b[ j ] *= 2;
   } /* fin de for */
 
} /* fin de la función modificaArreglo */
 
/* en la función modificaElemento, "e" es una copia local del elemento a[ 3 ]
   del arreglo se pasó desde main */
void modificaElemento( int e )
{
   /* multiplica el parámetro por 2 */
   printf( "El valor en modificaElemento es %dn", e *= 2 );
} /* fin de la función modificaElemento */

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)