Bien,
En primer lugar necesitamos un arreglo para el número de meses por empleado, para lo cual cambia el:
Por:
Y la lectura de datos, cambia:
Por:
Y por último cambia:
Por:
Ahora, el primer punto se puede resolver del siguiente modo:
int idb;
/* Lectura de id */
printf("Ingrese id: ");
scanf("%d", &idb);
/* Posición de id buscado -> i */
for(i=0; i<cd; i++)
if(id[i] == idb)
{
break;
}
/* Encontrado */
if(i < cd)
{
/* Asume primero mes como mejor salario */
int pos = 0;
/* Busca posicion del mejor salario */
for(j=1; j<cm[i]; j++)
if(sal[i][j] > sal[i][pos])
pos = j;
/* Muestra mejor salario */
printf("El mejor salario fue en el mes %d y fue de %f", pos, sal[i][pos]);
}