In C, procedure is a function that returns nothing. You have to declare it as
void MyRoutine() //with or without parameter
{
...some statements...
return;
}
A function that returns nothing will return control to the caller once end of the function is reached (}), or if it encounter early return; statement. break will only exit from a loop statement, e.g.
void MyRoutine(void)
{
int i;
for(i=0; i<=100; i++){
if(i==50)
break;
...some statements...
} // End of loop
...some statements again...
} //End of function
When i reaches 50, control exits from the loop, the statements after the loop will be executed, and then control will be passed back to the caller. So break-ing will not return control to the caller unless it is placed before end of function -- which is no need if it is.
Caution: declaring a function as
MyRoutine(void);
doesn't imply that the function returns nothing, instead, the compiler assumes return type to be of type int. So you MUST declare the return type as void if that is what you meant.