Es que, como ya te dije, para ayudarte se necesita saber con que conocimientos cuentas ya que se puede plantear de diferentes formas.
1-archivos secuenciales.
2-listas enlazadas.
3-arrais estáticos.
4-arrais dinámicos.
¿que librerías se pueden utilizar para ello?
¿Tiene que usarse funciones para separar todo?
...
Todo depende de lo que hayas visto en clase.
Yo usaría un archivo secuencial en el cual guardaría el stock y otro en el que guardaría las ventas.
Si se adquieren más stock de uno de ellos se crea un archivo de stock temporal, se abre el de stock original al y se va buscando el modelo que se ha comprado. Todos los que no sean ese modelo se copian tal cual en el temporal y si es el modelo le sumo la cantidad y lo añado al temporal, cierro ambos archivos, elimino el de stock, y renombro el temporal.
Para las ventas se hace lo mismo con el stock pero restando y si el resultado de la resta es 0 no se copia al temporal y así se elimina. Si el resultado es menor que 0 no se modifica el archivo de stock y se elimina el temporal avisando de lo que pasó.
Al mismo tiempo se añade la venta que se realice en un archivo secuencial de ventas. Yo para la fecha usaría lo que me ofrece la libreria time.h, se obtiene la fecha actual y se pasa a string.
Para todo se usan estructuras.
Para las ventas y compras: