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

jackResult(a,b,c);(24行)为什么不放在(22行)jack的printf里

jackResult(a,b,c);为什么不放在jack的printf里

正在回答

3 回答

还有我用char不加*的话(在cb上),直接停止运行了

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

原初的火

没点回复...
2017-08-06 回复 有任何疑惑可以回复我~

jackResult(a,b,c); 对于这个函数的内容只是输出一串字符串并没有返回任何一个参数,因此无法像你说的放入第22行进行调用,如果你想直接放入22行的话需要修改一些东西。代码如下(输出结果和要求一至,但这道题不会给你通过,因为没有用void,╮(╯▽╰)╭):

#include <stdio.h>

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

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

{

   int sum = x+y+z;

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

}

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

 char* jackResult(int x, int y, int z)      //用 char* 作为返回值类型,也就是char型数组

{

    return "我算不出来";           //返回的字符串

}

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运算结果是:%s",jackResult(a,b,c));        //用%s来输出字符串

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

    return 0;

}


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

奇怪的阿怪

请问你这里定义jackResult函数的时候不用指针可以吗?就像char jackResult(……)
2017-07-27 回复 有任何疑惑可以回复我~
#2

原初的火

我把char*换成int也行,有没有什么区别?
2017-08-06 回复 有任何疑惑可以回复我~

//22行的代码中的printf函数只是为了输出 "Jack运算结果是:" 这个字符串。

//当22行输出完 "Jack运算结果是:" 之后,才到24行的调用 jackResult(a,b,c) 来输出Jack 的结果。

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

举报

0/150
提交
取消

jackResult(a,b,c);(24行)为什么不放在(22行)jack的printf里

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