prueba asi:
Código PHP:
#include <stdio.h>
struct trabajador
{
char nombre[20];
char apellidos[40];
int edad;
char puesto[10];
};
void visualizar(struct trabajador *);
main()
{
struct trabajador fijo[20];
int i;
for(i=0;i<20;i++){
printf("Nombre: ");
scanf("%s",fijo[i].nombre);
printf("\nApellidos: ");
scanf("%s",fijo[i].apellidos);
printf("\nEdad: ");
scanf("%d",&fijo[i].edad);
printf("\nPuesto: ");
scanf("%s",fijo[i].puesto);
}
visualizar(&fijo);
}
void visualizar(struct trabajador *datos)
{
int i;
for(i=0;i<20;i++){
printf("Nombre: %s",datos[i]->nombre);
printf("\nApellidos: %s",datos[i]->apellidos);
printf("\nEdad: %d",datos[i]->edad);
printf("\nPuesto: %s",datos[i]->puesto);
}
}
eso solo te permite 20 empleados, si lo quieres variar mete una variable dentro de los for en lugar del 20, pero no deberás pasar de 20 usuarios (o de la cantidad que hayas declarado en la estructura).
Saludos