我只想在这里给你的家庭作业提供正确的方向。以下是问题:
(1) 编写一个名为input的C函数,返回void类型,此函数提示用户输入两个整数和一个双精度值。该函数从键盘读取这些值并计算出这两个整数的乘积。该函数使用引用调用来将读取的三个值和计算出的乘积传递回主程序。然后,主程序打印读取的三个值和计算出的乘积。提供输入3 5 23.5的测试结果。在程序中不要使用数组或全局变量。
以下是我的代码:
(1) 编写一个名为input的C函数,返回void类型,此函数提示用户输入两个整数和一个双精度值。该函数从键盘读取这些值并计算出这两个整数的乘积。该函数使用引用调用来将读取的三个值和计算出的乘积传递回主程序。然后,主程序打印读取的三个值和计算出的乘积。提供输入3 5 23.5的测试结果。在程序中不要使用数组或全局变量。
以下是我的代码:
#include <stdio.h>
#include <stdlib.h>
void input(int *day, int *month, double *k, double *pro);
int main(void){
int i,j;
double k, pro;
input(&i, &j, &k, &pro);
printf("%f\n", pro);
return 0;
}
void input(int *i, int *j, double *k, double *pro){
int x,y;
double z;
double product;
scanf("%d", &x);
scanf("%d", &y);
scanf("%f", &z);
*pro += (x * y * z);
}
我无法弄清如何使用指针引用变量,这对我来说并不起作用。
任何帮助都将是极好的!
+=
?因为 double 没有被初始化,所以你很可能会得到垃圾值。 - dreamlax