为了账号安全,请及时绑定邮箱和手机立即绑定

请问为什么在jackResult那里输出的时候,向joneResult一样定义之后不能输出结果会报错呢?

#include <stdio.h>

 int  joneResult(int x, int y, int z)

{

   int sum = x+y+z;

   return sum/3;

}

int jackResult(int x, int y, int z)

{

    printf("我算不出来\n");

}

int main()

{

    int a, b, c;

    a = 10;

    b = 20;

    c = 30;

    int jR = joneResult(a,b,c);

    int jO = jackResult(a,b,c);

    printf("Jone运算结果是:%d\n", jR);

    printf("Jack运算结果是:%d\n"jO);

    return 0;

}


正在回答

4 回答

注意:void函数中可以有执行代码块,但是不能有返回值,另void函数中如果有return语句,该语句只能起到结束函数运行的功能。其格式为:return;  。。其实这段话是练习题旁边就有的,也已经说明,那个void类型无返回值,所以你留心一点就看到了。。

0 回复 有任何疑惑可以回复我~

https://img1.sycdn.imooc.com//5b4c37f80001251905650475.jpg
类型不同 有返回和无返回的,程序是按照顺序运行的JR赋值,输出输出 到jack赋值,然后就打印出如图所示

0 回复 有任何疑惑可以回复我~

jackResult类型应该为void,因为该函数没有返回值。所以也就不用int jO = jackResult这个语句了。printf("jack运行结果是:%d\n",jO);也不能要了。

0 回复 有任何疑惑可以回复我~

https://img1.sycdn.imooc.com//5b447a2200014a7a02510087.jpg这个方法,声明了返回值类型为int,但是逻辑代码写完没有返回值,所以报错

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问为什么在jackResult那里输出的时候,向joneResult一样定义之后不能输出结果会报错呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信