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

关于函数调用

#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;
}

为啥调用函数jackResult(a, b, c),a b c不是数字吗?jackResult输出结果应该是一句话啊,可()里的a b c是数字,这是啥意思啊?

正在回答

2 回答

我认为既然定义了void jackResult(int x, int y, int z)这个函数,那你在调用它的时候由于你定义中有int x,int y,int z三个形参,你就必须在调用的时候把这三个形参分别赋值,这才是正确的引用格式。至于输出的东西是跟你定义的函数内容有关。你这个函数明显是无返回值的函数定义(void指的是无返回值),而且函数里面也是规定了结果只是输出一个字符串。

所以你在调用函数时要根据形参情况看是否写入数字。你可以把前面无参函数定义那些题和后面这些有参函数定义的题对比一下。

1 回复 有任何疑惑可以回复我~
#1

灵水后裔 提问者

非常感谢!
2016-10-11 回复 有任何疑惑可以回复我~

jackResult(a, b, c)里a b c是形参。在函数里不一定要是使用,但在调用函数的时候必须给形参赋实参。

jackResult输出结果应该是一句话 ----这个在屏幕上打印出字符串而已。

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

举报

0/150
提交
取消
C语言入门
  • 参与学习       926018    人
  • 解答问题       20793    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

关于函数调用

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