问答详情
源自:5-5 函数的返回值

函数返回值问题

#include <stdio.h>

/* Jone算出结果应该怎么写函数? */

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

{

   int sum = x+y+z; 

    return sum/3; //这里是不是应该将sum返回呢?

}

/* Jack没有算出结果只说了一句话是不是应该用无返回值函数? */

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

{

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

}

int main()

{

    int a, b, c;

    a = 10;

    b = 20;

    c = 30;

    //Jone的返回值类型是什么?

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

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

    printf("Jack运算结果是:");

    //Jack没有算出结果只说了句话,是不是直接调用函数就可以了?

    jackResult(a,b,c);

    return 0;

}

求问 为什么JACK后面调用不用jackResult(x,y,z)?


提问者:峣峣易缺 2016-09-08 14:00

个回答

  • 模仿游戏
    2016-09-08 14:27:21
    已采纳

    x,y,z 是程序定义的 形参, 调用 的时候 应该是 主函数 中的 实参 a,b,c.       形参本身没有数字,是由实参传递给形参

  • 小小的少年
    2016-09-08 14:57:01

    不要return sum/3怎么写,不好理解,直接写sum=(x+y+z)/3;没有要返回的东西就用void;没有结果是我们知道的,所以不用判断语句就时直接调用;题目是这样出的。。。。。jack算不出来。。。所以直接调用,如果是其他例子,可能要一个判断语句来判断调用那个函数,只能说题目无脑,就是怎么简单要求的。。。。求过