Du måste ju initiera din datastruktur innan du gör något med den. Om du bara deklarerar den bara så där så kommer det vara skräp i strukturen, precis som du är inne på.
Något typ så här (bara skrivet lite snabbt och inte testat):
void nollstall_schema(void) {
int i, j;
for (i = 0; i < 4; i++) {
shema[i].till = 0;
shema[i].sh = 0;
shema[i].smin = 0;
shema[i].kor = 0;
shema[i].sdag = 0;
for (j = 0; j < 7; j++) {
shema[i].sdag[j] = 0;
}
}
}
Efter du kört den funktionen så är alla dina data på noll.