Una manera fácil de hacerlo es simplemente copiar y pegar dentro de las funciones(o módulos) que defines y pasar los parámetros por referencia(punteros):
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#include <dos.h>
#include "windows.h"
void jabon (int *a, float *total, int n, float (*tabla)[2], int *seleccion);
void afeitadora (int *a, float *total, int n, float (*tabla)[2], int *seleccion);
void shampoo (int *a, float *total, int n, float (*tabla)[2], int *seleccion);
void acondicionador(int *a, float *total, int n, float (*tabla)[2], int *seleccion);
void pasta (int *a, float *total, int n, float (*tabla)[2], int *seleccion);
int main (void){
float tabla [6][2] = {{1,5.00}, {2,3.50}, {3,7.45}, {4,8.32}, {5,4.50}, {6, 0}};
int a , n, seleccion;
float total;
do {
puts("\t\t\t*****Menu*****\n"); printf("1. Jabon..............(c/u) %.2f Pesos" ,tabla
[0][1]); printf("\n2. Afeitadora.........(c/u) %.2f Pesos", tabla
[1][1]); printf("\n3. Shampoo............(c/u) %.2f Pesos", tabla
[2][1]); printf("\n4. Acondicionador.....(c/u) %.2f Pesos", tabla
[3][1]); printf("\n5. Pasta Dental.......(c/u) %.2f Pesos", tabla
[4][1]); printf("\n6. Salir Del Sistema",tabla
[5][1]); printf("\n \n Ingrese el numero del producto que desea adquirir: ");
switch(n)
{
case 1:
jabon(&a, &total, n, tabla, &seleccion);
break;
case 2:
afeitadora(&a, &total, n, tabla, &seleccion);
break;
case 3:
shampoo(&a, &total, n, tabla, &seleccion);
break;
case 4:
acondicionador(&a, &total, n, tabla, &seleccion);
break;
case 5:
pasta(&a, &total, n, tabla, &seleccion);
break;
case 6:
printf("\n***Gracias Por Usar Nuestros Servicios***\n"); Sleep(800);
break;
default:
if(n<1 || n>6)
{
puts("\n\n ***Opcion Invalida***\n\n"); Sleep(500);
}
break;
}
} while(seleccion!=2);
printf("\nTotal a pagar es: %.3f Pesos",total
);
}
void jabon (int *a, float *total, int n, float (*tabla)[2], int *seleccion){
printf("\n Cuantos Jabones desea adquirir? ");
*total= tabla[n - 1][1] * (*a) + (*total);
printf("\n Desea adquirir otro producto?"); }
void afeitadora (int *a, float *total, int n, float (*tabla)[2], int *seleccion){
printf("\n Cuantas Afeitadoras desea adquirir? ");
*total= tabla[n - 1][1] * (*a) + (*total);
printf("\n Desea adquirir otro producto?"); }
void shampoo (int *a, float *total, int n, float (*tabla)[2], int *seleccion){
printf("\n Cuantos Shampoos desea adquirir? ");
*total= tabla[n - 1][1] * (*a) + (*total);
printf("\n Desea adquirir otro producto?"); }
void acondicionador (int *a, float *total, int n, float (*tabla)[2], int *seleccion){
printf("\n Cuantos Acondicionadores desea adquirir? ");
*total= tabla[n - 1][1] * (*a) + (*total);
printf("\n Desea adquirir otro producto?"); }
void pasta (int *a, float *total, int n, float (*tabla)[2], int *seleccion){
printf("\n Cuantas Pasta Dental desea aquirir? ");
*total= tabla[n - 1][1] * (*a) + (*total);
printf("\n Desea adquirir otro producto?"); }
De verdad que es muy fácil si sabes como.
Por cierto, ¿el código lo ha hecho tu profesora? Hay un error el la linea esta "total= tabla[n - 1][1] * a;"
Si quieres comprar jabones después de comprar lo que sea sólo pagaras los jabones. Lo correcto sería "total= tabla[n - 1][1] * a+ total;" o "total+= tabla[n - 1][1] * a;"