Kontrolna struktura u računarstvu odnosi se red u koji se pojedinačne izjave, naredbe, skup naredbi (eng. instruction set)[1] ili pozivi na funkcije u nekom imperativnom ili deklarativnom programu se provode ili se ocjenjuju. Postoje nekoliko vrsta kontrolnih struktura, i broj i složenost ovisi o svakom pojedinačnom programskom jeziku. Kontrolne strukture se mogu podijeliti po njihovom utjecaju na tok programa na sljedeći način:
izvršavanje skupa naredba samo ako je zadovoljen uvjet (npr. uvjetni skok)
izvršavanje skupa naredba nula ili više puta, dok neki uvjet nije zadovoljen (npr. programska petlja )
izvršavanje skupa distantnih naredba koje se nalaze u nekom drugom dijelu programa, i gdje nakon završetka vraća kontrolu naredbu poslije poziva iz glavnog dijela programa
zaustavljanje programa - onemogućavanje daljnjeg izvršavanje naredbi (bezuvjetno zaustavljanje)