Sabeis como puedo hacer una linea como esta en C?
system("programa -a param1 -b %s -c param3", intVar
); 
Deseas construir el comando que pasaras a la función "system" mientras se este ejecutando tu programa, ¿Es así?
Si ese es el caso puedes utilizar la función "sprintf" (prototipo en <stdio.h>), esta es casi idéntica a "printf" con la diferencia que la cadena no se envía a la salida estándar sino que se almacena en el array indicado.
Por ejemplo:
#include <stdio.h>
#include <stdlib.h>
 
#define LONG_LINEA  256
 
int main(void)
{
   char cmd[LONG_LINEA];
   int i;
 
   for (i = 0; i < 10; i++){
      sprintf(cmd
, "compilador -abc %d.c", i
);    }
 
   return EXIT_SUCCESS;
}
Y su salida es:
compilador -abc 0.c
compilador -abc 1.c
compilador -abc 2.c
compilador -abc 3.c
compilador -abc 4.c
compilador -abc 5.c
compilador -abc 6.c
compilador -abc 7.c
compilador -abc 8.c
compilador -abc 9.c
Un saludo