水仙花数C语言程序,提示错误该如何调试?

#include
void main()
{
int i,j,k,n;
n=i*100+j*10+k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if((i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("水仙花数为:%d",n);
}
输出结果是四个-858993548。

提示错误可以调试为:

#include <stdio.h>

int main()

{

int a, b, c, d;

for (a = 100; a < 1000; a++)

{

b = a / 100;

c = a % 100 / 10;

d = a % 100 % 10;

if (b*b*b + c*c*c + d*d*d == a)

printf("水仙花数为%d\n", a);

}

}

如图为运行结果


原先的错误在于#include后没有加<stdio.h>,而且for循环语句也有错误。

温馨提示:内容为网友见解,仅供参考
无其他回答

c语言输出水仙花数 代码错误
检查一下,系统中可能有另外的一个1.c文件。解决方法:两个main放到两个项目下面来执行。

关于水仙花数的C语言编程,求程序错误在哪里。
解决办法就是把printf(”no“)放在for循环外面即可。下面方式可以参考一下:include<stdio.h>#include<math.h>main(){int m,n,i,no;no = 0;scanf("%d%d",&m,&n); for(i=m;i<=n;++i) { if(i==pow(i\/100,3)+pow(i\/10%10,3)+pow(i%10,3)) { printf("%d...

c语言,一个新手写的一个关于水仙花数的代码,运行后无结果,求大佬来找bu...
1、循环体内的语句不止一句,要用大括号括起来。2、c、d都从1开始循环不正确,会漏掉十位数字、个位数字至少有一个是0的数。例如407是水仙花数,按你写的循环会被直接漏掉。3、水仙花数不止一个,要想在“所有水仙花数如下:”的后面一次输出,要把提示语句放在前面。4、主函数类型为int型,最后要...

C语言为什么编写水仙花数出现错误
d);}}}system("pause");}在进入for循环前要将 计时器 b, c 重置,因为 水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)(摘自百度百科)所以 a 从1开始算 ...

...c语言水仙花数问题不知道为什么一直出现一个错误,求解决!
{ int a = i % 10;int b = i \/ 10 % 10;int c = i \/ 10 \/ 10 % 10;if (i == (a * a * a + b * b * b + c * c * c)){ printf("%d是水仙花数", i);return 0;} else \/\/if printf("%d不是水仙花数", i);return 0;} int main(){ int i;printf("输入...

C语言求3-7位数的水仙花数程序改错
你的程序主要问题是pow函数返回的是double类型的数,需要强制转换成long型整数,sum每计算完一个数要重置为0,还有就是输出语句printf函数的变量不需要取地址符.改完的程序如下(见图,改动的地方见注释)

c语言通过pow函数求水仙花数,我的程序老是显示No output!怎么回事啊...
s=0;t=0;\/\/你的t没有初始化为0 for(j=i;j>0;j\/=10)t++;for(j=i;j>0;j\/=10){ a[k]=j%10;s=s+pow(a[k],t);\/\/所以这里算出来是错的 k++;} if(i==s){ printf("%d\\n",i);count++;} } if(count==0)printf("No output.\\n");system("pause");return 0;} ...

“水仙花数”C语言程序
1. 引入标准输入输出库。```c include ```2. 定义主函数。```c int main()```3. 打印提示信息。```c printf("输出水仙花数:\\n");```4. 初始化变量 `i` 并设置循环条件。```c int i = 100;for( ; i < 1000; i++ )```5. 提取 `i` 的个位、十位和百位数字。```c i...

水仙花数的c语言编程。
水仙花数的C语言编程实现如下:c include int main { int num, remainder, sum = 0; \/\/ 用于存储水仙花数的变量和累加结果的变量 printf; \/\/ 输出提示信息,表明开始寻找水仙花数 for { \/\/ 循环遍历所有三位数 remainder = num % 10; \/\/ 计算个位数字 sum = num \/ 10 % 10 + sum; \/\/ ...

c语言判断水仙花数,我运行程序后任何数都是输出yes,是什么问题啊,请把...
include<stdio.h>void f(int i){int a,b,c,m;\/\/不需要传入的变量尽量在函数内部定义a = i\/100; \/\/ 赋值用= b = (i-a*100)\/10;c = i%10;m = a*a*a+b*b*b+c*c*c;if(i==m)printf("yes\\n");elseprintf("no\\n");}int main(){\/\/int x;\/\/int y;\/\/int z;int j...

相似回答