Beginner problem help

This is a discussion on Beginner problem help within the C Programming forums, part of the General Programming Boards category; Hello everybody, pleased to be here. I'm relatively new to programming, just took up learning C a few weeks ago ...

1. Beginner problem help

Hello everybody, pleased to be here. I'm relatively new to programming, just took up learning C a few weeks ago (and not that actively either).
I've run into an assignment that my mentor said "could" be appropriate, but that there's a simpler solution (which she did not say of course -_-), but when I wrote the code in Microsoft Visual Studio C++, the debugger returned no errors, but I can't seem to understand why I get nothing as a result (actually, instead of a number result, I get "-858993460").

The code SHOULD be doing the following: The user types the values of N and M, where N is the number of natural numbers (is it "natural" in English? All whole numbers above 0 that is :P) and M is the paramater. The program is supposed to find the biggest number from 0 to N whose summary of digits is equal to M.

Here's the code I wrote:

Code:
```#include <stdio.h>
#include <math.h>
main ()
{
int n,m,i,j,k,p,l,sum,x,max;
printf("Type in the amount of numbers \n");
scanf("%d",&n);
printf("Type in the M paramater \n");
scanf("%d",&m);
for (i=0;i<n;i++);
{
k=1;
for (j=1;j<=k;j++);
{
if (i/pow(10,j)==0)
p=j;
else k++;
}
sum=0;
for (l=p;l>=1;l--)
{
x=(i%(int)pow(10,l))/(pow(10,l-1));
sum=sum+x;
}
if (sum==m)
max=i;
}
printf ("The greatest number whose sumary of digits is equal to M is %d \n",max);
}```

2. Did you intend to put your if (sum==m) statement inside your loop? As it is, it only happens once, once the loop is done.

3. The if (sum==m) statement is inside the first loop on purpose, but not the second. How come it only happens once if it's inside the loop, shouldn't it happen every time the first "for (i=0;i<n;i++)" loop cycles?

4. Yeah, I miscounted the braces. Sorry; that should be fine.

`i/pow(10,j)==0`