muchas gracias juan 
 
ya he podido , le he hecho unas modificaciones  
 Código PHP:
     
$productos=array(array("Cod"=>"A",
                       "Descrip"=>"Action",
                       "Precio"=>100),
                 array("Cod"=>"P",
                       "Descrip"=>"Photo",
                       "Precio"=>10),
                 array("Cod"=>"F",
                       "Descrip"=>"Flash",
                       "Precio"=>40)
                 );
 
 
 
//--------------------------------------------------------
function visor($productos){
echo "<table border='1'>";
echo "<tr><td>COD</td><td>DESCRIP</td><td>PRECIO</td></tr>";
foreach($productos as $producto){
    echo "<tr>";
    foreach($producto as $indice=>$valor){
        echo "<td>$valor</td>";
    }
    echo "</tr>";
}
echo "</table>";
}
 
 
//--------------------------------------------------------
echo "SIN ORDENAR<br />";
visor($productos);
//--------------------------------------------------------
 
 
//--------------------------------------------------------
echo "ORDENAR POR [DESCRIP](ASC)<br />";
function descAsc($a,$b){
    return($a['Descrip'] > $b['Descrip']);
}
uasort($productos, 'descAsc');
visor($productos);
//--------------------------------------------------------
 
//--------------------------------------------------------
echo "ORDENAR POR [DESCRIP](DESC)<br />";
function descDesc($a,$b){
    return($a['Descrip'] < $b['Descrip']);
}
uasort($productos, 'descDesc');
visor($productos);
//--------------------------------------------------------
 
//--------------------------------------------------------
echo "ORDENAR POR [PRECIO](ASC)<br />";
function precAsc($a,$b){
    return($a['Precio'] > $b['Precio']);
}
uasort($productos, 'precAsc');
visor($productos);
//--------------------------------------------------------
 
//--------------------------------------------------------
echo "ORDENAR POR [PRECIO](DESC)<br />";
function precDesc($a,$b){
    return($a['Precio'] < $b['Precio']);
}
uasort($productos, 'precDesc');
visor($productos);
//-------------------------------------------------------- 
    
  
lo que no se porque no funciona la funcion reset despues de recorrer el array asociativo reset()  
 Código PHP:
    for ($fila=0;$fila<3;$fila++){
          while(list ($key, $value)=each($productos[$fila]))
          {
           echo"|$value";
           }
      echo "|<br>";
     }
 
 
reset($productos); // volver a posicion [0][0]
 
//no vuelve a recorrer el array
for ($fila=0;$fila<3;$fila++){
          while(list ($key, $value)=each($productos[$fila]))
          {
           echo"|$value";
           }
      echo "|<br>";
     }