0

実行しようとすると、これが表示されます error: expected ‘;’, ‘,’ or ‘)’ before ‘&’ token

この行について不平を言っています

int read_values(double &sum) {

だから私は合計を渡し、それを直接編集したい。Cでどのようにしますか?みんなありがとう。

#include <stdio.h>

/*
    Read a set of values from the user.
    Store the sum in the sum variable and return the number of values read.
*/
int read_values(double &sum) {
  int values=0,input=0; double sum2=0;
  sum2 = sum;
  printf("Enter input values (enter 0 to finish):\n");
  scanf("%d",&input);
  printf("%d\n", input);
  while(input != 0) {
    values++;
    sum2 += input;

    scanf("%d",&input);
  }

  return values;
}

int main() {
  double sum=0;
  int values;
  values = read_values(sum);
  printf("Average: %g\n",sum/values);
  return 0;
}
4

2 に答える 2

3

C は参照を行わず、生のポインターのみを行います。

main() {
    ...
    values = read_values(&sum);
    ...
}


int read_values(double* sum)
{
    ...
    sum2 = *sum;
    ...

}
于 2013-02-11T22:59:40.830 に答える
1

私はあなたがこれをやろうとしていると思います:

int read_values(double *sum) {
  int values=0,input=0;
  printf("Enter input values (enter 0 to finish):\n");
  scanf("%d",&input);
  printf("%d\n", input);
  while(input != 0) {
    values++;
    *sum += input;
    scanf("%d",&input);
  }
  return values;
}

int main() {
  double sum=0;
  int values;
  values = read_values(&sum);
  printf("Average: %g\n",sum/values);
  return 0;
}
于 2013-02-11T23:04:19.513 に答える