函数fun的功能是:计算形参x所指数组中N个数的平均值规定所有数均为正数将所指数组中大于平均值的数据移至数组的前部小于等于平均值的数据移至x所指数组的后部平均值作为函数值返回在主函数中输出平均值和移动后的数据。#include stdlibh#include stdioh#define N 10double fundouble x int i j; double s av
修改后的代码:
#include <stdlib.h> #include <stdio.h> #define N 10
double fun(double *x) { int i, j; double s = 0, av, y[N]; for (i = 0; i < N; i++) { s += x[i]; } av = s / N; for (i = j = 0; i < N; i++) { if (x[i] > av) { y[j++] = x[i]; x[i] = -1; } } for (i = 0; i < N; i++) { if (x[i] != -1) { y[j++] = x[i]; } } for (i = 0; i < N; i++) { x[i] = y[i]; } return av; }
int main() { int i; double x[N]; for (i = 0; i < N; i++) { x[i] = rand() % 50; printf("%4.0f ", x[i]); } printf("\n"); printf("\nThe average is: %f\n", fun(x)); printf("\nThe result :\n"); for (i = 0; i < N; i++) { printf("%5.0f ", x[i]); } printf("\n"); return 0;
原文地址: https://www.cveoy.top/t/topic/cJW0 著作权归作者所有。请勿转载和采集!