问答详情
源自:5-3 有参与无参

为什么这样不行?不能输出为6门课程

#include <stdio.h>

int origin()

{

    printf("小明在慕课网上学习\n");

    return 0;

}

int Class()

{

    int i;

    printf("小明在慕课网上已经参与学习了%d门课程\n",i);

    return 0;

}

int main()

{

    origin();

    Class(6);


    return 0;

}


提问者:weixin_慕码人1597590 2020-01-13 21:46

个回答

  • NJUPTB18031431曾宇航
    2020-02-12 14:48:53

    有参数与无参数的区别,你的class函数是需要输入一个参数的,而且你自己也输入了一个6进去,那么你定义它的时候你就需要给他一个参数所有你的class()应该改成class(int n)这个int n就是代表了你要输入的数,你这里输入了6,换个说法你改成class(float n)你就可以输入6.5,得到学了6.5门课程,这个参数类型的作用就是这样,学弟学妹你们多注意他的实际意义而不是代码格式的躯壳。

  • GKWBTT
    2020-02-03 09:51:16

    int Class()
    {
        int i;
        printf("小明在慕课网上已经参与学习了%d门课程\n",i);
        return 0;
    }

    换成

    int Class(int i)
    {
        printf("小明在慕课网上已经参与学习了%d门课程\n",i);
        return 0;
    }

    就可以了。

    我也是初学者,自己的理解就是,你的代码【i】放在了函数的里面。

    C可以调用函数,但无法调用函数里面的函数,所以才不行的。

  • 慕勒8772369
    2020-02-02 16:53:52

    前面定义Class函数的时候没有传参“int i”导致你后面Class(6)里的6不知道要传给谁

  • hqming
    2020-02-01 16:16:24

    int i应该放在class后面的括号里面

  • weixin_慕码人6069387
    2020-01-30 03:22:30

    int i 这个定义放在Class()里面,不能放在方法里面,方法命名最好小写开头;

  • 慕丝1551852
    2020-01-29 13:04:13

    int Class括号里没有参数列表,就是int Class(int n)。  然后第二个printf的i改成n


  • 慕丝1551852
    2020-01-29 12:50:06

    你的int Class 括号里没有参数列表,就是int Class(int n),也少了for循环

  • qq_慕慕0454707
    2020-01-14 18:52:21

    系统默认