How can I seperate data with typecasting in an array? : I want to add 2 different types in the same array of size 100x4.In the first column I want to add names of foods(with use of pointers) and in the second and third some numbers such as calories and hour of eating.(WITH TYPECASTING)

I've been trying for this many days but I cannot find any solution.Is there a way to fix this with typecasting?

        #include <stdio.h>
        int main(){
	char *table[100][4];
	int n=0;
	int j;
	for (j=0;j<4;j++){
		if (j==0){
			printf ("Add your food:\n");
			scanf("%s",&table[n][j]);
		}else if (j==1){
			
			printf ("Add calories:\n");
			(float) *table[n][j];
			scanf("%d",&table[n][j]);

		}else if (j==2){
			(float) *table[n][j];
			printf ("Add the time you ate:\n");
			scanf("%.2f",&table[n][j]);
		}else if (j==3){
			printf ("Kati\n");
		}
	}
	for (j=0;j<4;j++){
		if (j==0){
			printf ("food:%s",&table[n][j]);
		}else if (j==1){
						(float) *table[n][j];

			printf ("calories:%f",*table[n][j]);
		}else if (j==2){
						(float) *table[n][j];

			printf ("time you ate:%f",*table[n][j]);
		}else if (j==3){
			printf ("Kati\n");
		}
	}
}

