C语言运行不出结果,不知道为什么

#include <stdio.h>
int main(void) {
double s,i=1,n,eps=0.001;
for(s=0;;i++)
{
n=i*(i+1);
s=s+1/n;
if(n<=eps) break;
}
printf("s=%lf\n",s);
return 0;
}
用vc6.0运行后就只有一个光标在闪,但就是没有结果显示

你的for循环出错了,for(语句1;语句2;语句3)语句2是用来控制循环长度的,而你的语句2是个空语句所以无限循环。所以你要么添加一个语句2来限制循环长度,要么修改break前边的条件使他能够获得break跳出循环的条件。从你的编程来看我感觉这个用while循环更好。c语言有3种循环,for循环最实用与知道循环次数的条件,while适用于不知道循环次数但是知道限制循环的条件的情况,而do-while和while基本一样,区别是do-while一定会执行一次循环节。
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-10-26
//程序进入死循环了,所以得不到结果,具体分析如下
#include <stdio.h>
int main(void) {
double s,i=1,n,eps=0.001;
for(s=0;;i++)
{
n=i*(i+1); //n值是个永远大于1的值
printf("n=%lf\n",n);
s=s+1/n;
if(n<=eps) break; //永远无法达到这个条件,所以程序陷入死循环
}
printf("s=%lf\n",s);
return 0;
}本回答被网友采纳
第2个回答  2014-10-26
我想你可能在确定小数的精度,循环的判断条件应该是”1/n“小于等于“eps”本回答被提问者采纳
第3个回答  2014-10-26
i是整数,n=i*(i+1);怎么可能小于eps=0.001。追问

可是已经定义了i是double型了啊,可以详细给我讲下吗,我是初学者

追答

i初始定义是1,i*(i+1)怎么可能小于1呢,更别说小于eps了,你在循环里加入一个输出,输出n,你就可以看一下n的值了。

c语言不知道为什么运行不了
编译期错误。这是指在程序的编译过程中由编译程序识别或检查出来的错误,常称之为"语法错误"。诸如不符合规定的语句格式、对象说明与使用不一致、不正确的分隔符、不存在的标号、不正确的初始化数据、不恰当的循环嵌套等等。在编译期发现一个错误后,编译工作并不立即停止,而是尽可能多地找出源程序中的...

c语言程序 哪里出错了呢 始终运行不出结果
在C语言编程中,若程序始终无法输出结果,可能是因为输入数据的类型与程序调用的数据类型不一致。以scanf函数为例,当使用 scanf("%lf%lf%lf",&a,&b,&c);进行输入时,确实将输入的数字以float类型存储至内存中。然而,程序在读取这些内存时,可能期望以double类型进行解析。这种类型不匹配会导致解析出...

c语言,运行后为什么没结果。
可能情况有:1、是不是程序运行出现错误,如:死循环;如果是死循环,程序将会进行持续运算,因此不会有退出结果。2、没有输出结果的函数,例如是不是没有printf函数?或者你可以把运行结果和代码发给我看看。。

c语言运行程序为什么没有输出数?
2、没有输出 不知道计算的结果那算法就没有意义了。输出不一定是要打印到屏幕上的,可以是下一个程序的输入,可以是一个文件、一段语音、一张图像,甚至是机器人的步行动作等等。

我的c语言程序没有报错为什么会执行不了?
在C语言中,程序没有报错并不意味着程序一定是正确的。有时候,程序可能会出现逻辑错误或者运行时错误,导致程序无法执行或者输出不符合预期。以下是一些常见的导致程序无法执行的原因:1. 程序陷入死循环:程序在某个地方出现了死循环,使得程序无法继续向下执行。如果程序似乎无法结束,可以检查程序是否存在...

C语言运行不出结果,不知道为什么
你的for循环出错了,for(语句1;语句2;语句3)语句2是用来控制循环长度的,而你的语句2是个空语句所以无限循环。所以你要么添加一个语句2来限制循环长度,要么修改break前边的条件使他能够获得break跳出循环的条件。从你的编程来看我感觉这个用while循环更好。c语言有3种循环,for循环最实用与知道循环...

为什么C语言在自己电脑上运行不出来结果,在其他电脑上可以?
c语言有运行环境的要求,你的电脑上安徽那个配置万泉路,其他人的电脑可能没配置,所以运行不了

c为什么运行后输入第一组数据没有结果,其它组数据有结果
格式问题。c语言程序运行输入后没有输出的原因是:1、输入格式不同。要输入“浮点数”并用“逗号”分隔输入三个数两个逗号后还要额外多加一回车才开始后面的流程。2、没有意义。语言程序输入错误导致输出的结果没有意义。

c语言为什么没有运行结果?
您好。很高兴回答您的问题。对于您说的程序没有运行结果,可能有以下几方面的问题:一是没有编写输出语句,当然就看不到结果;二是程序出现了错误,编译没有通过,自然就不会出现结果。所以您要对照程序仔细检查哦。程序

C语言运行无结果???急...急!!!
对着呢 可能是你没有运行对 要到相关目录然后在运行 比如你生成的可执行文件(假设可执行文件名是file.exe)在D:\\tc下 那么在运行中输入cmd 然后回车 再输入D: 再回车 然后输入CD 然后按Tab键找到tc然后回车 再输入file display what you enter后回车 就会显示 display what you enter ...

相似回答