从品牌网站建设到网络营销策划,从策略到执行的一站式服务
你这个问题很典型,对一个数组中的所有元素进行操作是很典型的一段代码
成都创新互联公司专注于西乌珠穆沁企业网站建设,自适应网站建设,商城网站开发。西乌珠穆沁网站建设公司,为西乌珠穆沁等地区提供建站服务。全流程按需定制网站,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
C语言中,数组包含类型和长度两个要素,根据数组名可以推断出长度,但是C语言有一个特殊之处:当你把数组传递给参数的时候,就会隐式转化为指针,从而失去长度的信息,所以一般情况下,处理数组的函数都要传入数组本身以及一个长度,代码如下:
#include
stdio.h
#include
math.h
#define
SIZE
10
double
sum(double
a[],
int
size)
{
int
i;
double
result
=
0;
for
(i
=
0;
i
size;
i++)
{
result
+=
log(a[i]);
}
return
result;
}
int
main()
{
double
a[SIZE];
int
i;
for
(i
=
0;
i
SIZE;
i++)
{
scanf("%lf",
a[i]);
}
double
s
=
sum(a,
SIZE);
printf("%lf",
s);
return
0;
}
调用时:
sum=fun1(a[N]);
printf("sum=%d\n",sum);
定义中:
int fun1(int a[N],int i)
{
int s=0;
for(i=0;iN;i++)
s=s+a[i];
return(s);
}
注意定义的函数int fun1(int a[N],int i),在调用函数的时候语法是sum=fun1(int a[N],int i);错误在于调用函数时()内的参数应该和定义时一样
要引用数组宏的每个元素做些计算,可以将数组及数组的长度作为参数同时传递给调用函数就可以实现了,比如:
#includestdio.h
int sum(int a[], int size)
{
int i, result = 0;
for (i = 0; i size; i++) {
result += a[i];
}
return result;
}
main() {
int a[8];
int s,i;
for (i = 0; i 8; i++) {
scanf("%d", a[i]);
}
s = sum(a, 8);
printf("%d", s);
}
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图