zorodream 发表于 2016-8-24 11:03:48

为什么运行不显示结果

#include <stdio.h>

long floatmain ()
{



        long float c = 1, s=1;
        long float i;
        for (i=1; i<=9; i++)
        {
                s = i * c;
                c = s;
        }
        return s;


        printf("%lf",s);
}




大家好,有个问题想请教大家,代码如上,为什么提示没有错误,但是执行的时候却是这个样子呢?谢谢大家啦~

TimTimTim 发表于 2016-8-24 11:10:34

return s;
printf("%lf",s);

main函数在打印之前就return返回了,printf("%lf",s);没能执行

改为
printf("%lf",s);
return s;

zorodream 发表于 2016-8-24 11:13:07

TimTimTim 发表于 2016-8-24 11:10
return s;
printf("%lf",s);



谢谢!我之前反复改了好久,没想到在这里出了错,一语惊醒梦中人。多谢兄台~

迷雾少年 发表于 2016-8-24 11:22:41

15:      return s;
函数已经返回,剩下部分代码不执行了

zorodream 发表于 2016-8-24 15:30:52

迷雾少年 发表于 2016-8-24 11:22
15:      return s;
函数已经返回,剩下部分代码不执行了

谢谢!{:7_113:}

轮回的夏 发表于 2016-8-24 15:32:53

说明你逻辑错误啊,单步调试看看

轮回的夏 发表于 2016-8-24 15:37:52

#include <stdio.h>

voidmain ()
{
        int c = 1, s=1;
        int i;
        for (i=1; i<=9; i++)
        {
                s = i * c;
                c = s;
        }
        printf("%d\n",s);
}

轮回的夏 发表于 2016-8-24 15:38:52

return 这个语句不一定要用到的,又不是一个有什么功能的函数,可以不用使用函数的,这样可以减少很多麻烦的

zorodream 发表于 2016-8-24 16:28:33

轮回的夏 发表于 2016-8-24 15:38
return 这个语句不一定要用到的,又不是一个有什么功能的函数,可以不用使用函数的,这样可以减少很多麻烦 ...

你说的对!看来我这个return是画蛇添足了,谢谢~{:10_319:}
页: [1]
查看完整版本: 为什么运行不显示结果