编程题:写一函数,返回一个整型一维数组a[10]的所有元素的平均值,在main函数中输入该数组,并输出其平均值?

作者&投稿:自汪 (若有异议请与网页底部的电邮联系)
编程:定义一个函数,计算一个int类型数组元素的平均值;在main函数中调用并打印?~

平均值,通常不是整数,所以用 double 型。参数 : 数组名,元素个数
#include
double ave(int *a, int N){
double mean=0;
int i;
for (i=0;i<N;i++) mean=mean+a[i];
mean = mean / N;
return mean;
}
int main()
{
int x[ ]={11,21,31,41,51,61,71,81,91,10}; //声明与初始化
int N; //数组元素个数
double r; //平均值,通常不是整数,所以用 double
N = sizeof(x)/sizeof(int); //若已知元素个数可直接赋值,例N=10
r = ave(x,N); //函数调用
printf("mean= %g
", r); //用 %g 格式比较灵活

return 0;
}

参数说明: a是一维浮点数数组,n是数组中的元素个数
下面的函数求a中元素的平均值,并返回。
float Average(float* a, int n)
{
int i;
float s = 0;
// 求和
for (i = 0; i < n; i ++)
s += a[i];
s /= n; // 求平均
return s;
}

// 测试
void main()
{
float a[] = {2, 5, 4, 7};
float x;
x = Average(a, 4);
printf("平均值是:%f
", x);
}

代码如下:

#include <stdio.h>

#include <math.h>

void main()

{

int a[10],i,min,sum=0;

float b[10],ave;

printf("请输入十个整数
");

for(i=0;i<10;i++)

{

scanf("%d",&a[i]);

sum=sum+a[i];

}

ave=sum/10.0;

for(i=0;i<10;i++)

{

b[i]=abs(a[i]-ave);

}

min=0;

for(i=0;i<10;i++)

{

if(b[min]>b[i])

min=i;

}

printf("这十个数的平均值为%f
",ave);

printf("与平均值相差最小的数组元素在第%d个(从第0个开始算)",min);

}

扩展资料:

数组,是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。

数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式。这些有序排列的同类数据元素的集合称为数组。

在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。




...在主函数中调用该函数,求整型数组a[10] 中有多少个素数
int main(){ int i;int a[N];int fip(int p[N]);printf("请输入10个整数\\n");for (i=0;i<N;i++) { scanf("%d",&a[i]);} printf("找到的素数:\\n");i=fip(a);printf("共找到%d个素数",i);return 0;} int fip(int p[N]){ int i,j,k,n,m,y;n=0;m=1;whil...

C#编程:定义一个函数,计算两个整数相除并输出结果,然后在主函数中调用...
从函数的形式看,函数分两类:1、无参函数。printstar和print_message就是无参函数。在调用无参函数时,主调函数并不将数据传送给被调用函数,一般用来执行指定的一组操作。2、有参函数。在调用函数时,在主调函数和被调用函数之间有数据传递。也就是说,主调函数可以将数据传递给被调用函数使用,被...

我的C语言出现了问题我用了函数,可否实现返回主菜单,就是main函数
就可以实现返回main函数了 include <stdlib.h> include <stdio.h> include <math.h> struct student { char name[10];int xuehao;int yuwen;int shuxue;}Xinxi[49];void shuru(){ int b;int ch;for(b=0;b<49;b++){ printf("请输入第%d名同学的学号:",b+1);scanf("%d",&Xinxi[b...

一道c语言程序题: 写一个函数,从传入的num个字符串中找出最长的一个字符...
错误语句:if(strlen(s)<strlen(*(max+i+1)))解释:strlen需要传递一个char地址,s可改为s[0]。C:\\Documents and Settings\\Administrator\\桌面\\编程\\lianan.c(31) : error C2115: 'return' : incompatible types 错误语句:return (max);解释:函数返回值类型要更定义类型一样。max为char **...

几道C语言的函数补全程序题,求大佬们解答
当然,非常乐意为您解答C语言函数补全程序题。以下是一些练习题和参考答案:编写一个函数,输入一个字符串,将其中的所有小写字母转换为大写字母并返回结果字符串。include <stdio.h>#include <string.h>#include <ctype.h>void toUpperCase(char *str) {for(int i = 0; i < strlen(str); i++)...

C语言 写一个函数 输入一个十六进制数 输出相应的十进制
include<stdio.h> include<string.h> include<math.h> \/ 函数:convert 功能:十六进制转十进制 \/ void conver(char arr[]){ int i,j=0,k=0,sum=0,n=strlen(arr);int num[100];for(i=0;i<n;i++){ switch(arr){ case'A':num[j++]=10;break;case'B':num[j++]=11;break;...

编写一个函数实现两个字符串的连接(不使用库函数strcat).这个用C语...
void fun (char s1[],char s2[]){ int i,j;for (i=0;s1[i] !=’\\0’; i++); \/*求出的i为pA字符的总长度,包括结束标记位*\/ for (j=0;s2[j] !=’\\0’; j++)s1[i++]=s2[j]; \/*将pB字符串连在pA字符串的后面*\/ s1[i]='\\0’; \/*在字符串最后加上结束标记符*...

C语言编程题,求编写一个函数,实现字符串逆置?
#include <stdio.h> include <string.h> void reverse(char *x){ char c;int a=0,b=strlen(x)-1;for(;a

c语言编程题:写一个函数,功能是交换两个实数变量的值。
void f(double *a,double *b){ double t=*a; *a=*b; *b=t;}

C语言高手来,高分求几个C语言答案.
2:写一个函数判断一个正整数是否为偶数,在主函数中用scanf输入正整数m,调用函数后,根据函数返回值判断这个正整数是否为偶数,若是则输出“yes”,否则输出“no”程序:include <stdio.h> void main(){ void function(int n);int n;printf("输入一个正整数:");scanf("%d",&n);function(n)...

垫江县15219459114: c语言编程,自定义一个函数,返回值是一个一维数组,然后将返回值赋值个一个新的数组,数据不变 -
郑追华适: #include<stdio.h> int* fun(); int main() { int a[3], *b; b = fun(); for(int i = 0; i < 3; i++) a[i] = b[i]; return 0; } int* fun() { int a[3] = {2, 5, 9}; return a; }

垫江县15219459114: 编写一个函数,其功能是求出一维整形数组a{n}中的元素之和sum和最大元素值max,并且由引用参数sum -
郑追华适: double fun(int a[], int n, int *max, int *min){ int i; double sum = 0; *max = *min = a[0]; for(i = 0; i < n; ++i) { sum += (double)a[i]; if(a[i] > *max) *max = a[i]; if(a[i] < *min) *min = a[i]; } return sum/n;}

垫江县15219459114: 1. 编写一个函数,求出一维整型数组a[n]中所有元素的平方之和. -
郑追华适: #include <iostream> using namespace std; int fun1(int a[],int n); int main() { int a[5] = {1,2,3,4,5}; fun1(a, 5); return 0; } int fun1(int a[],int n) { int i = 0; int s = 0; for (i = 0; i<n; i++){ s+=a[i]*a[i]; } printf("%d\n", s); return 0; }

垫江县15219459114: 编写一个函数s(a,n),其中a是一个一维整型数组,n是数组长度,通过指针求数组中的平均数 -
郑追华适: double s(int* a,int n) {int i,avg=0;for(i=0;i<n;i++)avg+=a[i];return (double)avg/(n*1.0); }

垫江县15219459114: 1.编写一个函数,求出一维整型数组an - 中所有元素的平方之和
郑追华适: #include using namespace std; int fun1(int a[],int n); int main() { int a[5] = {1,2,3,4,5}; fun1(a, 5); return 0; } int fun1(int a[],int n) { int i = 0; int s = 0; for (i = 0; i { s =a[i]*a[i]; } printf("%d ", s); return 0; }.

垫江县15219459114: 写出一个主函数,为一维整型数组a[10]输入数据,并对数组中的数据进行转置,然后输出此数组中的元素. -
郑追华适: 不知下面如何 #include int main() { int i, temp, a[10]; prnitf("Enter 10 integer numbers\n"); for(i = 0; i < 10; ++i) scanf("%d", &a[i]); for(i = 0; i < 10 / 2; ++i) { temp = a[i]; a[i] = a[9-i]; a[9-i] = temp; } for(i = 0; i < 10; ++i) printf("%d ", a[i]); return 0; }

垫江县15219459114: 编写一个函数,求出一维整型数组a[n]中所有元素的平方之和(用递归方法)
郑追华适: int sum=0; int a[n]; for(int i=0;i<=n;i++){sum+=a[i]*a[i] }

垫江县15219459114: 在c语言中怎么写一个函数名为func,形式参数c为一维整型数组,返回类型为整型指针的函数说明语句 -
郑追华适: #include #define N 10 /*函数前置声明*/ int sortArr(int *p,int n); int printArr(int * p, int n); /*冒泡排序*/ int sortArr(int *p,int n) { int i, j, t; for(i = 0; i

垫江县15219459114: 用c语言编写一个程序,求一个一维整型数组的最大元素,要求通过函数返回值和全局变量两种方式返回最大元 -
郑追华适: #include <stdio.h>int iMax = 0;int fooMax(int arr[], int n) {int i; for (i = 0; i < n; i++)if (iMax < arr[i]) {iMax = arr[i];} return iMax; }int main() {int arr[5] = {10, 8, 15, 7, -1}; printf("Max : %d\n", fooMax(arr, 5));printf("Max : %d\n", iMax); return 0; }

垫江县15219459114: C语言编程定义函数将一个整型一维数组反序,数组的输入和输出在主函数中完成 -
郑追华适: #include<stdio.h> #define N 20//N为数组个数 static int a[N],b[N]; void change() { for(int j=0;j<N;j++) b[j]=a[N-1-j]; } void main() { for(int i=0;i<N;i++) scanf("%d",&a[i]); change(); for(i=0;i<N;i++) printf("%d ",b[i]); }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网