7.3.. Napisati program za upis ocjena i ispis uspjeha.

Opis rješenja: Opseg /RANGE/ u SWITCH/CASE neredbi nije satatavni dio standradna C/C** nego njegovo proširenje (GNU C kompajlera).
Opseg vrijednosti u nizu se navodi kao dio jedne labele po santaksi:
case low ... high // sa obaveznim razmakom između vrijednosti i ... ! inače kompajler javlja grešku.
// Ispiravno - case 1 ... 5:
// Pogrešno - case 1...5:

Listing programa:

// 07311003
#include <stdio.h>

int main() {
    int bb;
    printf("Uspjeh (0 - 100): ");
    scanf("%i",&bb);

    switch (bb) {
    case 0 ... 60:
        printf("Nedovoljan\n");
        break;
    case 61 ... 70:
        printf("Dovoljan\n");
        break;
    case 71 ... 80:
        printf("Dobar\n");
        break;
    case 81 ... 90:
        printf("Vrlodobar\n");
        break;
    case 91 ... 100:
        printf("Odlican\n");
        break;
    default:
        printf("Greska");
    }
    return 0;
}


II varijanta sa if-else
// 07311003
#include <stdio.h>
#include <stdlib.h>

int main() {
   int bb;
	printf("Uspjeh\n");
	scanf("%i",&bb);

	if ((bb>=0)&&(bb<=60)) {
	    printf("Nedovoljan\n");
	}

	else if ((bb>=61)&&(bb<=70)) {
	    printf("Dovoljan\n");
	}

	else if ((bb>=71)&&(bb<=80)) {
	    printf("Dobar\n");
	}

	else if ((bb>=81)&&(bb<=90)) {
	    printf("Vrlodobar\n");
	}

	else if ((bb>=91) && (bb<=100)) {
	    printf("Odlican\n");
	}
    else {
        printf("Nevalidan unos\n");
    }

	return 0;
}
Uspjeh (0 - 100): 6
Nedovoljan

II izvođenje
Uspjeh (0 - 100): 63
Dovoljan

Ispis na ekranu:

Index