Az utasításokat ;-vel választhatjuk el egymástól, ez jelöli a szekvenciát. Minden olyan helyre, ahová egy utasítás kerülhet lehetőségünk van szekvencia írására, {} jelek közé zárva a pontosvesszővel elválasztott utasításokat.
A kétirányú elágazás formája a következő : if (kif) ut1 [else ut2]; Ha a kif kifejezés értéke nem 0, akkor az igaz ág, azaz ut1 utasítása lesz végrehajtva, ha az értéke 0, akkor a hamis ág, azaz ut2. Az else ág elhagyható. pl. : if (a > b) x = a else x = b;
Több irányba elágazni a switch utasítás használatával lehet. A szerkezet működése teljesen megegyezik a C-nél megszokottakkal, azaz
A B nyelvben csak egyféle ciklusutasítás szerepel, ez pedig az elöltesztelő while. Megadási formája szintén a megszokott : while (kif) ut;. Az ut utasítás mindaddig végrehajtódik, amíg a kif kifejezés értéke nem 0. Ha a kif kifejezés értéke 0, akkor a vezérlés a következő utasításra kerül.
A B nyelv rendszerközeli programok készítéséhez készült, így a programok írása során a goto és break ugró utasítások használata elfogadottnak számít bizonyos esetekben. Ilyen eset lehet például a hátultesztelő ciklus szimulálása. Ez a következőképpen történik :