C语言中怎么调用函数外部的数组,如图,接下来该怎么写

如题所述

第1个回答  2016-05-14
题目有错,主函数中的result(a)应该改为result(arr),定义函数头应该是
int result(int *a)//加了星号

int result(int a[])//加了括号
主函数中的函数声明也要相信修改
以指针为形参的函数如下
int result(int *a)
{
int i,s=0;
for(i=0;i<9;i++)
s+=*a++;
return s;
}本回答被网友采纳
第2个回答  2016-05-14
C语言中,result(int a)括号中是参数,是你要给这个函数传递的东西,如果你想从这个函数中获得什么,你只能采用返回值或者直接对指针进行操作。如果是C++就另当别论了追问

C++

就是向一维数组输入9个数,然后调用函数求合

追答#include<stdio.h>
int result(int a[])
{
    int sum = 0;
    for (int i = 0; i<9; i++)
        sum += a[i];
    return sum;
}
void main()
{
    int a[9],i;
    for (i = 0; i < 9; i++)
        scanf_s("%d", &a[i]);
    printf("和为:%d", result(a));
    
}

第3个回答  2016-05-14
int result(int a[])
{
    int sum=0;
    for(int i=0;i<9;i++)
        sum+=a[i];
    ruturn sum;
}

数组函数形式参数有三种:

int result(int a[])
int result(int a[9])
int result(int *a)

相似回答