>printf("Please insert integer:\n");
>scanf("%f", &num);
You ask for an int, but scanf() for a float. Make up your mind which one!
>if(opr=='+')
at this point, opr has not been assigned a value, so you cannot test it and guarantee it the correct response.
When you layout your code correctly, you can see a logic problem here:
Code:
if(counter > 0)
{
if(opr=='+')
ans += num;
if(opr=='-')
ans -= num;
if(opr=='*')
ans *=num;
if(opr=='/')
ans /= num;
}
else scanf("%[+-*/=]", &opr);
counter is always greater than 0, therefore you won't be scanf()'ing for opr.
There maybe some more, but it'd be best if you sort the logic out first....