#define indicates for the macro,when in the program any variable has fix value in whole program then we use macro.
Syntax- #define variable_name value
EX:-
#include<stdio.h>
#define pi 3.14
int main()
{
int r;
printf("enter the radius of circle: ");
scanf("%d",&r);
printf("area of circle is=%f ",pi*r*r);
}
Now coming to your problem when we have the #define sc ; then sc is replaced with semicolon, u can actually use sc in the whole program in place of semicolon and it will work, pre-processor is executed prior to compilation so when compiler receives the program it has all sc replaced with semicolon.