if   ( Condition 1 )   Statment 1   else if   ( Condition 2 )   Statment 2   else   Statment 3 :

از این ساختار زمانی استفاده می شود که حالت های شروط مورد نظر بیش از یک حالت مختلف است ، که در صورت بر قرار بودن هر گروه از شرط های مورد نظر ، می خواهیم دستورات خاص آن شرط ها اجرا شوند .
در این ساختار ، شرط اول در دستور if ابتدا تعریف شده و هر یک از گروه شرط های دیگر به وسیله یک دستور else if تعیین می شود . در آخر نیز واژه کلیدی else و دستورات مربوط با آن قرار می گیرد ، که در صورت عدم بر قراری تمام گروه شرط های تعیین شده ، دستورات قسمت else اجرا می شوند .
در این ساختار چنانچه هر یک از شرط های یک دستور if یا else if درست باشند ، دستورات مربوط به آن اجرا شده و برنامه از کنترل و اجرای سایر شرط های دیگر خودداری می کند . چنانچه هیچ یک از گروه شرط های تعیین شده درست نباشند ، دستورات بخش else در پایان ساختار اجرا می شوند .

شکل کلی استفاده از این ساختار به صورت زیر است :

if   ( گروه شرط های شماره ۱ )
{
دستوراتی که در صورت بر قرار بودن گروه شرط های ۱ اجرا می شوند
}
else if   ( گروه شرط های شماره ۲ )
{
دستوراتی که در صورت بر قرار بودن گروه شرط های ۲ اجرا می شوند
}
else if   ( گروه شرط های شماره ۳ )
{
دستوراتی که در صورت بر قرار بودن گروه شرط های ۳ اجرا می شوند
}
.
.
.
else
{
دستوراتی که در صورت عدم بر قراری تمام گروه شرط های فوق اجرا می شوند
}

نکته ۱ : به تعداد مورد نیاز می توان در این ساختار به وسیله دستور else if شرط و دستورات جدید تعریف کرد .
نکته ۲ :استفاده از کروشه در قسمت دستورات شرط if ، فقط در زمانی که دستورات مورد نظر بیش از یک خط هستند ، ضروری است .
نکته ۳ : تعیین قسمت else در ساختار فوق اختیاری بوده و می تواند تعریف نشود .
نکته ۴ : در زمانی که تعداد حالت های شروط بسیار زیاد هستند ، بهتر است از ساختار Switch استفاده کرد .