【问题标题】:How do I return a double? [closed]我如何返回双倍? [关闭]
【发布时间】:2016-10-01 20:29:15
【问题描述】:
  1. 创建一个名为 functionXYZ 的函数,该函数返回一个 DOUBLE。此函数还应接受 DOUBLE 作为输入。
  2. functionXYZ 应将 DOUBLE 作为输入,将此值乘以 10,然后返回结果。
  3. 在您的 MAIN 方法中,测试您新创建的函数。编写一些将使用函数XYZ 的简单代码... 在您的MAIN 中,创建一个新的DOUBLE 变量并将其设置为等于5.7。将此变量传递给新函数 functionXYZ 并将返回值保存到新的 DOUBLE 变量中。打印出这个包含 functionXYZ 返回值的新变量 现在您可以验证您的函数是否正常工作。

到目前为止,我已经(从评论转移并格式化):

double functionXYZ (double data)
{
    return *10;
}

int main(void)
{
    double val = 5.7;
    double val = 2.4;
    double val = 9.5;
    double val = 3.7
    double result = functionXYZ (val);
    double result1 = functionXYZ (val1);
    double result2 = functionXYZ (val2);
    double result3 = functionXYZ (val3);
    printf("n/n Your total is: %if\n",result);
    printf(" Your total is: %if \ n " result1);
    printf(" Your total is: %if \ n " result2);
    printf(" Your total is: %if \ n " result3);
    printf("n\Press ENTER to exit ");
    return 0
}

【问题讨论】:

  • 发布您到目前为止所尝试的内容。如果您遇到错误,请具体说明,以便我们以更好的方式为您提供帮助。
  • 看到这就是我不知道从哪里开始我所拥有的就是这个
  • double functionXYZ (double data) { return *10 ; } int main (void) { double val = 5.7;双倍价值 = 2.4;双倍价值= 9.5; double val= 3.7 double 结果 = functionXYZ (val);双倍结果1 = functionXYZ (val1);双倍结果 2 = functionXYZ (val2);双倍结果3 = functionXYZ (val3); printf("n/n 你的总数是:%if\n",result); printf("你的总数是:%if\n" result1); printf("你的总数是:%if\n" result2); printf("你的总数是:%if\n" result3); printf("n\按回车键退出");返回 0;
  • 将该代码编辑到您的问题中!问题是……令人困惑。 DOUBLE 不是 C 中的标准类型(但 double 是),MAIN 不是标准函数(但 main() 是)。 C 区分大小写。也许与其他 SHOUTED 名称和类型类似。这真的是“功能 XYZ”,所以名称是三个字母而不是 11?
  • 我不会跳上帮派投票的马车。 3就够了。函数的返回类型由函数的 type 控制(例如,int foo (int a) {return a + a;} 返回 intdouble foo (int a) {return a + a;} 返回双精度)

标签: c


【解决方案1】:

好的,你基本上是对的,但你还没有乘以参数值。所以你的功能应该是

double functionXYZ (double data)
{
    return data * 10;
}

函数名之前的类型决定了它的“返回类型”(这个函数可以返回什么类型的变量)。在这种情况下,它是double,所以只要您使用带有双精度值的return 关键字,您就正确地返回了双精度值。

编辑

您的main() 函数中也存在许多错误。要使其正确编译,您必须执行以下操作:

确保变量具有唯一的名称;你有几次double val。这意味着您试图向编译器声明有一个名为valdouble 变量不止一次,这是一个错误。

更改如下所示的行

printf(" Your total is: %if \ n " result1);

printf(" Your total is: %if \n ", result1);

注意添加缺少的逗号。删除 \ 和 n 之间的空格也不是编译错误,但它是一个明显的错字。

确保每次引用变量时,它都是您实际定义的变量。比如

double result2 = functionXYZ (val2);

使用名为val2 的变量调用您的函数,除非您的代码中没有任何一点真正定义 val2

【讨论】:

  • 那是函数中的错误; main也有很多问题。
  • 非常感谢我的老师没有正确解释,我的代码也是如此?
  • 没问题@Siya你能不能通过点击旁边的勾来接受答案:)
  • 我仍然遇到错误,我现在有 12 个错误
  • 有什么错误
猜你喜欢
  • 2016-02-06
  • 1970-01-01
  • 2019-04-26
  • 2011-08-07
  • 1970-01-01
  • 2013-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多