我有這兩個功能,READDATA這是假設用戶需要輸入三個數字,並且是假設其他功能ComputeSum採取由用戶輸入的值,並把它們相加。我想分配ComputeSum功能的總變量的結果,但它不能打印正確的總計。有人可以解釋導致這種情況發生的原因嗎?如何通過其他功能使用用戶輸入功能?
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include <math.h>
void ReadData(int *x,int *y,int *z);
int ComputeSum(int x,int y,int z);
int main()
{
int x, y, z;
int total;
ReadData(&x, &y, &z);
printf("\n");
total = ComputeSum(x,y,z);
printf("The total is: %d", total);
printf("\n\n");
system("PAUSE");
return 0;
}
void ReadData(int *x,int *y,int *z)
{
printf("Enter three numbers : ");
scanf("%d %d %d", &x, &y, &z);
printf("\n");
ComputeSum(x,y,z);
return ;
}
int ComputeSum(int x,int y,int z)
{
int Sum = x+y+z;
return Sum;
}
___________________________________________________________________
**Sample Output**
Enter three numbers : 5 5 5
The total is: 8869621
Press any key to continue . . .
內READDATA到'ComputeSum'電話是完全無用,可以簡單地被丟棄。表示total = ComputeSum(x,y,z)的行按原樣是正確的。 – Vatine
@Vatine很好的捕獲,但它仍然是書面的錯誤。 –