这么写怎么就不对了

来源:5-5 函数的返回值

慕粉5652354

2015-10-24 20:34

printf("jack 运算结果是:%s",jackrResult(a,b,c));

写回答 关注

2回答

  • onemoo
    2015-10-25 00:45:22
    已采纳

    你在printf的第一个参数中用了%s,代表后面的参数应该是字符串。 可是我想,jackResult(a, b, c)返回的并不是字符串。 所以打印不出你想要的结果。

    慕粉5652... 回复onemoo

    谢谢喽

    2015-10-26 18:13:35

    共 3 条回复 >

  • 慕粉5652354
    2015-10-25 14:41:51

    jackResult是一个定义的函数

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

    {

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

    }

    这种不是字符串吗?是不是这个函数没有返回值,而在调用时调用的是这个函数的返回值,但是这个函数又没有返回值所以就不会打印出来。


    onemoo

    jackResult函数确实是能打印出字符串,那是因为函数中调用了printf,这是jackResult函数本身的行为。 你题目中那样调用printf("jack 运算结果是:%s",jackrResult(a,b,c)); 想要打印的是jackResult的返回值。而jackResult的返回类型为void,也就是没有返回值。所以不会打印出你希望的内容。 这个习题,你把jackResult函数调用写在这printf语句下面就可以了。

    2015-10-26 17:34:24

    共 1 条回复 >

C语言入门

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

926210 学习 · 20797 问题

查看课程

相似问题