错误打印到屏幕的值。最大最小值

时间:2016-02-04 14:35:48

标签: c

我正在编写一个简单的代码,它输入两个数字并告诉我哪个是Max值,哪个是最小值,使用2个单独的文件作为函数。到目前为止,这是我的代码。它扫描数字并具有正确的最大最小值,但是当我打印值时会打印一个疯狂的数字。

#include<stdio.h>

 int main(void)
 {
     double num2, max, min, num1;

 printf("enter any space-separated pair of decimal numeric values on the same line: ");
 scanf("%le%le", &num1, &num2);


 max = ComputeMaximum(num1, num2);
 min = ComputeMinimum(num1, num2);


 printf("%le", max); 
 printf("%le", min);

return 0;
}

这是我的主要程序,在我所拥有的同一项目中的单独文件中:

double ComputeMinimum(double num1, double num2) {

    double result;

    result = (num1 < num2) ? num1 : num2;

    return result;
}

并且

double ComputeMaximum(double num1, double num2) {

    double result;

    result = (num1 > num2) ? num1 : num2;

    return result;
}

我想将它打印到屏幕: ComputeMinimum(?,?)返回?
ComputeMaximum(?,?)返回? (问号是值。)

1 个答案:

答案 0 :(得分:1)

代码缺少原型。

就是这样,格式没问题,功能还可以。

#include<stdio.h>

// Add these to the same file as main() 
// Or better yet, add to another file Compute.h and #include "Compute.h" 
// here and in the the separate C file
double ComputeMinimum(double num1, double num2);
double ComputeMaximum(double num1, double num2);

int main(void)
  ...

  // suggest adding check
  if (2 != scanf("%le%le", &num1, &num2)) {
    puts("Input error");
    return -1;
  }