c语言高手们来帮个忙

用c语言二级函数方面的知识帮我编一下程序
列出0~10000之间的所有其各位上的数字之和等于10的数。编写一个判断各位上的数字之和等于10的函数,并在主函数中调用它。
我编了一个,但不知道哪里错了,帮忙看一下
#include <stdio.h>
int stds(int n)
{int gewei,shiwei,baiwei,qianwei,result;
gewei=n%10;
shiwei=(n/10)%10;
baiwei=(n/100)%10;
qianwei=(n/1000);

result=gewei+shiwei+baiwei+qianwei;
if(result==10)
return n;
else
return 0;
}

void main()
{int stds(int n);
int i,z;
for(i=0;i<=1000;i++)
{
z=stds(i);
printf("各位数加起来为十的数为%d\n",z);
}

#include <stdio.h>
int stds(int n)
{
int gewei,shiwei,baiwei,qianwei,result;
gewei=n%10;
shiwei=(n/10)%10;
baiwei=(n/100)%10;
qianwei=(n/1000);

result=gewei+shiwei+baiwei+qianwei;
if(result==10)
return n;
else
return 0;
}

void main()
{
int stds(int n);
int i,z;
for(i=0;i<10000;i++) //修改了这一句,因为是0-10000之间
{
z=stds(i);
if(z!=0)//////////////////添加了这一句,符合条件才打印出来
printf("各位数加起来为十的数为%d\n",z);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-05-19
#include <stdio.h>
#include <stdlib.h>
int flag;
int stds(int n)
{int gewei,shiwei,baiwei,qianwei,result;
gewei=n%10;
shiwei=(n/10)%10;
baiwei=(n/100)%10;
qianwei=(n/1000);

result=gewei+shiwei+baiwei+qianwei;
if(result==10)
return n;
else
return 0; //这个你不希望输出吧,就控制以下;
}

int main()
{int stds(int n);
int i,z;
for(i=0;i<10000;i++) //这儿是10000
{z=stds(i);
if(z) //这儿是控制语句;
printf("%d ",z);
}

system("pause");
}
这样就行了;
第2个回答  2008-05-19
目前正在帮你看程序中。等等我。
第3个回答  2008-05-19
你个位错了 n%10 得什么了啊 自己再想想
相似回答