#include <stdio.h> #include <conio.h> /* FUNKTIOIDEN PROTOTYYPIT *********/ int valikko (void); void toteuta(int valinta); void tervehdys(void); void summa(void); void ympyran_ala(void); void sarjan_summa(void); /* PÄÄOHJELMA ***********************/ void main (void) { int valinta; do{ valinta = valikko(); toteuta (valinta); }while (valinta != 5); } /* FUNKTIOIDEN MÄÄRITTELYT**********/ int valikko (void) { int val, ei_valintaa; do { ei_valintaa=0; clrscr(); printf ("\n ---- MENU ---- \n\n"); printf (" Valitse yksi vaihtoehdoista\n\n"); printf (" (1) Tervehdys\n"); printf (" (2) Kahden luvun summa\n"); printf (" (3) Ympyrän ala\n"); printf (" (4) Sarjan summa\n"); printf (" (5) Lopetus\n"); printf ("\n\n"); printf (" Anna valintasi (numero) : "); val = getche()-'0'; /* Merkki muutetaan kokonaisluvuksi */ if (val < 0 || val > 5) { printf("\n Ei kelpaa."); printf (" Valinnan oltava väliltä 1-5\n"); printf(" Paina jotain näppäintä"); getch(); ei_valintaa = 1; } }while (ei_valintaa); return val; } void toteuta(int valinta) { switch (valinta) { case 1: tervehdys(); break; case 2: summa(); break; case 3: ympyran_ala(); break; case 4: sarjan_summa(); break; case 5: clrscr(); printf ("Kiitos käynnistä"); } printf ("\n\nPaina jotain näppäintä"); getch(); } void tervehdys(void) { clrscr(); printf ("Hei C-guru"); } void summa(void) { int luku1, luku2; clrscr(); printf ("Anna kaksi kokonaislukua :"); scanf ("%d %d",&luku1,&luku2); printf ("Lukujen summa on %d",luku1+luku2); } void ympyran_ala(void) { clrscr(); printf ("Tätä toimintoa ei ole vielä toteutettu"); } void sarjan_summa(void) { clrscr(); printf ("Tätä toimintoa ei ole vielä toteutettu"); }
Pääohjelmasta voidaan todeta, että siinä sovelletaan periaatetta, jota jokainen
tietokoneohjelma käytännössä noudattaa: "Ohjelma toteuttaa käyttäjän sille
antamia tehtäviä, kunnes käyttäjä kyllästyy ohjelman käyttöön." Tämä
jatkuvan palvelun periaate näkyy silmukkarakenteena:
do{ valinta = valikko(); toteuta (valinta); }while (valinta != 5);
Kun mietitään esim. Windows-järjestelmän toimintaa, voidaan todeta, että siinäkin
toteutetaan käyttäjän antamia tehtäviä, kunnes käyttäjä lopettaa ohjelman
toiminnan. Hyvin monen palveluja tarjoavan sovelluksen pääohjelma voidaankin kirjoittaa
yllä olevaan muotoon.